一种根据图像冗余信息快速定位受损QR码的方法与流程

文档序号:24413752发布日期:2021-03-26 20:24阅读:185来源:国知局
一种根据图像冗余信息快速定位受损QR码的方法与流程
一种根据图像冗余信息快速定位受损qr码的方法
技术领域
1.本发明涉及一种快速定位受损qr码的方法,尤其是一种根据图像冗余信息快速定位受损qr码的方法。


背景技术:

2.qr码(quick response code,快速响应矩阵码)是一种二维码,其具有信息存储密度高,容错能力强等优点,通过其明显的定位图案可实现快速定位,因此得到了广泛的应用。
3.随着信息化程度的发展,各行各业都在以减少人工成本、提高信息化水平为目标,而简单、成本低廉、识读速度快的qr码标签成了各大行业的首选。通过粘贴qr码标签,并在工厂流水线上进行识别,可以自动记录各零件生产和组装的全过程,实现快速的产品溯源及良品分析;在物流行业通过qr码可实现全自动的包裹分拣,减少人工参与成本;在零售行业,可替代条形码进行商品识别;在移动支付行业,qr码的扫码支付已得到了广泛应用。可见qr码已经成为快速获取物品信息或人类信息的重要入口。
4.随着qr码进军各大行业,对扫码设备的扫码能力进一步提高要求。因为二维码在识读过程中极易受到各种因素的影响,如qr码的污损,对比度低,光照不均,设备的运动模糊,失焦模糊以及各类噪声等都会影响扫码算法的定位效果,而定位效果的提高往往带来了速度的降低,这对采照环境较差且希望加快生产的工业领域是个矛盾的选择。鉴于此,如何在保证定位速度的同时提高受损qr码的定位效果是亟待解决的问题。
5.传统图像处理算法十分依赖qr码的定位图案,同时其往往只能针对特定场景进行优化,当遭遇复杂环境时会产生无法正确定位的问题。可能的环境如下:(1)在光照不充分的环境下采集的qr码,具有色彩偏暗,对比度低的缺点;(2)非平面上或发生严重弯曲变形的qr码将无法有效定位;(3)打印在金属材质上的点阵qr码通常前景背景颜色相同;(4)移动环境中采集的qr码容易产生运动模糊;(5)定位图案遭到严重污损时将无法有效定位;(6)失焦后的二维码会产生失焦模糊。传统图像处理算法极难穷尽所有场景,因此当算法应用到其他场景时会导致无法定位的情况发生。现有的深度学习算法经过大量训练后可以有效定位qr码的区域,虽其不再依赖qr码的定位图案,但其定位效果受到模型大小的影响。较大的模型具有较好的定位能力,但由于其需要进行大量的卷积和浮点运算,使得算法速度较慢。深度学习依赖gpu等具有并行计算的硬件设备,这对于硬件落后的扫码设备来说更进一步减慢了定位的速度,甚至无法将算法进行有效移植。


技术实现要素:

