簡體   English   中英

如何處理OpenCV的結果:: Canny Edge Detection

[英]How to process the result of OpenCV:: Canny Edge Detection

我嘗試使用Canny邊緣檢測算法來查找簡單圓的邊緣。

cv:: Canny() 

該函數返回一個

cv::Mat edge 

但是我不知道如何使用這些“邊緣”。

我的目標是將“邊緣”繪制回原始圖像並讀取該邊緣內的信息(在這種情況下,該邊緣是一個圓)

我通過cv :: read函數查看,僅找到不是邊緣的drawContour函數。

而且,我也沒有如何找到邊緣的坐標,以便可以對圓形邊緣的內部做一些事情。

我是openCV的新手,任何建議都值得贊賞。

edges是與源圖片大小相同的數組(Mat),並且在Canny函數發現的邊緣處包含零像素和最大值(255)像素

您可以在源圖像上強調邊緣(白色),對邊緣進行bitwise_or操作(在我的文章中)。 或將邊緣轉換為彩色圖像以繪制彩色邊緣。 是使用邊緣作為遮罩的示例。

邊緣是柵格結果。 要獲取線段集,請在edges使用findContours函數,然后可以使用drawContours

請注意,此信息易於理解。

您需要學習如何遍歷cv :: Mat對象。 http://docs.opencv.org/2.4/doc/tutorials/core/how_to_scan_images/how_to_scan_images.html#the-efficient-way

此外,我建議您閱讀學習opencv的書的前幾章,以掌握該庫的基本用法,現在有第三版。 您還可以在“ InstallPath \\ opencv \\ sources \\ samples”和官方教程中找到許多示例: http : //docs.opencv.org/2.4/doc/tutorials/tutorials.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM