c – 如何找到一帧中对象的质心与相邻帧之间的欧几里德距离
作者:互联网
我们正在进行车辆计数项目(使用OpenCV).现在我们必须找到从一帧中物体的质心到相邻帧的欧几里德距离?在我们的项目中,我们已经完成了寻找质心的工作.
解决方法:
我将假设相机没有在捕获之间移动,因此您不必担心注册.
你应该有两个cv :: Point对象代表两个获得的质心. Euclidean distance可以计算如下:
double euclideanDist(Point p, Point q)
{
Point diff = p - q;
return cv::sqrt(diff.x*diff.x + diff.y*diff.y);
}
int main(int /*argc*/, char** /*argv*/)
{
Point centroid1(0.0, 0.0);
Point centroid2(3.0, 4.0);
cout << euclideanDist(centroid1, centroid2) << endl;
return 0;
}
这输出5(即3-4-5三角形)……
希望有所帮助!
标签:euclidean-distance,c,opencv 来源: https://codeday.me/bug/20190902/1790579.html