正确检测图像opencv python中的角点
我有下面的图像,从中我用下面的代码检测角点正确检测图像opencv python中的角点,python,opencv,image-processing,3d,Python,Opencv,Image Processing,3d,我有下面的图像,从中我用下面的代码检测角点 import cv2 img = cv2.imread('image.jpg',cv2.IMREAD_COLOR) gray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY) bilateral = cv2.bilateralFilter(gray, 9, 75, 75) canny = cv2.Canny(bilateral, 50, 150) corners = cv2.goodFeaturesToTrac
import cv2
img = cv2.imread('image.jpg',cv2.IMREAD_COLOR)
gray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)
bilateral = cv2.bilateralFilter(gray, 9, 75, 75)
canny = cv2.Canny(bilateral, 50, 150)
corners = cv2.goodFeaturesToTrack(canny,15,0.06,25)
for i in range(len(corners)):
cv2.circle(img, (corners[i][0][0], corners[i][0][1]), 5, 255, -1)
cv2.imshow('dilated', img)
cv2.waitKey(0)
并不是所有的角都被正确地确定,这就是我希望黑色的角应该和盒子的角一样被确定。幸运的是,在这种情况下,框角是确定的,但并非所有的黑色角都是确定的。我怎样才能改善这个结果,甚至改变获得正确转角的方法。Harris corners不是这种方法的一个好解决方案,因为我需要一个单点作为角点,但Harris corners方法返回许多接近点作为角点的候选点。提前感谢您的建议 是聚焦于检测长方体角点还是长方体+黑色角点?实际上两者都是。黑色角点是参考角点,长方体角点是主要对象角点。不清楚您聚焦的是哪个角点。您是否知道要检测什么,黑色角点还是长方体角点(包括3个黑色角点)。因为有很多方法可以找到物体的轮廓。作为你的物体,一个盒子,应该很容易找到这些轮廓并提取角点。请提供原始图像,这样你就可以用它进行实验。