前回はカスケード分類器を自作できるようになりましたので、これでペットボトルのカスケード分類器を作って性能を試してみました。

これができればロボットによるゴミ収集の第一歩になるかなと思っています。

カスケード分類器の作り方はこちらの記事にまとめています。
OpenCVでカスケード分類器を自作する方法

三ツ矢サイダーの場合

まずは三ツ矢サイダーのカスケード分類器を作ってみました。結果は以下の写真の通り認識するのが難しかったです。予想としては、ペットボトルの中身が無色なので形状が判別しにくいのかなと思っています。ペットボトルは基本的に透明なものが多いので難航しそうな予感がしてきました。。手で掴んでしまっているのも判定しにくい原因の一つではあるとは思います。壁に置けるような場所がほしいところです。

コカ・コーラの場合

次にコカ・コーラのカスケード分類器を作ってみました。コーラなら中身も黒いし、しっかりと認識してくれるのではないかという予想でした。結果は予想通りバッチリ認識してくれました。カスケード分類器の作り方にもよりますが、コントラストがハッキリしているほうが認識してくれるようです。

では、コーラの中身を薄めてみたらどうか試してみました。色を薄めると認識はしてくれるのですが、認識率は確実に下がったなという印象でした。

ついでにペンの場合

ついでにペンなどでもカスケード分類器を作ってみました。濃い色のペンをモデルにしたので、予想としてはコーラぐらい認識してくれるのではないかと思っていたのですが、実際は認識するのが難しかったです。形状が細すぎるのが良くないのか、カスケード分類器の作り方が良くないのか。。
ちなみにカスケード分類器を作るときにペンの両サイドの余白を狭くしたりすると認識率が向上しました。余白部分も含めて学習されてしまってるのかもしれません。

ついでにビニール袋の場合

ビニール袋でも試してみました。とりあえずくしゃくしゃにしたビニール袋をモデルにしてカスケード分類器を作成し、それを認識してくれるか試してみました。こちらの結果は予想通り認識するのが難しかったです。今回は背景も白いので、ビニール袋の色が違ってたらもう少し認識してくれたかもしれません。

まとめ

今回はカスケード分類器でペットボトルを判別できるか試してみました。上記で試した結果としてはコーラは認識しやすかったですが、三ツ矢サイダーは認識しにくかったです。またついでに試してみたペンとビニール袋も認識するのが難しかったです。形状が決まっていてコントラストがハッキリしているもののほうが認識しやすいことが分かりました。