OpenCV Cannyエッジ検出

Cannyエッジ検出はコンピュータービジョンで最もよく知られ、最も使用されているエッジ検出であるのがCannyエッジ検出です。

アルゴリズム

  1. 画像にガウス平滑化を適用して、ノイズを除去
  2. Sobelカーネルを使用して画像の輝度勾配を計算する
  3. 輝度勾配の方向を指している最大ピクセルのみを保持してエッジを細くする
  4. ヒステリシスしきい値処理により、エッジを集約する

Cannyエッジ検出

この小銭の画像をCannyエッジ検出処理していきます。

# グレースケール画像に変換
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.imshow("Image", image)

# ガウシアンフィルタ処理
blurred = cv2.GaussianBlur(gray, (5, 5), 0)
cv2.imshow("Gaussian", blurred)
# Cannyエッジ検出
cannied = cv2.Canny(blurred, 40, 200)
cv2.imshow("Canny", cannied )

うーん。。ちょっと、、写真に影が入っていたので、二重になってしまいました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)