在OpenCV中提取2D图像的一部分

时间:2017-07-25 13:01:47

标签: python-3.5 opencv3.0

enter image description here

我的目标是拍摄上面的照片并打开"打开"它沿着中心,使9个黑色双合透镜呈直线而不是圆形。我尝试在OpenCV中使用cv2.toPolar()函数,但图像非常扭曲,如下所示:

enter image description here

我正试图尝试不同的方法。从中心,我想单独访问每个双层,如披萨片,并将它们并排放置

最初我在考虑使用从图像中心到两侧双线之间的中点的两条线切割每个双线。

我的问题是:如何从图像中心到图像边缘绘制轮廓,穿过任意两个双峰之间的中点。如果我可以绘制一个,我知道任何两个这样的连续轮廓之间的角度是40度。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

我在这里注意到一些问题:

  1. toPolar()转换可能位于图像文件的中心附近,但它不是对象的中心。这会导致部分失真。如果您共享代码,我可以尝试使用代码并进行改进。
  2. 2.物体有点椭圆形,不是圆形。这意味着在纠正上述问题后你仍然会有一波。

    1. 如果您不介意半自动解决方案,可以使用OpenCV鼠标事件指定第一行,让程序使用40度角计算其余部分。