6.发明目的:提供一种根据图像冗余信息快速定位受损qr码的方法,能够充分借助图像冗余信息,不断调整阈值来进行边缘检测及二值化,在此基础上进行邻域的异常过滤,最后实现qr码的快速定位。
7.技术方案:本发明所述的根据图像冗余信息快速定位受损qr码的方法,包括如下
步骤:步骤1,对包含有qr码的图片进行灰度处理,获取灰度图片;步骤2,通过随机采样对灰度图片进行清晰度评估;步骤3,通过自适应阈值对灰度图片进行滤波及边缘检测;步骤4,通过检测到的边缘确定条纹的宽度,并根据条纹的宽度比例确定qr码的三个定位图案;步骤5,通过三个定位图案确定qr码区域,再结合定位图案的模块宽度s,重新对qr码区域进行边缘检测,并对边缘进行二值化;步骤6,通过三个定位图案计算仿射变化矩阵,以此对灰度图像进行仿射变换,并根据二值化结果搜寻出qr码的四条边缘线,边缘线交于qr码的四个角点,可求得单应性变换矩阵,最后通过单应性变换进行定位校正。
8.进一步的,步骤2中,通过随机采样对灰度图片进行清晰度评估的具体步骤为:步骤2.1,使用isaac伪随机数生成算法生成个满足正态分布的随机数,其中w和h分别为灰度图像的宽度像素和高度像素;步骤2.2,由相邻两个随机数确定一个像素点的坐标,共可确定个像素点,并以这些像素点坐标作为各个采样点坐标;步骤2.3,根据各个采样点坐标在灰度图片上进行采样,取每个采样点及其紧邻的共九个点的像素值的均值作为该采样点的像素值;步骤2.4,统计所有采样点的像素值,求出全部采样点像素值的均值、方差以及直方分布;步骤2.5,将方差与清晰度阈值进行比较,若方差大于等于清晰度阈值,则表明清晰度符合要求,直接进入步骤3,若方差小于清晰度阈值,则表明清晰度较低,返回直方分布结果,并进入步骤2.6;步骤2.6,根据直方分布计算出前景像素值和背景像素值,然后通过前景像素值和背景像素值调整扫码设备的闪光灯亮度,再启动扫码设备重新采集包含有qr码的图片,再返回步骤1;若无法启动扫码设备,则直接进入步骤3。
9.进一步的,步骤2.6中,根据直方分布计算出前景像素值和背景像素值的具体步骤为:步骤2.6.1,计算当前像素值的数量梯度:式中,表示像素值为的数量梯度,表示像素值为的采样点个数,表示像素值为的采样点个数,并存在以及的关系;步骤2.6.2,进行极值点判断:若与的符号相反或者值为0时,则像素
值确定为一个直方分布的疑似极值点,统计像素值及其相邻两个像素值的采样点总个数为:式中,为像素值周围的采样点总个数,为当前像素值的采样点个数;步骤2.6.3,比较所有疑似极值点的周围采样点总个数,最大的疑似极值点对应的像素值作为背景像素值,第二大的疑似极值点对应的像素值作为前景像素值。
10.进一步的,步骤2.6中,根据前景像素值和背景像素值调整扫码设备的闪光灯亮度时,若前景像素值和背景像素值均小于127,则将扫码设备的闪光灯亮度调整至高于上一次,若前景像素值和背景像素值均大于等于127,则将扫码设备的闪光灯亮度调整至低于上一次。
11.进一步的,步骤3中,通过自适应阈值对灰度图片进行滤波及边缘检测的具体步骤为:步骤3.1,对灰度图片进行往返式逐行或逐列扫描,通过当前扫描行或扫描列中所有像素点的像素值,求出该扫描行或扫描列的直方分布,再通过直方分布计算出当前扫描行或扫描列的前景像素值和背景像素值,由此构造初始边缘阈值:式中,abs为求绝对值函数,为最小边缘阈值,为当前边缘阈值;步骤3.2,使用指数移动平均对该扫描行或扫描列中每一个像素点进行逐一滤波,滤波满足公式:式中,为当前像素点的滤波值,为上一像素点的滤波值,为当前像素点的像素值,为设置的定值,范围为0到1之间;步骤3.3,通过laplace算子判断当前像素点是否为边缘,若为边缘,则根据的规则筛除弱边缘,否则将当前像素点的坐标作为边缘值存储至当前扫描行或扫描列的边缘集中,并更新自适应阈值;步骤3.4,缩小自适应阈值,再返回步骤3.2对下一个像素
点进行扫描,直到该扫描行或该扫描列的全部像素点扫描完毕,由此得到当前扫描行或扫描列的边缘集合:式中,为当前扫描行或扫描列的边缘集,为当前扫描行或扫描列中第n个边缘值;步骤3.5,重复步骤3.1

