個人開発

YOLO

OpenCVでYOLOの学習用画像を撮影するツールを作る|Pythonで学習データを効率よく集める

YOLOモデルを学習させるために、最初に必要になるのが学習用画像です。AIの認識率は学習データの質に大きく左右されるため、まずはできるだけ多くの画像を集める必要があります。最初はスマートフォンで撮影することも考えましたが、PCへ転送したりフ...
YOLO

YOLOモデルの作り方をゼロから解説|通常の学習手順とデータセット自動生成方法の全体像

YOLOは、画像の中から物体の位置を検出できるAIです。近年ではさまざまな場面で利用されており、自分で学習データを用意すれば、オリジナルの物体検出AIを作ることもできます。一般的なYOLOモデルの作成手順は、それほど複雑ではありません。画像...
麻雀CPU

麻雀CPU、あったらいいので作ります。④ 実物の牌を認識できるのか試してみた

こんにちは。前回は、麻雀CPU全体の設計について紹介しました。設計が固まり、いよいよ実装に入ります。「まずはGUIから作り始めたのでは?」と思われるかもしれませんが、実は最初に取り組んだのは画面作りではありませんでした。最初に挑戦したのは、...
技術記事

Pythonでゲーム開発するときのディレクトリ構成【個人開発で管理しやすいフォルダの分け方】

PythonでゲームやGUIアプリを開発していると、最初は数個しかなかったファイルが、気付けば何十個にも増えていることがあります。私も現在開発している麻雀CPUで、まさに同じ経験をしました。最初はmain.pygui.pydetect.py...
技術記事

Pythonでクラスを分ける設計の考え方【GUI・ロジック・AIを分離する】

PythonでGUIアプリやゲームを作り始めると、最初は「とりあえず動けばいい」と思って、1つのファイルにどんどんコードを書いてしまいがちです。Pythonでクラスを分ける設計の考え方【GUI・ロジック・AIを分離する】PythonでGUI...
麻雀CPU

麻雀CPU、あったらいいので作ります。③ 設計編

こんにちは。前回の記事では、このプロジェクトで使用している開発環境を紹介しました。今回は、実際にプログラムを書き始める前に考えた「設計」について紹介します。プログラムは動けばそれで終わり、というものではありません。あとから機能を追加したり、...
麻雀CPU

麻雀CPU、あったらいいので作ります。② 開発環境編

こんにちは。前回の記事では、「なぜ麻雀CPUを作ろうと思ったのか」を紹介しました。今回は、このプロジェクトで実際に使用している開発環境を紹介します。AI開発というと高価な機材が必要なイメージがありますが、このプロジェクトでは「今あるものを活...
麻雀CPU

麻雀CPU、あったらいいので作ります。① なぜ作ろうと思ったのか

こんにちは。そして、このブログでは初めまして。「あったらいいので作りました。」へようこそ。このブログでは、「こんなのがあったら便利なのに」「自分が欲しいと思ったもの」を、実際に作りながら紹介していきます。記念すべき最初のプロジェクトは、麻雀...