順調。特に問題ない。
■セクション4:画像処理(続き)
画像合成、しきい値処理、ぼかし処理の学習を行う。
ぼかしの処理の説明のあたりから、画像の読み込み、表示の関数などのよく使う機能を関数として準備し、これらをコピペして修正しながら進む。
一応、勉強のため、基本的には自分でコードは打ち込むようにしながら進む。
・画像合成
bitwise_orやbitwise_notを駆使して画像合成を行う。
実用の際は、一度、関数を作ってしまえば、それを使いまわすことにはなると思う。
しかしながら、1つ1つの段階を理解して勉強しておくのもよいだろう。
・しきい値処理
画像処理を行う際の前処理の定番。
OpenCVにはいろいろなしきい値処理のオプションが用意されている。
参考)
https://docs.opencv.org/3.4.3/d7/d4d/tutorial_py_thresholding.html
これら2つは二値化を行うオプションだ。
・cv2.THRESH_BINARY
・cv2.THRESH_BINARY_INV
この3つは一部諧調を保持して、条件に合致する際は最大、もしくは最小値にするというものだ。
実際に使うユースケースが思い浮かばないが。。。
グレースケール画像だけでオブジェクト抽出したりするような場合かなぁ。
・cv2.THRESH_TRUNC
・cv2.THRESH_TOZERO
・cv2.THRESH_TOZERO_INV
・ぼかし処理
画像エフェクトとしてだけでなく、画像処理の前処理でノイズ除去に使われる。
参考)
https://docs.opencv.org/3.4.2/d4/d13/tutorial_py_filtering.html
特にmedianBlurはぼかしというよりはノイズ除去の機能だ。
・cv2.blur
・cv2.GaussianBlur
・cv2.medianBlur
・cv2.bilateralFilter
・エッジ検出
Sobel,laplacianオペレータを扱う。
エッジ検出後に二値化を行えば、検出したエッジを目立たせることができる。
参考)
https://docs.opencv.org/3.4.2/d2/d2c/tutorial_sobel_derivatives.html
https://docs.opencv.org/3.4.2/d5/db5/tutorial_laplace_operator.html
・cv2.sobel
・cv2.laplacian
・ヒストグラム
グレースケールのヒストグラムから始まり、RGBそれぞれのヒストグラムを作成し、視覚化し、ヒストグラムの形状を観察する。
■次は
ヒストグラムのストレッチなど学習を行う。そして最後に、この章のアセスメントを行う。
このコースへのリンク
Python for Computer Vision with OpenCV and Deep Learning
全般ランキング
【このカテゴリーの最新記事】
- no image
- no image
- no image
- no image
- no image