3.4直到求得整个灰度图像每行或每列的边缘集合。
12.进一步的,步骤4中,根据条纹的宽度比例确定qr码的三个定位图案的具体步骤为:步骤4.1,将往返式扫描获得的边缘值统一为同一方向的边缘值,c为当前行或列的编号,若c为奇数,则,若c为偶数,则,l为当前行或列的长度,若为横向扫描,则l等于灰度图像宽度w,若为纵向扫描,则l等于灰度图像高度h;步骤4.2,由各个相邻的边缘构成一个条纹,再计算出各个条纹的宽度:式中,为第i个条纹的宽度;步骤4.3,根据相邻五个条纹宽度寻找符合1:1:3:1:1的条纹比例,并记录在当前条纹的匹配条纹集合中:式中,匹配条纹,包含了每个匹配条纹的六个边缘值,为当前扫描行或列的边缘集e
cur
的子集;步骤4.4,通过上一行或列匹配条纹集p
last
的每个匹配条纹来过滤下一行或列的边缘集e
cur
,同样的通过下一行或列匹配条纹集p
cur
的每个匹配条纹来过滤上一行或列的边缘集e
last
,搜寻出因图像噪声而遗漏的匹配条纹,并记录在相应行或列的匹配条纹集合中;步骤4.5,对搜寻到的条纹进行聚类,即满足相邻边缘的行间距和列间距都≤阈值t时,,则认为是同一条纹,从而形成更宽的条纹;步骤4.6,将聚类后获得的各个横向条纹和纵向条纹进行对应交叉,则最终确定出定位图案,不交叉的则过滤掉;步骤4.7,计算定位图案的中心点o、边缘点集v={v0,v1,v2,

,v
n
}以及模块宽度
,式中,d(o, v
i
)表示横向条纹的边缘点v
i
和中心点o的横向距离或纵向条纹的边缘点v
i
和中心点o的纵向距离,若中心点o的坐标为(x
o
,y
o
),边缘点v
i
的坐标为(x
i
,y
i
),则横向距离为abs(x
o
,
‑ꢀ
x
i
),纵向距离为abs(y
o
,
‑ꢀ
y
i
)。
13.进一步的,步骤4.4中,过滤的具体步骤为:步骤4.4.1,通过p
cur
中的每个匹配条纹对上一行或列的边缘集进行搜索,令以及;步骤4.4.2,阈值判断:若满足,其中,则和具有对应关系,并记录;步骤4.4.3,若满足步骤4.4.2的阈值判断,则更新,否则更新,返回步骤4.4.2,直到或的所有元素遍历完毕;步骤4.4.4,若中的每个边缘值均在中找到与之对应的边缘值,则表明从上一行或列边缘集中找到一个因图像噪声而遗漏的匹配条纹,并将其记录在上一行或列的匹配条纹集中,返回步骤4.4.1,使用下一个匹配条纹进行搜索,直到的所有元素遍历完毕。
14.进一步的,步骤5的具体步骤为:步骤5.1,对定位图案进行配对,配对规则为:模块宽度s小于阈值t、颜色相同且不共线;步骤5.2,根据配对的三个定位图案来确定qr码区域;步骤5.3,对qr码区域进行边缘检测识别黑白空间,从而形成初步的二值化处理;步骤5.4,使用均值法计算qr码区域内各像素点在其邻域内的二值化阈值,其中邻域大小是边长为模块宽度s的方形区域,再根据二值化阈值对qr码区域进行二值化处理;步骤5.5,将步骤5.3的二值化与步骤5.4的二值化进行比较,若像素值都二值化为0,则更新为0,若都二值化为255,则更新为255,否则存在以下三种情况:情况1,若当前像素点左边的像素点及上边的像素点都二值化为0,则当前像素点二值化为0;情况2,若当前像素点左边的像素点及上边的像素点都二值化为255,则当前像素点二值化为255;情况3,若当前像素点左边的像素点及上边的像素点的二值化结果不同,则以这两个像素点的均值作为像素阈值,若当前像素点的像素值大于像素阈值,则二值化为255,否则二值化为0。
15.进一步的,步骤6的具体步骤为:步骤6.1,设标准qr码的三个定位图案的中心点坐标分别为、以及,当前qr码的三个定位图案中心点坐标为、以及则当前qr码的三个定位图案满足如下仿射变换:式中,为仿射变换系数,为坐标通过仿射变换投影到仿射域的坐标,将以及代入上式求得仿射变换系数;步骤6.2,将边缘点集v的每个边缘点坐标通过上述仿射变换映射到仿射域中,通过与标准qr码的坐标对比,确定出该边缘点在标准qr码的位置,找到属于标准qr码上边缘线的边缘点,做最小二乘直线拟合,形成上边缘线;步骤6.3,根据步骤6.2同理求得下边缘线、左边缘线以及右边缘线;步骤6.4,沿着上边缘线、下边缘线、左边缘线以及右边缘线在步骤5的二值化图像中采样qr码的边缘黑点,并根据新增加的采样点重新做最小二乘直线拟合,使得直线拟合更加准确;步骤6.5,上边缘线、下边缘线、左边缘线以及右边缘线相交于qr码的四个角点,设在单应性变换域中的对应关系为,并满足如下单应性变换:式中,为单应性变换系数,为坐标通过单应性变换投影到单应性域的坐标,由这四点及其对应关系即可求得单应性变换矩阵,对qr码完成定位校正。
16.本发明与现有技术相比,其有益效果是:通过充分利用图像中的冗余信息,尽可能减少图像遍历次数,提高算法速度;采用自适应阈值边缘检测和自适应阈值二值化,提高边缘检测和二值化的效果;图像传入时先进行简单的图像分析,对不清晰的图像实行过滤,能够避免计算资源过渡浪费。
附图说明
17.图1为本发明的方法流程图;图2为本发明的qr码横向定位图案条纹示意图;图3为本发明的qr码定位图案中心及边缘点集识别示意图;图4为本发明的qr码仿射变换示意图;图5为本发明的qr码边缘直线拟合示意图;图6为本发明的qr码边缘点采样示意图;图7为本发明的qr码单应性变换示意图;图8为本发明的qr码定位校正示意图。
具体实施方式
18.下面结合附图对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
19.如图1所示,本发明公开的根据图像冗余信息快速定位受损qr码的方法,包括如下步骤:根据图像冗余信息快速定位受损qr码的方法,包括如下步骤:步骤1,对包含有qr码的图片进行灰度处理,获取灰度图片;步骤2,通过随机采样对灰度图片进行清晰度评估;步骤3,通过自适应阈值对灰度图片进行滤波及边缘检测;步骤4,通过检测到的边缘确定条纹的宽度,并根据条纹的宽度比例确定qr码的三个定位图案;步骤5,通过三个定位图案确定qr码区域,再结合定位图案的模块宽度s的大小,重新对qr码区域进行边缘检测,并对边缘进行二值化;步骤6,通过三个定位图案计算仿射变化矩阵,以此对灰度图像进行仿射变换,如图4所示,并根据二值化结果搜寻出qr码的四条边缘线,边缘线交于qr码的四个角点,可求得单应性变换矩阵,最后通过单应性变换进行定位校正。
20.通过充分利用图像中的冗余信息,尽可能减少图像遍历次数,提高算法速度;采用自适应阈值边缘检测和自适应阈值二值化,提高边缘检测和二值化的效果;图像传入时先进行简单的图像分析,对不清晰的图像实行过滤,能够避免计算资源过渡浪费。
21.进一步的,步骤2中,通过随机采样对灰度图片进行清晰度评估的具体步骤为:步骤2.1,使用isaac伪随机数生成算法生成个满足正态分布的随机数,其中w和h分别为灰度图像的宽度像素和高度像素;图像在传入时,通过随机采样对图像进行分析,采样方式以正态分布的形式进行采样,使得中间区域的采样点更多,这主要是因为大多数扫码设备在采集qr码数据时,往往qr码在图像边缘的概率较小,因此根据正态分布的随机数对灰度图片进行采样,使采样满足灰度图片中间采样点多以及边缘采样点较少;步骤2.2,由相邻两个随机数确定一个像素点的坐标,共可确定个像素点,并以这些像素点坐标作为各个采样点坐标;
步骤2.3,根据各个采样点坐标在灰度图片上进行采样,取每个采样点及其紧邻的共九个点的像素值的均值作为该采样点的像素值,可有效避免异常点的影响;步骤2.4,统计所有采样点的像素值,求出全部采样点像素值的均值、方差以及直方分布;步骤2.5,将方差与清晰度阈值进行比较,若方差大于等于清晰度阈值,则表明清晰度符合要求,直接进入步骤3,若方差小于清晰度阈值,则表明清晰度较低,返回直方分布结果,并进入步骤2.6;通过采样的部分像素点进行清晰度分析,倘若清晰度不够可反馈给扫码设备进行下一帧的采集,以采集更清晰的图像进行分析,提高识别率;步骤2.6,根据直方分布计算出前景像素值和背景像素值,然后通过前景像素值和背景像素值调整扫码设备的闪光灯亮度,再启动扫码设备重新采集包含有qr码的图片,再返回步骤1;若无法启动扫码设备,则直接进入步骤3。
22.进一步的,步骤2.6中,根据直方分布计算出前景像素值和背景像素值的具体步骤为:步骤2.6.1,计算当前像素值的数量梯度:式中,表示像素值为的数量梯度,表示像素值为的采样点个数,表示像素值为的采样点个数,并存在以及的关系;步骤2.6.2,进行极值点判断:若与的符号相反或者值为0时,则像素值确定为一个直方分布的疑似极值点,统计像素值及其相邻两个像素值的采样点总个数为:式中,为像素值周围的采样点总个数,为当前像素值的采样点个数;步骤2.6.3,比较所有疑似极值点的周围采样点总个数,最大的疑似极值点对应的像素值作为背景像素值,第二大的疑似极值点对应的像素值作为前景像素值。
23.进一步的,步骤2.6中,根据前景像素值和背景像素值调整扫码设备的闪光灯亮度时,若前景像素值和背景像素值均小于127,则将扫码设备的闪光灯亮度调整至高于上一次,若前景像素值和背景像素值均大于等于127,则将扫码设备的闪光灯亮度调整至低于上一次。
24.进一步的,步骤3中,通过自适应阈值对灰度图片进行滤波及边缘检测的具体步骤为:步骤3.1,对灰度图片进行往返式逐行或逐列扫描,通过当前扫描行或扫描列中所
有像素点的像素值,求出该扫描行或扫描列的直方分布,再通过直方分布计算出当前扫描行或扫描列的前景像素值和背景像素值,由此构造初始边缘阈值:式中,abs为求绝对值函数,为最小边缘阈值,为当前边缘阈值;步骤3.2,使用指数移动平均对该扫描行或扫描列中每一个像素点进行逐一滤波,滤波满足公式:式中,为当前像素点的滤波值,为上一像素点的滤波值,为当前像素点的像素值,为设置的定值,范围为0到1之间,指数移动平均滤波器具有算法简单、滤波速度快的优点;步骤3.3,通过laplace算子判断当前像素点是否为边缘,若为边缘,则根据的规则筛除弱边缘,否则将当前像素点的坐标作为边缘值存储至当前扫描行或扫描列的边缘集中,并更新自适应阈值;由于laplace算子极易受到异常值的影响,为此通过阈值可以过滤弱边缘,为了避免有效边缘被过滤,阈值会通过周围图像的直方分布进行调整,有效减少了异常边缘对定位图案的判断,能够极大提高了定位图案条纹的识别率;步骤3.4,缩小自适应阈值,再返回步骤3.2对下一个像素点进行扫描,直到该扫描行或该扫描列的全部像素点扫描完毕,由此得到当前扫描行或扫描列的边缘集合:式中,为当前扫描行或扫描列的边缘集,为当前扫描行或扫描列中第n个边缘值;步骤3.5,重复步骤3.1

