アフィリエイト広告を利用しています

広告

この広告は30日以上更新がないブログに表示されております。
新規記事の投稿を行うことで、非表示にすることが可能です。
posted by fanblog

2019年10月17日

【6日目成果】英語版Udemy講座で学ぶ!OpenCV、ディープラーニングを使ってpythonで画像認識





進捗 54%(+9%)
順調。
しばらくは動画の画像認識はないようなので、Macのセットアップはほっておく。
画像認識の勉強はAPIをコールしながらも、多重ループを使ったり、複雑なAPI呼び出しを繰り返したりというのを想像していたのだが、OpenCVを使ったものはまったく違う感じだ。

■セクション6:物体検出

・テンプレートマッチング
テンプレートマッチングの複数のアルゴリズムを試して比較を行う。うーん、matchTemplate関数を一回コールするだけで、テンプレートマッチングが完了するのがすごい!これがOpenCVの威力か!

pythonのeval関数の説明あり。pythonの勉強はしたことがあるが、evalは知らなかった。勉強になる。
evalとは文字列(式)を実行(評価)してくれるのだ。
例えば、eval('1 + 1') は2になる。

検出結果を見るとTM_CCORRのアルゴリズムの検出だけが間違って検出されている。
OpenCVのドキュメントでも同様だ。

https://docs.opencv.org/3.4.3/d4/dc6/tutorial_py_template_matching.html


Matching Resultの画像の一覧を見る。なるほど、画像の白いポイントが検出位置になっているようだ。全体が白いところに引っ張られて検出が間違っているようだ。正規化を行ったTM_CCORR_NORMEDは正しく検出できている。
一つずつ見るとTM_SQDIFFとTM_SQDIFF_NORMEDは反対の黒い所が検出位置になっている。差分で評価を行うアルゴリズムなので差分が最小になる所=黒が検出位置か。コードも同様になっていることを確認した。

・エッジ検出
Cannyのアルゴリズムに掛ける前に、ぼかしをしておくときれいにエッジが検出できるとのこと。改めて処理した結果の差を見ると大きく異なる。

https://docs.opencv.org/3.4.3/da/d22/tutorial_py_canny.html


OpenCVのドキュメントではいきなり、エッジ検出なっている。
検出対象の画像の背景が元々ぼけている画像だからか。非常にきれいにエッジ検出できている。Cannyのしきい値の設定もポイントなんだろうな。

・輪郭検出
 単に輪郭が検出できるだけでなく、外輪郭の線、内部の輪郭の線を区別して検出できて、さらに内部の輪郭をグルーピングできている。

https://docs.opencv.org/3.4.3/d3/d05/tutorial_py_table_of_contents_contours.html

■次は
 
セクション6の残りを終わらせたい。


このコースへのリンク
Python for Computer Vision with OpenCV and Deep Learning







全般ランキング

タグ:opencv Python
検索
<< 2019年10月 >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
最新記事
タグクラウド
カテゴリーアーカイブ
プロフィール
peter3qさんの画像
peter3q
エンジニアとして働いている40代の会社員です。 仕事でメインに使用している言語はC/C++です。 プライベートでは、大学生の息子と中学生の娘がいて、 週末、料理をし、毎年、梅シロップを付けています。
プロフィール
×

この広告は30日以上新しい記事の更新がないブログに表示されております。