石鑫华视觉论坛

 找回密码
 注册会员
查看: 258|回复: 2

[原创] NI视觉和Halcon一维码读取性能对比评测

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

    连续签到: 5 天

    [LV.Master]2000FPS

     楼主| 发表于 2024-2-26 08:36:18 | 显示全部楼层 |阅读模式 来自:广东省东莞市 电信

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

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

    x
    NI视觉和Halcon一维码读取性能对比评测
    image1.png
    被测一维码
             上面的被测一维码是料带上的标签。里面有多个不同类型的一维条形码,有些质量要好一点,有些质量则比较差。
             NI视觉和Halcon一维码读取性能对比评测共使用了8幅一维码图像。通过对比发现Halcon的性能要远强于NI VISION。首先是Halcon对于提供的图片,基本上都可以正常的解码,遇到一些比较差的条码,调整一些参数也是可以解码的,各种类型的条码解码也相对准确。而NI视觉则很多图片无法解码,就算能解码,条码类型也是错误的,解码出来的数据都是不正确的,性能差了一截。另一个就是解码耗时,Halcon基本上是几十毫秒级的。而NI视觉能解码则是几百毫秒级别的。二者在耗时上可能存在几倍的性能差异。下面来先来看一下NI视觉和Halcon在耗时上的差异:
    image2.png
    NI视觉读一维码耗时
             因为VBAI中的读一维码函数并没有返回耗时,所以这里使用了VBAI中的处理时间来评估。切换到运行界面可以看到处理时间是334ms,整个连续运行时速度也不是太快,一秒钟也就三幅图像的样子,所以这个处理时间是可信的。当然,这里的处理时间其实还包含了读图、后期的覆盖等过程。真实的时间读码耗时应该是会小一些的,但是也不会短太多。再来看一下Halcon的耗时:
    image3.png
    Halcon处理耗时是72ms
             从上面的效果来看,先不管解码的数量以及是否正确,且看耗时,NI视觉是334msHalcon则是72msNI视觉的耗时比Halcon长了四五倍。可见速度上差了不少。下面再来看一下解码性能,主要是看解码数量以及是否正确解码。
    image4.png
    01解码9
             这里将条码类型设置为code 93code 128两种类型。如果设置成自动,那么可能会有很多错误的条码类型:
    image5.png
    自动
             可以看到上面的自动,有些位置的条码框选是不对的,只有条码的局部,有些条码则没有正常识别。更无语的是最左边的那个框选在一个字符串上,也当成了一个条码。而从自动判断出来的条码类型来看还有codebar,实际上并不存在这种类型的条码。所以NI视觉在全图中识别条码时,最好还是指定具体的类型为佳,自动的性能真的不是太好。后面的几个测试图,全使用指定Code 93Code 128,不使用自动。
    image6.png
    01解码的结果都是正确的(最小条宽1,最小边缘强度40,最小条数5
    image7.png
    02解码12
    image8.png
    03解码10
             上面的三幅图像是一个产品的三种不同亮度下的对比,共有13个有效条码,但是最多只识别了12个,少的则只有10个,差别比较大。
    image9.png
    04解码3
    image10.png
    05解码10
             使用同样的参数,04中只解码了3个。而调整最小边缘强度为30
    image11.png
    04解码11
    image12.png
    05解码11
             040501~03还是同一产品,只是位置不同,不同亮度对比,仍然只解码了部分条码。而且可以看到,最小边缘强度对于解码有很大的影响。
    image13.png
    06解码3个全错
             06开始是另一个产品,共有7个有效一维条码,条码类型是code 39code 128。这里将条码类型code93改成code3906NI视觉中只有4个结果,结果都是错误的。
    image14.png
    07解码1个错误
    image15.png
    08解码2个全错
             第二个产品的中,NI视觉解码的数据全是错的。还有将字符、二维码等当成一维条码来解码的情况。
             下面再来看一下Halcon的解码效果:
    image16.png
    01解码13
    image17.png
    02解码13
    image18.png
    03解码11个,一个错误
             03中图像太亮,有三个条码被当成一个条码了,识别错误。
    image19.png
    04解码11
    image20.png
    05解码12
             0405中,则少解码了一两个。看样子是倾斜时分辨率不太够引起的。
    image21.png
    04设置较小的ROI仍然无法解码两个分辨率不够的条码
    image22.png
    06解码7-一个错误
    image23.png
    07解码8-2个错误
             07中也出现了一个将字符识别成了条码的问题,判断的条码类型是UPC-E。这种问题应该是可以避免的,因为HALCON中的读取条码类型是auto,可以指定只读取code 39code128(需要修改程序,这里没有再做验证)。
    image24.png
    08解码10-3个错误
             总体来看,Halcon的要比NI视觉的读码性能强不少,虽然些因为图像质量实在太差,在Halcon中也确实读不出来。
    image25.png
    NI视觉和Halcon一维码读取性能对比评测视频号解说

    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-3-1 22:50
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]100FPS

    发表于 2024-3-1 22:56:57 | 显示全部楼层 来自:浙江省绍兴市 移动
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    3 小时前
  • 签到天数: 3378 天

    连续签到: 5 天

    [LV.Master]2000FPS

     楼主| 发表于 2024-3-2 10:50:37 | 显示全部楼层 来自:广东省东莞市 电信
    youyou 发表于 2024-3-1 22:56
    上面HALCON程序能分享?

    分享精神已死,知识付费盛行。
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

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

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

    GMT+8, 2024-11-15 11:54

    Powered by Discuz! X3.4

    © 2001-2024 Discuz! Team.

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