- 2020-10-24 (土) 8:12
- 国際機械工学科
こんにちは。
ものづくり創造学科の山下です。すっかり秋らしくなりましたね。
さて、先日能力開発セミナーで画像処理を勉強してきましたので紹介します。
IoT(Internet of Things)の勉強も兼ねていて、Raspberry Piというシングルボードコンピューターと、Pythonというプログラミング言語を使って勉強しました。
今回のテーマは、Webカメラでとった抵抗(電子部品)の画像から、抵抗が何個あるのかを判別するというものです。
画像処理には、openCVという画像処理用のライブラリを使用しています。
これがオリジナルの画像です。
個数を数えるために物体の輪郭を認識したいので、まずカラー画像をグレー画像に変換します。
精度よく輪郭を検出するために、二値化といって黒と白の二つに分ける処理をします。
ここで抵抗の形が検出できました。
openCVの、黒い背景から白い物体を検出する機能を使って個数を数えます。7個です。
ここでは、抵抗の足の重なりが少し白くなっていますので、白い物体の面積の小さいものは除外するように処理しています。
オリジナルの画像に重ねると認識できていることがわかりますね。
この技術を使うといろんな物を数えることに利用できそうです。
私の自宅近くのパン屋さんではトレーにパンをのせてレジにもっていくと、トレーに光があたったとたんパンの形を認識してパンの名前と金額を瞬時に計算してくれます。
最初見たときにはすごいなぁと感心しました。
実際の社会でのこういう画像処理技術が使われているのですね。
とてもおもしろいなと思いいました。
今回はRaspberry Piでしましたが、Windowsでもできますので、PCをお持ちの方は是非勉強してみてください。
- Newer: いつもとは違う授業でワクワク・ドキドキ!
- Older: 第16回:納品