石鑫华视觉 手机微信QQ:13450001061 / 18038383457

图像编程

高分辨率清晰的PDF417二维码无法读取

文章来源:石鑫华视觉网时间:2024-04-25 11:34:02 点击:95

高分辨率清晰的PDF417二维码无法读取

image1.png

高分辨率清晰的PDF417二维码无法读取视频号

高分辨率清晰的PDF417二维码无法读取B站

得到一幅高分辨率、清晰度也很好、对比度也比较高的PDF417二维码的图像。客户说这个二维码在NI视觉中读取不到。在NI视觉助手2020中做了一下测试,确实是不太容易读取,但是并不是不能读取,偶尔一些比较恰当的ROI时,是可以读取的,但是这个ROI比较难设置。对于项目的通用性来说比较差,因为如果切换到其他图像,ROI位置不同、灰度值不一样时,很可能就不读不到了。在Halcon19.11中测试无法读取,而在Halcon21.05中则可以读取。

生成的PDF417二维码可以正常读取

提供的PDF417图像随机画的ROI无法读取

全图无法读取

客户提供的图像,使用ROI或全图时,基本上都无法读取到二维码。而且PDF417二维码读取函数,是没有参数可以设置的。只能设置读取的ROI。或者是在读取之前对图像做一些预处理,但是这个图像也是比较清晰的了。下面来看一下不同ROI时的效果:

ROI只包含PDF417二维码时无法识别

偶尔一个ROI可以识别PDF417二维码

但是也不是完全不能读取,偶尔一个ROI是可以读取的。某些函数对于条形码的条纹太粗时,并不容易识别,这里将图像分辨率降低一些,变成300万像素级别。画ROI后,好像要容易识别一些:

小ROI可识别

中ROI也可识别

旋转ROI也可识别

但是缩小分辨率后,也并不是说就一定能识别,ROI画大一些后,也是无法识别的:

300万级别时大ROI无法识别

又尝试了在识别前图像预处理,如使用BCG增强图像,或者是傅滤波器来平滑图像。效果均不太理想,并不能保证识别率:

降低分辨率增强图像后小ROI可识别

降低分辨率增强图像后大ROI不可识别

降低分辨率高斯滤波后小ROI不可识别

而使用高斯滤波后,则很难识别到,无论怎么画ROI,都不太容易识别。

切换到Halcon环境中识别,在Halcon19.11中,是无法识别的这样的PDF417二维码的,无论是全图,还是画ROI,或者是增强后的图像、降低分辨率后的图像,均不能识别二维码:

Halcon 19.11标准识别参数全图无法识别

Halcon 19.11最大识别参数ROI无法识别

降低分辨率后Halcon 19.11最大识别参数ROI无法识别

BCG增强后Halcon 19.11最大识别参数ROI无法识别

这里使用Halcon19.11无论怎么设置,均无法读取到PDF417二维码。而切换到Halcon21.05中,则原图、全图、ROI、BCG增强、高斯滤波、缩小分辨率等,均可以正常读取:

500万图像Halcon21.05中的效果

130万图像Halcon21.05中的效果

200万图像Halcon21.05中的效果

300万图像Halcon21.05中的效果

BCG增强图像Halcon21.05中的效果

高斯滤波图像Halcon21.05中的效果

Halcon21.05中的效果ROI中识别速度更快

Halcon21.05中的效果ROI只框选部分PDF417码时也可识别

在Halcon21.05中,则识别效果要好很多。这里的具体原因是什么不是太清楚。主要是PDF417也没有什么参数可设置。但是从NI视觉中的参数来看,太低分辨率、太高分辨率对于读码来说都不是太好,太低分辨率条和空太小,无法分辨。而太高分辨率时,则条和空太大,算法里的某些参数可能需要设置非常大才可以。当然,读码算法上确实会有比较大的差异,具体差异在哪里,为什么会引起这样的效果差别,那就不得而知了。


首页
84162741QQ
联系