Halcon知识【7】 最简单的测距问题-点与点测距

发布于:2023-02-16 ⋅ 阅读:(945) ⋅ 点赞:(0)

一、提要

        点与点测距的思路,是建立在两个不同坐标点上的距离计算问题。由于在现实中,需要测定的是几何上的点距,比如,两个圆的圆心距离。

二、测量原理

一个线与另一条线的距离。先看看基本的操作:

row:=[112.7,243.12]

column:=[97,202]

distance_pp( row[0], column[0], row[1], column[1], Distance)

以上操作后,Distance就是两个点的距离。

那么如何测量两个圆心之间距离呢?请看下面代码:

 * 图片文件见上图

read_image (Img, 'Holes.bmp')                                    *--  读入图像           

get_image_size (Img, Width, Height)                          * -- 获取图像长宽

gen_rectangle1 (ROI_0, 87.9375, 95.8828, 395.503, 438.504)     *-- 定义区域,覆盖两个圆

reduce_domain (Img, ROI_0, ImageReduced)                              *--将区域从原图中掏出

binary_threshold (ImageReduced, Region, 'max_separability', 'light', UsedThreshold)    *--二值化将双圆突出成一个总区域

connection (Region, ConnectedRegions)                                                                          *-- 将双圆按照连通性分成两个独立区域

area_center (ConnectedRegions, Area, Row, Column)                                                    *--获取两独立区域的中心,此处正是圆心

distance_pp (Row[0], Column[0], Row[1], Column[1], Distance)                                       *--求出两个圆心的点与点距离

*  Distance就是两个圆的圆心距离。

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到