ピーマン農家でないけど、ピーマン検知AIをJetson Nano で作ってみた -比較編-

農業AI AI

この、きゅうり仕分けAIを真似して、ピーマン検知AIを作ってみました。

*ピーマンの品質(傷、痛み)などは検出しておらず、位置とサイズ(幅、高さ)の検出です。

AIで創る未来 – 農業を次世代につなげるために。ある農家の挑戦。

このきゅうり農家の例のように、AI導入してみようと思った時、従来の画像処理と比較して、

どちらが /面倒 できる/できない かは検討しておいた方が良いと思います。

ここら辺も踏まえて、ピーマン検知AIを作っていきます。

この記事では、AIの作り方は説明せずに、作り方は別記事に書きたいと思います。

スポンサーリンク

きっかけ

親戚が、金沢ゆずの栽培をしていて、農家 & AIというキーワードに惹かれました。

特に親戚の農家がきゅうり農家と同じ課題を持っているわけではないので、これで課題解決をするぞ!!!
というわけでなく、どれくらいの労力、コスト感で実現できるかを確認したいと思っています。

金沢ゆずの時期が11月で、手元になかったので、冷蔵庫にあったピーマンを活用します。

実験環境

パソコン関係

ここで紹介している購入品を使って、下記のように撮像しました。

地震時の棚転倒防止にカメラをくくりつけて、これでは見えませんが、LEDの照明も使っています。

AI関係

AI学習にはGPUがついたPCが必要になりますが、代わりに無料で使えるGoogle Colaboratoryを使います。

画像AIのモデルにはYOLOというものを使います。

画像処理とAIの比較

冒頭でも触れましたが、どっちが楽?AIじゃないとできない?ということも検討しながら、ピーマン検知AIを作ります。

比較

AI画像処理
学習アノテーション
(数百枚〜数万枚×数秒)
学習
(何時間から数十日)
不要
運用精度が落ちたら、
データ見直して再学習
精度が落ちたら、
閾値、処理を見直し
処理検討YOLO、SSDなど
決まったものを選択
検知したい内容による
ピーマンかぶっていても検知したい
指かぶっていても検知したい
など余計な条件がない方が簡単
ロバスト性
(検出力)
学習すればするほど
上がる
画像処理によるが、複雑になり
運用が難しくなる

普通の画像処理

  1. 画像を用意 (今回は196枚。枚数というより、検出したい種類を集める必要がある)
  2. 画像処理作成
  3. jetson nanoで実行

ピーマンを検知するだけであればこちらの方が楽かもしれません。
*実際にはピーマンを検知しているわけではなく、
 黒いマウスパッド上の緑色のものを検知しています。

傷とか痛み具合を検知するなら、AIを混ぜようかなと考えます。

ただ、下にある動画内でも紹介していますが、ピーマンが重なった時の検知、指が重なった時の検知までしたい!!という要望があるような場合、処理はより複雑になりますので、AIの方が楽な場合があります。

あとは、背景ですね。背景がごちゃごちゃしている場合、画像処理は大変です。

画像処理作成

別記事で詳細に説明しますが、適当に作っていますが、処理コードも短いです。
コードの中身は気にしないでください。短いですと言いたいだけです。

Jetson nanoで実行

ピーマン検知 AI使わない編

画像AI(YOLO v2 tiny)

今の最新はYOLO v3で、学習とか使うのが簡単になっていたのですが、なぜか学習がうまく進まず、使い方を見直すのも面倒たったので、

1年前くらいに使ったv2を使いました。

YOLOはGPU搭載機でも動くものと、CPUでも動くが精度が低いYOLO tinyがありますが、Jetson nanoでもYOLO動くと思ってましたが無理でした。YOLO tinyを使います。

ピーマンの位置検出するだけなら、tinyで十分です。

やることは、だいたい下記のような感じです。

  1. 画像を用意 (今回は196枚)
  2. アノテーション
  3. 学習
  4. Jetson nanoで実行

アノテーション

画像のどこにピーマンがあるか、手作業でデータ作ります。
この作業はめちゃくちゃ大変!精度を出すためには数千枚、数万枚をこの作業します。
*代行してくれるメーカーがあります

この作業をする際に

  • labelimg
  • vott

を使いますが、vottはなぜかMacではファイル出力してくれなかったので、labelimgを使用

学習

今回は、Google Colaboratory。他にも、クラウドのGPUマシーンをレンタルするか、GPU PCを購入するかですが、100万超えるPC(&GPU)購入しない限り、Google Colaboratoryで良い気がします。

下の画像は大して意味ありませんが、lossという値が小さくなるまで、何時間、何日も待ちます。

特に位置検出の学習は時間がかかります

ただ、今回のように複雑でないピーマン検知は、10分ほどで終わっています。実験的な意味もあるので、データ数も少ないですしね。

Jetson Nanoで実行

ピーマン検知 AI使う編

最後に

きゅうり農家の事例でも言われていますが、誰でも同じようにきゅうりのランク分けができれば、人の入れ替わりにも強く(教育工数削減など)、出荷品質も安定するので、とても有用だと思います。

紹介しているjetson nanoのセットも2万前後で他の照明とかを考えても数万で収まる費用で、課題が解決できると思うと安くないでしょうか?

この記事自体も実験含めて、2日ほどなので、導入するまでの期間も比較的短いと思います。

どうやって、作っているかは別の記事で紹介したいと思います。

スポンサーリンク

タイトルとURLをコピーしました