画像の中に写ってる物体を識別する人工知能「Darknet」なるものがあるらしい。
さっそくやってみる。
環境はiMac。
$ git clone https://github.com/pjreddie/darknet.git
$ make
30秒くらいで完了。
$ cd darknet
$ ./darknet
うむ。動く。
学習データ yolo.weights をダウンロードする。macOSには wget は入っていないので curl でやる。
$ curl -O http://pjreddie.com/media/files/yolo.weights
$ ./darknet yolo 引数? cfg/設定ファイル 学習データ data/画像ファイル
$ ./darknet yolo test cfg/yolo.cfg yolo.weithts data/dog.jpg
失敗した。cfg/yolo.cfgなんて設定ファイルがないというエラーになった。
cfgフォルダを覗いてみる。たしかに yolo.cfg なんてファイルは無い。
よく分からんけど、yolo9000.cfgならあるので、これを試す。
$ ./darknet yolo test cfg/yolo9000.cfg yolo.weithts data/dog.jpg
今度は実行はできた。predictions.png というファイルができるらしい。
しかし、predictions.png なんてファイルは無い。
代わりに predictions.jpg があった。
開いてみる
$ open predictions.jpg
ダメ。何も変わっていない。
このサイトを参考にさらに試す。
まず、yolo.weightsがうまくダウンロードできてなかった。
curlは使わずに、リンクからSafariでダウンロードする。
http://pjreddie.com/media/files/yolo.weights
200MB近くあれば正解。学習データなんだからこれくらいは重いはず。
次に、このサイトを参考にして実行コマンドを変える。
誤)
$ ./darknet yolo test cfg/yolo.cfg yolo.weithts data/dog.jpg
正)
$ ./darknet yolo detect cfg/yolov2.cfg yolo.weithts data/dog.jpg
$ ./darknet 引数? cfg/設定ファイル 学習データ data/画像ファイル
引数部分は「detect」が正しいらしい。
cfgは yolov2.cfg を使う。
$ ./darknet yolo detect cfg/yolov2.cfg yolo.weithts data/dog.jpg
あれ?動かない。
./darknet 直後のyoloを取っ払ったら動いた。
$ ./darknet detect cfg/yolov2.cfg yolo.weithts data/dog.jpg
できた!
こうなればあとはいろんな画像で試すだけ。例えばこんな。
おお!
Ohmu は流石に無理か。
こっちはどうか。
おお!
素晴らしい。ただ解像度低いから?か姫様は認識できず。もう少し大きい画像で試してみる。
また観たくなった。映画館で見られるうちは何回でも観ておきたい。
参考