「あったらいいのに」と思ったものを、実際に作っています。
このブログでは、日常生活や趣味の中で感じた「こんなものがあったら便利そう」をきっかけに、PythonやAI、Web技術などを使ってアプリやシステムを開発しています。
ここでは、これまでに作ったものをまとめて紹介します。
麻雀CPU
実物の麻雀牌をカメラで認識し、CPUが打牌を考える麻雀システムです。
「2人でも麻雀を遊べたらいいのに」というところから開発を始めました。
現在は、カメラで手牌を撮影し、AIで牌を認識。その結果をもとにCPUが状況を判断して、捨てる牌や鳴きなどを考える仕組みを作っています。
画像認識には、YOLOやEfficientNetなどを使用しています。
主な機能
- カメラによる麻雀牌の認識
- YOLOによる牌の位置検出
- EfficientNetによる牌の画像分類
- CPUによる打牌判断
- ポン・チー・カンなどの鳴き
- スマートフォンからの操作
- 複数CPUへの対応
- 対局データ・認識ミス画像の保存
今後は、ルールベースで作っているCPUを発展させ、強化学習を使ったCPUの開発にも挑戦する予定です。
開発のきっかけから設計、画像認識、CPUの思考部分まで、実際に作ってきた過程を記事にしています。
→ 麻雀CPU
これから作りたいもの
「あったらいいので作りました。」では、完成したものだけでなく、日常の中で思いついたアイデアも少しずつ形にしていきます。
例えば、
- 写真・動画を共有できるNAS
- 独自のルールで管理できる家計簿アプリ
- 家の消耗品や交換時期を管理するアプリ
- 「また買いたい商品」を記録するアプリ
- 冷蔵庫・食品庫の賞味期限管理
- 家のメンテナンス管理
- 登山・キャンプ用品の管理
なども検討しています。
実際に自分たちで使って、「便利になった」と思えるものを作っていく予定です。
作るだけで終わらせない
このブログでは、完成したアプリを紹介するだけではなく、
なぜ作ったのか
↓
どんな仕組みにしたのか
↓
どのように実装したのか
↓
実際に使ってどうだったのか
↓
どんな問題が起きて、どう改善したのか
というところまで紹介していきます。
開発の途中で使ったPython、AI、画像認識、Webアプリ、サーバーなどの技術については、「開発・技術」にまとめています。
→ 技術記事
