基于Python的OpenCV中Harris角点检测与定位
我使用以下代码尝试检测多段线的角点,以便“测量”这些线。代码基于我在某处找到的一个片段,基于: 原始代码会导致拐角位置出现白点,该级别似乎是拐角度的指示器。 更新为使用cv2的代码片段对生成的图像进行迭代,并扫描大于10e-06的值。出于某种原因,我将其替换为我认为应该是图像中亮度的比较 但是,在这些位置绘制的圆与标准化harris输出中发现的实际热点相差甚远 我做错了什么 或者,可以设置为使用Harris UseSHarrisDetector=True,但我尝试使用它不会导致cornerHarris正确检测到的结果:基于Python的OpenCV中Harris角点检测与定位,python,opencv,feature-detection,corner-detection,Python,Opencv,Feature Detection,Corner Detection,我使用以下代码尝试检测多段线的角点,以便“测量”这些线。代码基于我在某处找到的一个片段,基于: 原始代码会导致拐角位置出现白点,该级别似乎是拐角度的指示器。 更新为使用cv2的代码片段对生成的图像进行迭代,并扫描大于10e-06的值。出于某种原因,我将其替换为我认为应该是图像中亮度的比较 但是,在这些位置绘制的圆与标准化harris输出中发现的实际热点相差甚远 我做错了什么 或者,可以设置为使用Harris UseSHarrisDetector=True,但我尝试使用它不会导致cornerHar
cv2.goodFeaturesToTrack( blurred, # img
500, # maxCorners
0.03, # qualityLevel
10, # minDistance
None, # corners,
None, # mask,
2, # blockSize,
useHarrisDetector=True, # useHarrisDetector,
k=0.04 # k
)
对cv2.cornerHarris的等效函数调用是什么?输出似乎是转置的,在方形图像上交换x和y索引将确定圆位于角最大值。输出似乎是转置的,在方形图像上交换x和y索引将确定圆位于角最大值。请尝试以下操作:
cv2.circle( cornershow, # dest
(y,x), # pos
4, # radius
(115,0,25) # color
)
请尝试以下内容:
cv2.circle( cornershow, # dest
(y,x), # pos
4, # radius
(115,0,25) # color
)
请尝试添加结果图像并解释错误。请尝试添加结果图像并解释错误。为了清楚起见,in-numpy索引应该是cornerimg[y,x],还有。shape返回h,w,所以实际交换的是访问cornerimg的方式。为了清楚起见,in-numpy索引应该是cornerimg[y,x]另外,shape返回h,w,所以实际上交换的是访问cornerimg的方式。