コピー2020.01.11Darkflowというオープンソースの物体検出のライブラリを使ってWebカメラを使って人や猫を検出してその部分を切り抜くプログラムを紹介します。人だけでも良かったのですが、私が猫が好きなので検出してみます。ちなみにバックエンドはTensorFlowを使います。1.7.02019年1月11日現在TensorFlowがバージョン2.0だとdarkflowは動かないので注意してください。Darkflowとは(簡単に)私も画像処理は専門ではないので、簡単に説明しますが、Darkflowは物体検出と物体認識をリアルタイムで行うことができるオープンソースのプログラムです。以下のgithubのREADMEを見ると何ができるのかわかると思います。1系のインストール先程もお話したようにTensorFlowは1系をインストールする必要があります。pipでバージョン指定してインストールします。tensorflow==1.7.0darkflowのインストールdarkflowをインストールします。githubからdarkflowをcloneし、そのディレクトリに移動します。darkflowそして以下のコマンドでインストールします。--inplaceもし上記のコマンドでインストールできなかった時には次の2つの方法も試してください。.ディレクトリの作成と必要なデータの取得ディレクトリ構成まず、今回作るプログラムのディレクトリを作成しておきます。ディレクトリ名をとりあえずfind_person_and_cat(適当に決めてください)にしておきます。find_person_and_cat先に最終的なディレクトリ(find_person_and_cat)構成を示しておきます。yolo.weights上記のような構成になるようにもろもろ設定していきます。設定ファイルや学習済みモデルのデータを保存しておく用のディレクトリを用意しておきます。cfg先程cloneしたdarkflowからdarkflow/cfg/yolo.cfgを今作成したcfgディレクトリに格納しておきます。(コピーなんかをしてください)次にクラス名(分類する対象の名前)の一覧が書いてあるデータもダウンロードします。https://raw.githubusercontent.com/pjreddie/darknet/master/data/coco.namesルートディレクトリに戻っておきます。..学習済みモデルの重みデータの取得find_person_and_cat下にweightsというディレクトリを作っておきます。weightsそしてwgetコマンドで重みデータをダウンロードします。https://pjreddie.com/media/files/yolov3.weightsルートディレクトリに戻っておきます。実装:人と猫を検出・認識して切り抜いてみるでは、Webカメラから画像データを取得して人と猫を見つけてその部分を切り抜いてみます。先程のdarkflowの力を借りれば簡単にできます。サンプルコード(main.py)を以下に示します。'__main__':main()ソースコードの詳しい説明はまた後日追記する予定です。指定したディレクトリ構成にし上記のコードを実行するとWebカメラでひたすら撮影しながら、人か猫がいればその部分を切り抜いていきます。(ひたすら画像を上書きしていきます。関連記事opencv【OpenCV】Webカメラから読み込んだ画像を切り抜く(メモ)今回はWebカメラから画像を読み込んで画像を切り抜く方法を紹介(メモ)します。POST処理)Pythonで簡単にWebアプリを作成できるFlaskを使っていこうと思います。私自身は業...PythonやライブラリOpenCVでWebカメラを使う(メモ)この記事ではOpenCVを使ってWebカメラを操作してみます。私も初心者なので、とりあえず使える...flaskFlask-SQLAlchemyの基本的な使い方。MySQLを使いますFlask-SQLAlchemyの基本的な使い方について簡単に紹介します。いるものを作ってみます。...FXchartを表示するmatplotlib.financeについてのメモchartを表示するためにmatplotlib.financeを使います。チャートを表示用...【OpenCV】Webカメラから読み込んだ画像を切り抜く(メモ)【PyGame】Grid(マス目上)をランダムで動くものを作ってみるたぬ吉.comアラサーのWebエンジニア見習いのたぬ吉.com(@tnkicom)です。過去には大学院、某IT企業で機械学習関連のプロジェクトに携わっていました。趣味は機械学習、アプリ開発、FX等の投資です。FXは最近はじめました。自動取引を目指して日々邁進中です。間違いがあれば、Twitterかコメントで教えていただければと思います。質問があれば、Twitterで連絡いただければと思います。進化計算ゲーム理論IT技術系まとめホーム検索トップサイドバーたぬ吉.comアラサーのWebエンジニア見習いのたぬ吉.com(@tnkicom)です。過去には大学院、某IT企業で機械学習関連のプロジェクトに携わっていました。趣味は機械学習、アプリ開発、FX等の投資です。FXは最近はじめました。自動取引を目指して日々邁進中です。間違いがあれば、Twitterかコメントで教えていただければと思います。質問があれば、Twitterで連絡いただければと思います。(1)メタ情報ログイン投稿フィードコメントフィードWordPress.orgタイトルとURLをコピーしました。