3.4直到求得整个灰度图像每行或每列的边缘集合。
25.图像中一般存在大量的冗余信息,如上下两行的像素点是相近的,因此当上一行存在异常时,可以通过下一行对上一行进行过滤,避免在同一行上进行过多的迭代和判断,有效提高了算法速度。
26.进一步的,步骤4中,根据条纹的宽度比例确定qr码的三个定位图案的具体步骤为:步骤4.1,将往返式扫描获得的边缘值统一为同一方向的边缘值,c为当前行或
列的编号,若c为奇数,则,若c为偶数,则,l为当前行或列的长度,若为横向扫描,则l等于灰度图像宽度w,若为纵向扫描,则l等于灰度图像高度h;步骤4.2,由各个相邻的边缘构成一个条纹,再计算出各个条纹的宽度:式中,为第i个条纹的宽度;步骤4.3,根据相邻五个条纹宽度寻找符合1:1:3:1:1的条纹比例,并记录在当前条纹的匹配条纹集合中:式中,匹配条纹,包含了每个匹配条纹的六个边缘值,为当前扫描行或列的边缘集e
cur
的子集;步骤4.4,通过上一行或列匹配条纹集p
last
的每个匹配条纹来过滤下一行或列的边缘集e
cur
,同样的通过下一行或列匹配条纹集p
cur
的每个匹配条纹来过滤上一行或列的边缘集e
last
,搜寻出因图像噪声而遗漏的匹配条纹,并记录在相应行或列的匹配条纹集合中,qr码横向定位图案条纹如图2所示;步骤4.5,对搜寻到的条纹进行聚类,即满足相邻边缘的行间距和列间距都≤阈值t时,,则认为是同一条纹,从而形成更宽的条纹;步骤4.6,将聚类后获得的各个横向条纹和纵向条纹进行对应交叉,则最终确定出定位图案,不交叉的则过滤掉;步骤4.7,计算定位图案的中心点o、边缘点集v={v0,v1,v2,

,v
n
}以及模块宽度,式中,d(o, v
i
)表示横向条纹的边缘点v
i
和中心点o的横向距离或纵向条纹的边缘点v
i
和中心点o的纵向距离,若中心点o的坐标为(x
o
,y
o
),边缘点v
i
的坐标为(x
i
,y
i
),则横向距离为abs(x
o
,
‑ꢀ
x
i
),纵向距离为abs(y
o
,
‑ꢀ
y
i
)。
27.进一步的,步骤4.4中,过滤的具体步骤为:步骤4.4.1,通过p
cur
中的每个匹配条纹对上一行或列的边缘集进行搜索,令以及;步骤4.4.2,阈值判断:若满足,其中,则和具有
对应关系,并记录;步骤4.4.3,若满足步骤4.4.2的阈值判断,则更新,否则更新,返回步骤4.4.2,直到或的所有元素遍历完毕;步骤4.4.4,若中的每个边缘值均在中找到与之对应的边缘值,则表明从上一行或列边缘集中找到一个因图像噪声而遗漏的匹配条纹,并将其记录在上一行或列的匹配条纹集中,返回步骤4.4.1,使用下一个匹配条纹进行搜索,直到的所有元素遍历完毕。
28.当qr码定位图案受到污染或噪声影响时,通过前后两行或两列边缘的比较,可以有效避免因污染造成的匹配条纹被过滤的情况发生,提高定位图案的识别效果。
29.进一步的,步骤5的具体步骤为:步骤5.1,对定位图案进行配对,配对规则为:模块宽度s小于阈值t、颜色相同且不共线;步骤5.2,根据配对的三个定位图案来确定qr码区域;步骤5.3,对qr码区域进行边缘检测识别黑白空间,从而形成初步的二值化处理;步骤5.4,使用均值法计算qr码区域内各像素点在其邻域内的二值化阈值,其中邻域大小是边长为模块宽度s的方形区域,再根据二值化阈值对qr码区域进行二值化处理;步骤5.5,将步骤5.3的二值化与步骤5.4的二值化进行比较,若像素值都二值化为0,则更新为0,若都二值化为255,则更新为255,否则存在以下三种情况:情况1,若当前像素点左边的像素点及上边的像素点都二值化为0,则当前像素点二值化为0;情况2,若当前像素点左边的像素点及上边的像素点都二值化为255,则当前像素点二值化为255;情况3,若当前像素点左边的像素点及上边的像素点的二值化结果不同,则以这两个像素点的均值作为像素阈值,若当前像素点的像素值大于像素阈值,则二值化为255,否则二值化为0。
30.对于二值化,首先通过找到的定位图案来锁定qr码区域,这避免了全局阈值对局部图像的影响,然后通过边缘检测查找每个模块的边缘,初步定位各黑白模块的位置,再以模块大小作为自适应阈值的像素邻域大小,采用均值法自适应计算阈值实现二值化,可有效提高二值化的效果。
31.进一步的,步骤6的具体步骤为:步骤6.1,设标准qr码的三个定位图案的中心点坐标分别为、以及,当前qr码的三个定位图案中心点坐标为、
以及则当前qr码的三个定位图案满足如下仿射变换:式中,为仿射变换系数,为坐标通过仿射变换投影到仿射域的坐标,将以及代入上式求得仿射变换系数;步骤6.2,将边缘点集v的每个边缘点坐标通过上述仿射变换映射到仿射域中,通过与标准qr码的坐标对比,确定出该边缘点在标准qr码的位置,找到属于标准qr码上边缘线的边缘点,做最小二乘直线拟合,形成上边缘线,如图5所示;步骤6.3,根据步骤6.2同理求得下边缘线、左边缘线以及右边缘线;步骤6.4,沿着上边缘线、下边缘线、左边缘线以及右边缘线在步骤5的二值化图像中采样qr码的边缘黑点,如图6所示,并根据新增加的采样点重新做最小二乘直线拟合,使得直线拟合更加准确;步骤6.5,上边缘线、下边缘线、左边缘线以及右边缘线相交于qr码的四个角点,设在单应性变换域中的对应关系为,并满足如下单应性变换:式中,为单应性变换系数,为坐标通过单应性变换投影到单应性域的坐标,由这四点及其对应关系即可求得单应性变换矩阵,如图7所示,对qr码完成定位校正,校正结果如图8所示。
32.如上所述,尽管参照特定的优选实施例已经表示和表述了本发明,但其不得解释为对本发明自身的限制。在不脱离所附权利要求定义的本发明的精神和范围前提下,可对其在形式上和细节上作出各种变化。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1