石鑫华视觉论坛

 找回密码
 注册会员
查看: 3071|回复: 0

[原创] LabVIEW Vision求两点之间的距离

[复制链接]
  • TA的每日心情
    擦汗
    15 小时前
  • 签到天数: 3382 天

    连续签到: 4 天

    [LV.Master]2000FPS

    发表于 2018-12-1 17:39:31 | 显示全部楼层 |阅读模式 来自:广东省东莞市 电信

    注册登陆后可查看附件和大图,以及购买相关内容

    您需要 登录 才可以下载或查看,没有账号?注册会员

    x
    LabVIEW Vision求两点之间的距离
    LabVIEW VISION视觉开发包中,有一个求点距离的函数:

    IMAQ Point Distances点距离函数

    IMAQ Point Distances点距离函数
    IMAQPoint Distances点距离函数
    该函数计算的是点数组相邻两个点之间的距离,当然也可以只计算两个点之间的距离。不过,相对麻烦一点,需要把两个点创建成点数组后,再计算点距离,而且输出的结果也是数组的,如果只有两个点的距离,只是一个数据值的话,还得用索引数组获取第0个元素才可以,相对来讲是比较麻烦的:

    NI VISION中自带的点距离计算示例

    NI VISION中自带的点距离计算示例
    NIVISION中自带的点距离计算示例
    那么对于单纯计算两个点之间的距离,有什么方法来优化一下吗?这个当然也是可以,一种方法,就是利用上面的这个示例,将距离索引数组元素,然后做成一个子VI调用:

    调用NI VISION中的点距离函数计算两点之间的距离

    调用NI VISION中的点距离函数计算两点之间的距离
    调用NI VISION中的点距离函数计算两点之间的距离
    另外,我们也可以根据中学的数学知识,自己来写个简单的点距离函数。在数学中求两个点之间的距离的公式是

    两个点之间的距离的公式

    两个点之间的距离的公式
    ,根据这个公式,我们可以简单的写一个求两点距离的函数:

    利用距离公式求两点距离

    利用距离公式求两点距离
    利用距离公式求两点距离
    这样做成子VI,就可以在程序中方便的调用,来求两点之间的距离了。从效率上来讲,应该会比NI的函数要高一点。因为NIPoints Distances内部肯定是加了一个For循环来循环计数的,即使执行一次For循环求两个点之间距离,也要执行一次For循环。

    LabVIEW示例,LabVIEW2015SP1及以后版本可打开:
    利用距离公式求两点距离.vi (10.24 KB, 下载次数: 34)

    调用点距离函数求两点距离.vi (8.2 KB, 下载次数: 60)

    系统自带点距离函数求两点之间的距离.vi (8.19 KB, 下载次数: 105)

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册会员

    本版积分规则

    LabVIEW HALCON图像处理入门教程(第二版)
    石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
    《LabVIEW Vision函数实例详解》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23/24

    QQ|石鑫华视觉论坛 |网站地图

    GMT+8, 2024-11-20 23:15

    Powered by Discuz! X3.4

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表