カメラで認識は出来た
前回、カメラでリアルタイム画像類推はやってみましたが、次は静止画の物体検出を続けてやってみます。
ありがたいことに、テスト用の画像とかも用意されているのでそいつを使ってみます。
基本的に先のリアルタイム画像類推が出来ている時点で特に難しいことは無いと思う。
1 2 |
<span class="token builtin class-name">cd</span> /home/wan/jetson-inference/build/aarch64/bin ./detectnet.py --network<span class="token operator">=</span>ssd-mobilenet-v2 images/peds_0.jpg images/test/peds_out.jpg |
初回はいろいろやるのでめっちゃ時間かかります。
しばらくするとimages/test配下に画像が保存されます…
こんな感じで人物が認識され認識されているところも緑でマーキングされました。
一番左の人が70%と若干人認識が低いのは謎。
細かいこと
引数でいろいろ指定できるようなんですが、古いのか仕様が変わったのかうまくいかないみたいです。
detectnet.py | 物体検知用プログラム
画像、映像を入力として学習済みの物体を検知してバウンディングボックス(四角い枠)で囲み、名称を推論する。 |
||||||||||||||||||||
–network | 指定できるネットワークは以下の通りで選択したものに適した動作が行われる。
|
顔認識
いろいろあるなーと思い、顔認識をしようとしてみたところ…
1 2 |
cd /home/wan/jetson-inference/build/aarch64/bin ./detectnet.py --network<span class="token operator">=facenet</span> images/peds_0.jpg images/test/peds_out.jpg |
if loading a built-in model, maybe it wasn’t downloaded before.
Run the Model Downloader tool again and select it for download:
$ cd <jetson-inference>/tools
$ ./download-models.sh
「tools」配下にある「download-models.sh」を実行して足りないものを持ってこいとのこと。
1 2 3 4 5 |
wan@wan-desktop:~/jetson-inference/build/tools$ ls camera-capture CMakeFiles cmake_install.cmake depth-viewer Makefile wan@wan-desktop:~/jetson-inference/build/tools$ ./download-models.sh -bash: ./download-models.sh: No such file or directory wan@wan-desktop:~/jetson-inference/build/tools$ |
ふむ、と思いtoolsに行ってみるもそんなものはない!!
適当にググってみると「建成 / jetson-inference」にシェルが置いてあったのでとりあえずパクってきます。
と思ったら、ことごとくエラー。
シェルが無いなりの理由があるんですね。
よくわからんのでいったんあきらめる。
動画の物体検出
先に進んで、カメラでリアルタイムの物体検出をやってみます。
ネットワークは指定をしないとデフォルトのCOCO MobilenetのVersion2が使用されるみたい。
ここでもやっぱりネットワーク指定ではエラーを吐いてしまいました。
おおおーーー。リアルタイムで物体を検出してくれます。
デフォルトなので全部認識しようとしてますね。
「/usr/share/visionworks/sources/data/」配下にサンプル動画もあるのでそちらも処理してみたいと思います。
1 |
./detectnet.py /usr/share/visionworks/sources/data/pedestrians.mp4 images/test/pedestrians_ssd.mp4 |
こんな感じでできました。
続けてよく遊んでるDead by Daylightでやるとどうなるのか試してみました。
メインキャラの背中はちゃんと人間として認識するんですね…
ただ、少し先にいるゲームキャラは人間とは認識しないみたいでちょっと近づかないとダメみたいです。
一瞬だったからかもしれませんが、キラーであるナースは人間ではないようですw
とりあえずできた
デフォルトのネットワークしか使えなかったのはちょっと課題ですが、適当な物体認識は出来ましたね。
最近のリアル気味なゲームでもちゃんと認識できたのにはちょっと面白かったです。
もうちょっと遠くのものとか認識出来れば…なんか遊べるのかな??
日々くだらないことを追い求め、黒歴史をまとめておくための自由なブログ。
あんまり役立つことは書きませんが主に日記・ゲームや買ったものについての記事を気まぐれで好き勝手書いています。