Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在opencv python中检测轮廓相交_Python_Opencv - Fatal编程技术网

如何在opencv python中检测轮廓相交

如何在opencv python中检测轮廓相交,python,opencv,Python,Opencv,我使用的是opencv python接口(不是cv2) 我有来自图像1和图像2的轮廓,我需要两个轮廓之间的交点 我曾经 image3 = cv.CloneImage(image1) cv.Set(image1, cv.Scalar(0,0,0)); image4 = cv.CloneImage(image1) cv.Set(image2, cv.Scalar(0,0,0)); cv.DrawContours(image3,contourmov,cv.CV_RGB(0,255,0),cv.CV_R

我使用的是opencv python接口(不是cv2)

我有来自图像1和图像2的轮廓,我需要两个轮廓之间的交点

我曾经

image3 = cv.CloneImage(image1)
cv.Set(image1, cv.Scalar(0,0,0));
image4 = cv.CloneImage(image1)
cv.Set(image2, cv.Scalar(0,0,0));
cv.DrawContours(image3,contourmov,cv.CV_RGB(0,255,0),cv.CV_RGB(0,255,0),1)
cv.DrawContours(image4,contourmove,cv.CV_RGB(0,255,0),cv.CV_RGB(0,255,0),1)
cv.And(image3,image4,image3)
所以我假设image3有image1和image2轮廓的交点,但我没有看到它们


请告诉我哪里出了问题。

我解决了这个问题。我不得不使用

 cv.DrawContours(image3,contourmov,cv.CV_RGB(0,255,0),cv.CV_RGB(0,255,0),1,cv.CV_FILLED) 
这将填充轮廓区域,您将获得交点。否则只有直线,你会得到直线交点,可能是点

 cv.DrawContours(image3,contourmov,cv.CV_RGB(0,255,0),cv.CV_RGB(0,255,0),1,cv.CV_FILLED)