//计算距离
void DrawAndCompute(Mat& Warp, vector<vector<Point>>& TargetPts)
{
for (int i = 0; i < TargetPts.size(); i++)
{
for (int j = 0; j < TargetPts[i].size(); j++)
{
//尺寸测量
Point PtA = Point(TargetPts[i][j]);
Point PtB = Point(TargetPts[i][(j + 1) % TargetPts[i].size()]);
double dis = round(EuDis(PtA, PtB) * 100) / 100;
//效果显示
circle(Warp, TargetPts[i][j], 5, Scalar(0, 255, 0), -1);
line(Warp, PtA, PtB, Scalar(0, 0, 255), 2);
char text[20];
sprintf_s(text, "%.2f", dis);
Point point = Point((PtA.x + PtB.x) / 2, (PtA.y + PtB.y) / 2);
putText(Warp, text, point, FONT_HERSHEY_SIMPLEX, 1, Scalar(255, 0, 255), 2);
}
}
}
opencv学习及应用:计算两点间距离
最新推荐文章于 2024-07-15 11:29:07 发布