【发布时间】:2020-07-22 13:11:36
【问题描述】:
我一直试图在图像中找到白板标记的轮廓(外部轮廓)。我已经尝试为此使用openCv(似乎是最简单的)。我已经对图像进行了灰度化和过滤,但仍然无法获得足够好的结果。我正在处理的图像非常好(例如其中没有任何其他对象),我很确定这是可能的(不使用繁重的 DL 算法)。
这就是我得到的:
这(大致)是我想要得到的(这是使用 Photoshop 的魔杖完成的):
我尝试了不同的算法,但似乎都不起作用(上面的结果只是使用了 cv2.findContours 与 cv2.RETR_TREE 和 cv2.CHAIN_APPROX_SIMPLE)。我发现很多人都在问一些非常相似的问题,但给他们的答案对我不起作用。
(例如: Process image to find external contour 或 https://answers.opencv.org/question/182345/how-do-i-draw-only-external-contour/)
这是原图:
无论如何,感谢您的帮助!
【问题讨论】:
-
如果您在打开的 CV 中阅读 Findcontous,则可以将不同的模式发送到该函数。要找到外部尝试,我们需要发送 cv2.RETR_EXTERNAL 代替 cv2.RETR_TREE
-
请发布您的代码,以便其他人更正。
-
@ashtav 我尝试使用 RETER_EXTERNAL 但轮廓由几个不同的轮廓组成。谢谢你的回答!
-
@fmw42 我在下面发布了一些代码。谢谢!
标签: python opencv image-processing contour