我是opencv的新手,正在尝试实现幻灯片http://www.cs.utexas.edu/~grauman/courses/spring2008/slides/ShapeContexts425.pdf中概述的形状上下文描述符
在步骤 1 的第一部分,我使用精明的边缘检测器找到了形状上的边缘点。然后我需要计算每个边缘点到其他边缘点的欧几里得距离。而不是使用for循环来查找每个点之间的距离,是否有任何opencv函数可以更有效地执行此步骤?
我是opencv的新手,正在尝试实现幻灯片http://www.cs.utexas.edu/~grauman/courses/spring2008/slides/ShapeContexts425.pdf中概述的形状上下文描述符
在步骤 1 的第一部分,我使用精明的边缘检测器找到了形状上的边缘点。然后我需要计算每个边缘点到其他边缘点的欧几里得距离。而不是使用for循环来查找每个点之间的距离,是否有任何opencv函数可以更有效地执行此步骤?
查找点集之间的所有成对距离不是标准操作,我认为您不会在 OpenCV 中找到类似的东西。并且很容易手工计算。给定两个点a
和b
,您可以计算它们之间的距离,cv::norm(a - b)
如下所述。
您可能想要使用该matchShapes
功能。但是,它使用图像时刻,而不是您提到的形状描述符。