【OpenCV】 画像にエッジ検出フィルタを適用する(Cannyフィルタ)
OpenCVの復習が必要になったのでメモしておきます。アルゴリズム自体の説明はここ(しぼりたてブログ Canny Edge Detection -アルゴリズム-)が詳しかったです。
// グレースケールで画像を読み込む UMat source; imread("lenna.jpg", CV_LOAD_IMAGE_GRAYSCALE).copyTo(source); if (source.empty()) { throw runtime_error("Failed to open image"); } // Cannyフィルタによるエッジ検出を行う // lowThresholdより小さい強度の画素はエッジと見なされない // highThresholdより大きい強度の画素はエッジと見なす // lowThreshold≦highThresholdの強度の画素はエッジに結合していればエッジと見なす double lowThreshold = 40.0; double highThreshold = 200.0; UMat destination; Canny(source, destination, lowThreshold, highThreshold); imshow("source", source); imshow("destination", destination);
さらに進化した画像処理ライブラリの定番 OpenCV 3基本プログラミング
- 作者: 北山洋幸
- 出版社/メーカー: カットシステム
- 発売日: 2016/04
- メディア: 単行本
- この商品を含むブログ (1件) を見る
関連記事 【OpenCV】 画像にエッジ検出フィルタを適用する(Laplacianフィルタ) - 旅行好きなソフトエンジニアの備忘録 【OpenCV】 画像にエッジ検出フィルタを適用する(Sobelフィルタ) - 旅行好きなソフトエンジニアの備忘録