图像校正、拼接方法及相关装置、设备、系统和存储介质与流程

文档序号:29694972发布日期:2022-04-16 12:45阅读:129来源:国知局
图像校正、拼接方法及相关装置、设备、系统和存储介质与流程

1.本技术涉及图像处理技术领域,特别是涉及一种图像校正、拼接方法及相关装置、设备、系统和存储介质。


背景技术:

2.在利用摄像头等图像获取设备获取扫描图像的过程中,可能因为摄像头的位置变化、人为操作不当、或其他因素导致扫描得到的图像存在较多问题。
3.目前,直接利用图像获取设备获取的扫描图像进行后续图像识别、图像拼接等处理后,得到的处理结果往往与实际情况存在较大差异。有鉴于此,如何对图像进行校正,进而提高图像质量成为亟待解决的问题。


技术实现要素:

4.本技术主要解决的技术问题是提供一种图像校正、拼接方法及相关装置、设备、系统和存储介质,能够对图像进行校正,进而提高图像质量。
5.为了解决上述技术问题,本技术第一方面提供了一种图像校正方法,包括:确定至少两帧原始图像中的连通域,其中,所述至少两帧原始图像是拍摄设备扫描得到的;基于所述至少两帧原始图像中的连通域,确定所述至少两帧原始图像的视场,其中,所述视场表征所述至少两帧原始图像在扫描方向上的偏移情况;基于所述视场,对所述原始图像进行校正。
6.为了解决上述技术问题,本技术第二方面提供了一种图像拼接方法,包括:获取原始图像序列,其中,所述原始图像序列中的各原始图像是拍摄设备扫描得到的;利用上述第一方面所述的图像校正方法对各所述原始图像进行校正,以得到经校正图像序列;确定所述经校正图像序列的帧偏移量;基于所述帧偏移量,将所述经校正图像序列拼接得到目标图像。
7.为了解决上述技术问题,本技术第三方面提供了一种图像校正装置,包括:第一确定模块、第二确定模块和校正模块。第一确定模块,用于确定至少两帧原始图像中的连通域,其中,所述至少两帧原始图像是拍摄设备扫描得到的;第二确定模块,用于基于所述至少两帧原始图像中的连通域,确定所述至少两帧原始图像的视场,其中,所述视场表征所述至少两帧原始图像在扫描方向上的偏移情况;校正模块,用于基于所述视场,对所述原始图像进行校正。
8.为了解决上述技术问题,本技术第四方法提供了一种图像拼接装置,包括获取模块,用于获取原始图像序列,其中,所述原始图像序列中的各原始图像是拍摄设备扫描得到的;图像校正模块,用于利用上述第一方面所述的图像校正方法对各所述原始图像进行校正,以得到经校正图像序列;帧偏移量确定模块,用于确定所述经校正图像序列的帧偏移量;拼接模块,用于基于所述帧偏移量,将所述经校正图像序列拼接得到目标图像。
9.为了解决上述技术问题,本技术第五方面提供了一种电子设备,包括相互耦接的
存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现上述第一方面所述的图像校正方法,或实现上述第二方面所述的图像拼接方法。
10.为了解决上述技术问题,本技术第六方面提供了一种计算机可读存储介质,存储有能够被处理器运行的程序指令,程序指令用于实现上述第一方面所述的图像校正方法,或实现上述第二方面所述的图像拼接方法。
11.上述方案,在拍摄设备扫描得到至少两帧原始图像后,可以确定至少两帧原始图像中的连通域,然后基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场,进而基于该视场对原始图像进行校正,故能够对图像进行校正,而且由于该视场表征至少两帧原始图像在扫描方向上的偏移情况,因此基于该视场对原始图像进行校正时,可以校正原始图像在扫描方向上的偏移,从而提高图像的质量。
附图说明
12.图1是本技术图像校正方法一实施例的流程示意图;
13.图2是本技术图像校正方法另一实施例步骤s11的流程示意图;
14.图3是本技术图像校正方法再一实施例步骤s12的流程示意图;
15.图4是本技术图像校正方法再一实施例步骤s13的流程示意图;
16.图5是本技术图像拼接方法一实施例的流程示意图;
17.图6是本技术图像校正装置一实施例的框架示意图;
18.图7是本技术图像拼接装置一实施例的框架示意图;
19.图8是本技术电子设备一实施例的框架示意图;
20.图9是本技术计算机可读存储介质一实施例的框架示意图。
具体实施方式
21.下面结合说明书附图,对本技术实施例的方案进行详细说明。
22.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本技术。
23.本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
24.请参阅图1,图1是本技术图像校正方法一实施例的流程示意图。具体而言,可以包括如下步骤:
25.步骤s11:确定至少两帧原始图像中的连通域。
26.至少两帧原始图像是拍摄设备扫描得到的,例如,至少两帧原始图像是拍摄设备先后扫描得到的。至少两帧原始图像可以是连续的,也可以是间隔的。拍摄设备是能够获得图像的设备。例如,拍摄设备包括但不限于是扫描笔、摄像头等。以拍摄设备为扫描笔为例,该扫描笔是便捷的扫描录入设备,其在扫描方向上,通过前端的摄像头扫描得到若干帧原始图像,从而组成的原始图像序列。由于握笔姿势的不同,扫描笔的笔身和被扫描平面之间会存在一定的倾斜角度,这就导致获取的原始图像可能存在较大的透视问题,即原始图像
中的字符等被扫描目标进入画面时和离开画面时的大小存在较大的变化,图像在扫描方向上的发生偏移,又或者原始图像存在偏移角度,即原始图像中的字符等被扫描目标可能存在角度上的偏移等,因此,需要对原始图像进行校正。
27.在图像中,最小的单位是像素。原始图像包括若干个像素点,如果像素点a与像素点b连通,像素点b与像素点c连通,则像素点a与像素点c连通。在视觉上看来,彼此连通的像素点形成了一个区域,而不连通的像素点形成了不同的区域,这样彼此连通点构成的集合,我们称为一个连通域。连通域可以是图像中具有相同或相近像素值且位置相邻的前景像素点组成的图像区域,而对连通域分析则是指将图像中的各个连通域找出并标记,因此,通过对至少两帧原始图像进行分析,可以确定至少两帧原始图像中的连通域,其中,分析和确定的方式不做具体限定。
28.步骤s12:基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场。
29.视场表征至少两帧原始图像在扫描方向上的偏移情况。原始图像由于存在较大的透视问题,即图像中的字符等被扫描目标进入画面时和离开画面时的大小存在较大的变化,从而在扫描方向上发生偏移。由于连通域能够反映原始图像中前景像素点组成的图像区域,也即是能够反映字符等被扫描目标在原始图像中的位置,从而可以通过对至少两帧原始图像中的连通域进行分析,确定至少两帧原始图像的视场。
30.利用图像跟踪的思想,基于至少两帧原始图像中的连通域,对连通域进行跟踪,并基于被跟踪的连通域,确定至少两帧原始图像的视场。当连通域左边界点、右边界点、上边界点、下边界点不在原始图像范围内时,可以结束对该连通域的跟踪过程,以防止基于不完整的连通域确定的视场出现在图像边界区域,引起视场确定错误或者不够准确。在一公开实施例中,在基于至少两帧原始图像中匹配的连通域,确定至少两帧原始图像的视场之前,可以检测原始图像中的连通域的第二边界点是否位于原始图像的边界区域上,第二边界点包括左边界点、右边界点、上边界点、下边界点中的至少一者;若是,则将连通域舍弃,从而保证确定视场的连通域在原始图像中是完整的。
31.步骤s13:基于视场,对原始图像进行校正。
32.确定至少两帧原始图像的视场后,即可基于该视场,对原始图像进行校正。在一实际场景中,为了快速对原始图像进行校正,可以基于视场对所有原始图像进行校正。在另一实际场景中,为了实时更新视场,更加灵活地对原始图像进行校正,在确定至少两帧原始图像的视场的预设周期时间后,可以定期获取新的至少两帧原始图像,并利用新的至少两帧原始图像重新执行确定至少两帧原始图像中的连通域以及基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场的步骤,从而在基于视场,对原始图像进行校正时,当前时间若处于实时更新视场前,则根据历史的视场对原始图像进行校正,当前时间若处于实时更新视场后,根据更新的视场对原始图像进行校正,因此,会持续跟踪和估计视场,避免扫描过程中由于扫描姿势变化造成的视场变化,避免校正错误。
33.上述方案,在拍摄设备扫描得到至少两帧原始图像后,可以确定至少两帧原始图像中的连通域,然后基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场,进而基于该视场对原始图像进行校正,故能够对图像进行校正,而且由于该视场表征至少两帧原始图像在扫描方向上的偏移情况,因此基于该视场对原始图像进行校正时,可以校正原始图像在扫描方向上的偏移,从而提高图像的质量。
34.连通域对于视场的确定格外重要。在另一实施例中,在确定至少两帧原始图像中的连通域时,对于各原始图像,基于原始图像的像素点聚类结果,确定原始图像的初始前景值;利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像;对原始图像对应的原始二值化图像进行连通域分析,得到所原始图像的连通域。由于原始图像的像素分布中,背景像素点的像素数一般明显大于前景像素点的像素数,因此可以利用像素值对原始图像的像素点进行颜色聚类,利用像素点聚类结果,来确定原始图像的初始前景值。在确定原始图像的初始前景值后,则可以利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像,由于二值化后的原始图像的灰度只有黑和白两个状态,且像素值为一/零刚好能够分别代表前景/背景,因此非常有利于连通域分析。原始图像中的前景(例如字符等被扫描目标)对应的像素点是前景像素点,而其他像素点是背景像素点,在原始二值化图像已经能能够表征前景图像区域和背景图像区域后,为了将前景提取出来,以便后续进行处理,对原始图像对应的原始二值化图像进行连通域分析,得到原始图像的连通域,且该连通域表征前景像素点组成的图像区域。因此,基于原始图像的像素点聚类结果,确定原始图像的初始前景值,从而有效利用原始图像的像素分布情况来确定初始前景值,可使初始前景值更加符合实际情况,提高准确性;然后,利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像,相较于直接设置阈值区分前景和背景,利用更加符合实际情况的初始前景值对原始图像进行二值化处理,使得原始二值化图像更加准确地区分前景和背景,从而对该原始二值化图像进行连通域分析后,得到的所原始图像的连通域也更加准确。
35.为了更加清楚地说明如何确定至少两帧原始图像中的连通域,请参阅图2,图2是本技术图像校正方法另一实施例步骤s11的流程示意图。具体而言,可以包括如下步骤:
36.步骤s111:基于对原始图像中各像素点的像素值的第一聚类结果,确定原始图像的初始背景值。
37.在确定原始图像的初始前景值时,可以进行两次聚类,第一次聚类先确定初始背景值,然后利用初始背景值进一步确定初始前景值。由于原始图像的像素分布中,背景像素点的像素数一般明显大于前景像素点的像素数,因此可以利用像素值对原始图像的全部像素点进行聚类,利用像素点聚类结果中像素数较多的像素值,来确定原始图像的初始背景值。当然,也可以对原始图像中预设数量的像素点的像素值的第一聚类结果,确定原始图像的初始背景值。在一公开实施例中,第一次聚类中,基于对原始图像中各像素点的像素值的第一聚类结果,确定原始图像的初始背景值时,可以先基于原始图像中各像素点的像素值,将原始图像的像素点聚类至若干第一类,然后选择像素数最大的第一类作为目标第一类,将目标第一类的类中心的像素值作为原始图像的背景像素值,因此,利用背景像素点的像素数一般明显大于前景像素点的像素数的图像像素分布特性,确定符合原始图像自身情况的初始背景值。聚类的方法可以是任意方法,例如k均值聚类等,在此不做具体限定。若干第一类可以是两个第一类、三个第一类等。为了更加有效地区分前景和背景,若干第一类为两个第一类,基于原始图像中各像素点的像素值,将原始图像的像素点聚类到两类,选择像素数更大的类的类中心的像素值作为原始图像的背景像素值。在一实际场景中,对原始图像中各像素点的像素值进行k均值聚类,聚类数为二,将原始图像的像素点聚类至两个第一类中,该两个第一类的类中心分别为c1、c2,该第一类的类中心的像素值可以是差距比较大的
像素值,两个第一类的像素数分别为n1、n2,当n2>n1时,认为c2更接近背景像素,从而选择像素数最大的第一类作为目标第一类,将目标第一类的类中心c2的像素值作为原始图像的背景像素值。
38.步骤s112:利用初始背景值、以及原始图像的局部区域中各像素点的像素值的第二聚类结果,确定原始图像的初始前景值。
39.多数情况下,原始图像的像素均呈现双峰分布,背景像素点的像素数要明显大于前景像素点的像素数,但在原始图像可能为各种颜色和复杂背景的情况下,原始图像的像素分布可能并不符合双峰分布特性,但原始图像的梯度分布对应的像素分布仍保持双峰分布特性,因此,利用初始背景值、以及原始图像的局部区域中各像素点的像素值的第二聚类结果,进一步确定原始图像的初始前景值,对于复杂的原始图像仍能够得到较好的初始前景值。
40.原始图像的局部区域可以根据需要设置,例如局部区域可以是前景和背景交界处附近的区域、原始图像的中心位置区域等。第二聚类结果可以是任意聚类方法获得的,包括但不限于k均值聚类。由于梯度较大的地方,通常是前景和背景相交的地方,因此可以通过分析梯度附近的像素分布,更加准确地获取初始前景值。例如一公开实施例中,在利用初始背景值、以及原始图像的局部区域中各像素点的像素值的第二聚类结果,确定原始图像的初始前景值时,可以通过如下步骤进行:第一步,确定原始图像中梯度满足预设梯度要求的第一像素点,并将原始图像中第一像素点的预设范围作为局部区域。其中,预设范围可以自定义设置,例如,预设范围可以是第一像素点及其上下左右像素点所在区域,以便将第一像素点及其四邻接关系的像素点作为第二像素点,或者预设范围也可以是第一像素点及其上下左右像素点、对角线位置的像素点所在区域,以便将第一像素点及其八邻接关系的像素点作为第二像素点,或者预设范围还可以是其他范围形式。原始图像的梯度可以是利用索贝尔算子等算法对原始图像进行提取得到,例如,获取y方向梯度图和x方向梯度图,基于y方向梯度图和x方向梯度图获取原始图像的像素分布情况。上述预设梯度要求也可以自定义设置,例如,预设梯度要求可以是梯度超过预设梯度值,或者梯度在预设梯度氛围内等。第二步,可以将局部区域内的第二像素点进行聚类,得到若干第二类。其中,若干第二类可以是两个第二类、三个第二类等,在此不做具体限定。第三步,选择类中心对应的差值最大的第二类作为目标第二类,将目标第二类的类中心的像素值作为原始图像的初始前景值,其中,类中心对应的差值为类中心的像素值与原始图像的初始背景值之间的差值。
41.承接步骤s111的实际场景,确定原始图像的初始背景值后,可以利用索贝尔算子提取原始图像的梯度,得到对应的原始图像梯度图,确定原始图像梯度图的梯度满足预设梯度要求的像素点位置,基于该像素点位置,在原始图像中确定对应的第一像素点,利用k均值聚类将第一像素点及其上下左右的像素点作为局部区域内的第二像素点进行聚类,得到两个第二类,类中心分别为c3、c4,对应的像素数即为n3、n4,获取类中心的像素值与原始图像的初始背景值之间的差值作为类中心对应的差值|c
3-c2|和|c
4-c2|,选择类中心对应的差值最大的第二类作为目标第二类,将目标第二类的类中心的像素值作为原始图像的初始前景值,也即是当|c
3-c2|》|c
4-c2|时,认为c3更接近前景,将c3作为原始图像的初始前景值。
42.当然,若原始图像比较简单,也可以仅进行步骤s111基于对原始图像中各像素点
的像素值的第一聚类结果,确定原始图像的初始背景值后,不用利用第二聚类结果确定原始图像的初始前景值,直接利用原始图像的初始背景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像。若原始图像比较复杂,则可以结合步骤s111和步骤s112确定更加准确的原始图像的初始前景值,以便后续利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像。
43.由此,在基于原始图像的像素点聚类结果,确定原始图像的初始前景值时,先基于对原始图像中各像素点的像素值的第一聚类结果,确定原始图像的初始背景值,然后利用初始背景值、以及原始图像的局部区域中各像素点的像素值的第二聚类结果,即可确定原始图像的初始前景值,因此,通过第一次聚类确定初始背景值,再进一步进行第二次聚类利用初始背景值确定初始前景值,使得初始前景值更加符合实际场景,尤其对于复杂的原始图像仍能够得到较好的初始前景值。
44.步骤s113:利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像。
45.初始前景值确定后,在一公开实施例中,可以将原始图像中像素值大于初始前景值的像素点二值化为一,将将原始图像中像素值小于或等于初始前景值的像素点二值化为零。在另一公开实施例中,利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像时,可以获取原始图像中各像素点的像素值与初始前景值的差值的绝对值,然后将原始图像中绝对值小于预设像素阈值的像素点二值化为一,将原始图像中绝对值大于或等于预设像素阈值的像素点二值化为零,得到原始图像对应的原始二值化图像,从而通过预设像素阈值的灵活设置,将与初始前景值附近的像素点作为前景,其他像素点作为背景。其中,预设像素阈值可以自定义设置,具体数值不做具体限定。
46.由于原始图像可能为各种颜色和复杂背景,直接传统的全局或局部二值化算法中没有考虑每个原始图像的不同性,没有分别对各个原始图像具体情况具体分析,而是直接用阈值进行二值化并不能满足精确的二值化需求,而且会存在较多的噪声,给后续处理带来困难。通过步骤s111至步骤s113,提出一种基于颜色聚类和连通域分析的自适应二值化算法,能够对各个原始图像具体情况具体分析,提升二值化处理效果,减少噪声。
47.步骤s114:对原始图像对应的原始二值化图像进行连通域分析,得到所原始图像的连通域。
48.对原始图像对应的原始二值化图像进行连通域分析时,连通域分析方法可以是各种实现方式,例如为基于行程的标记、基于轮廓的标记等,而连通域分析的算法可以是两遍扫描法、种子填充法等,在此不做具体限定。
49.背景像素点的像素数一般明显大于前景像素点的像素数,而占空比为各连通域的面积和与原始图像的面积之商,基于此,如果连通域分析正确,则原始二值化图像的占空比应该比较小,且前景对应的连通域是一个或多个小块面积而背景是大块面积,而取反二值化图像是对原始二值化图像取反,也即是将二值化为一的取反为零和二值化为零的取反为一,从而取反二值化图像刚好与原始二值化图像正好相反,占空比应该比较大,因此,如果连通域分析错误,例如将前景错当背景并将背景错当前景,则原始二值化图像的占空比应该比较大、取反二值化图像的占空比反而小。为了避免原始图像的连通域出现误判,减少误判的几率,可以对连通域进行校验,从原始二值化图像和取反二值化图像中,选择占空比较
小的二值化图像作为原始图像最终的二值化图像,并将其对应的连通域,作为原始图像的连通域。具体地,对原始图像对应的原始二值化图像进行连通域分析,得到原始图像的连通域时,可以对原始二值化图像取反,得到取反二值化图像;分别计算原始二值化图像和取反二值化图像的占空比,其中,占空比为各连通域的面积和与原始图像的面积之商;将占空比较小的二值化图像所对应的连通域,作为原始图像的连通域,因此,利用占空比过滤掉占空比较大的原始二值化图像,将对应的取反二值化图像的连通域作为原始图像的连通域。
50.通过上述方式,基于对原始图像中各像素点的像素值的第一聚类结果,确定原始图像的初始背景值,利用初始背景值、以及原始图像的局部区域中各像素点的像素值的第二聚类结果,确定原始图像的初始前景值,因此,通过第一次聚类确定初始背景值,再进一步进行第二次聚类利用初始背景值确定初始前景值,使得初始前景值更加符合实际场景,尤其对于复杂的原始图像仍能够得到较好的初始前景值;然后利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像,对原始图像对应的原始二值化图像进行连通域分析,得到所原始图像的连通域,提出一种基于颜色聚类和连通域分析的自适应二值化算法,能够对各个原始图像具体情况具体分析,提升二值化处理效果,减少噪声。
51.为了更加清楚地说明如何基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场,请参阅图3,图3是本技术图像校正方法再一实施例步骤s12的流程示意图。具体而言,可以包括如下步骤:
52.步骤s121:从至少两帧原始图像中查找出若干组匹配的连通域组。
53.原始图像中可能存在一个或多个被扫描目标,对应形成一个或多个连通域,因此,为了估计原始图像的视场,可以对连通域进行跟踪,发现至少两帧原始图像在扫描方向上的偏移情况。对于扫描得到的原始图像,相邻几帧的位移量通常不会很大,但是由于透视偏移问题,导致连通域进入原始图像和离开原始图像时可能存在大小变化,从而可以采用简单但有效的方案对连通域进行跟踪,确定原始图像在扫描方向上的偏移情况。匹配的连通域组可以是同一被扫描目标在至少两帧原始图像中的连通域形成的。
54.在一公开实施例中,在从至少两帧原始图像中查找出若干组匹配的连通域组时,可以依序将每帧原始图像作为当前图像,将当前图像中的至少一个连通域作为目标连通域;对于各目标连通域,在当前图像的相邻原始图像中的预设区域内,查找出与目标连通域匹配的连通域,从而实现对连通域进行跟踪。预设区域可以是基于目标连通域的位置确定的。在当前图像的相邻原始图像中的预设区域内,查找出与目标连通域匹配的连通域时,可以确定目标连通域的第一边界矩形的面积和相邻原始图像中的预设区域内各连通域对应的第二边界矩形的面积,然后计算第一边界矩形的面积与第一边界矩形的面积的交集和并集,得到交集与并集的商,并计算第一边界矩形的面积与第二边界矩形的面积的差,基于此,将商最大和/或差最小的第二边界矩形对应的连通域作为与目标连通域匹配的连通域,从而实现连通域的匹配。第一边界矩形和第二边界矩形的确定方式可以是四条经过连通域左边界点、右边界点、上边界点、下边界点且与原始图像边界平行的线段围成的。
55.预设区域内可以是整个相邻原始图像,预设区域内可以为相邻原始图像中与目标连通域对应的位置的预设位移量内。为了加快定位与目标连通域匹配的连通域,或者商最大和/或差最小的第二边界矩形对应的连通域有多个时,可以确定原始图像之间的位移偏
移量,进一步确定与目标连通域匹配的连通域。例如,在当前图像的相邻原始图像中的预设位置范围内,查找出与目标连通域匹配的连通域之前,可以确定当前图像的参考区域;在相邻原始图像中,搜索出与参考区域的像素相似度满足相似要求的关联区域;基于参考区域与关联区域之间的位移偏移量,确定预设位移量,因此,通过估计当前图像与相邻原始图像之间的大概位移偏移量,确定预设位移量,使得预设位移量更加准确,便于快速查找出与目标连通域匹配的连通域。当前图像的参考区域可以根据需要设置,为了加快搜索速度,参考区域不用太大,而为了保证参考区域内存在有效信息,参考区域不宜太小。例如,一般认为原始图像左边四分之一宽度区域范围往往连通域是完整的,且相邻原始图像中也会存在对应的连通域,因此,当前图像的参考区域可以是原始图像左边四分之一宽度区域范围。像素相似度满足相似要求可以是多种判断方式,例如,提取参考区域的图像特征直方图进行像素相似度计算,或者基于特征点匹配的方式进行像素相似度计算等,在此不做具体限定。位移偏移量可以是当前图像与相邻原始图像之间像素长度间隔,例如为十个像素长度,而预设位移量可以是像素长度或像素长度范围。在基于参考区域与关联区域之间的位移偏移量,确定预设位移量时,可以将位移偏移量作为预设位移量,例如位移偏移量和预设位移量为十个像素长度,也可以位移偏移量的预设位移偏移范围作为预设位移量,例如预设位移偏移范围为位移偏移量上下误差为两个像素长度,则预设位移量为八个像素长度至十二个像素长度之间。
56.步骤s122:基于每组连通域组的位置,形成连通域组对应的轨迹路径。
57.由于匹配的连通域在不同原始图像中会有大小变化和位置变化,因此基于每组连通域组的位置,形成连通域组对应的轨迹路径后,该轨迹路径可以表征拍摄设备在扫描得到原始图像时在扫描方向上的偏移情况。利用连通域组,连续跟踪多个连通域从进入原始图像到离开原始图像的移动路径,并对每条移动路径中记录的点利用直线拟合获取最终的轨迹路径。
58.在一公开实施例中,在基于每组连通域组的位置,形成连通域组对应的轨迹路径时,对于每组连通域组,将连通域组中的各连通域的至少一个第一边界点作为轨迹点,且该连通域的每个第一边界点对应一类的轨迹点;分别连接连通域组中的不同类轨迹点,得到连通域组的至少一条轨迹路径,从而同一类的轨迹点连接形成一条轨迹路径,因此,分别连接对应类的轨迹点,对连通域的位置变化进行跟踪,形成轨迹路径,实现对连通域的跟踪,便于后续确定视场。连通域的至少一个第一边界点可以包括连通域的上边界点和下边界点,从而保证连通域及其轨迹路径全部出现在原始图像内,避免连通域与原始图像边界重合导致轨迹路径出现在原始图像外引起的错误,进而更加准确地确定至少两帧原始图像在扫描方向上的偏移情况。
59.步骤s123:基于若干组连通域组对应的轨迹路径,确定视场。
60.基于若干组连通域组对应的轨迹路径,可以自由选择轨迹路径作为视场的视场路径。基于若干组连通域组对应的轨迹路径,确定视场时,可以选择一组连通域组对应的轨迹路径作为视场,也可以分别选择不同组连通域组对应的轨迹路径作为视场。在一公开实施例中,在基于若干组连通域组对应的轨迹路径,确定视场时,在若干组连通域组对应的轨迹路径中查找出两条视场路径,然后基于两条视场路径,确定视场,因此,视场由两条视场路径确定,能够清晰反映至少两帧原始图像在扫描方向上的偏移情况。
61.在一公开实施例中,在若干组连通域组对应的轨迹路径中查找出两条视场路径时,可以在每条轨迹路径中,分别确定对应的第一数量个第一路径点,其中,每条轨迹路径中对应的第一路径点的横坐标相同;然后基于各轨迹路径中第一数量个第一路径点的第一纵坐标,对应确定各轨迹路径的第二纵坐标;最后查找出第二纵坐标最大和最小的两条轨迹路径,以作为两条视场路径。第一数量可以是一个或多个均可。当第一数量为一个时,基于各轨迹路径中第一数量个第一路径点的第一纵坐标,对应确定各轨迹路径的第二纵坐标时,将第一纵坐标作为各轨迹路径的第二纵坐标即可,而当第一数量为多个时,基于各轨迹路径中第一数量个第一路径点的第一纵坐标,对应确定各轨迹路径的第二纵坐标时,可以将任意一个第一路径点的第一纵坐标作为轨迹路径的第二纵坐标,可以将多个第一路径点的第一纵坐标中的最大值作为轨迹路径的第二纵坐标,还可以将多个第一路径点的第一纵坐标的平均值作为轨迹路径的第二纵坐标等。因此,为了避免路径不稳定带来的误差,会获取多个连通域组对应的轨迹路径,并从若干组连通域组对应的轨迹路径中,利用所有轨迹路径的纵坐标对轨迹路径进行筛选。
62.为了防止连通域在纵坐标方向上过于集中带来的误差,会判断两条视场路径之间的纵坐标方向上的偏差,若纵坐标方向上的偏差小于一定幅度(例如,帧图像高度的1/4),会继续进行连通域的跟踪过程,直到满足幅度限制条件。具体如一公开实施例中,在基于两条视场路径,确定视场之前,可以在每条视场路径中,分别确定对应的第二数量个第二路径点,其中,每条视场路径中对应的第二路径点的横坐标相同;然后基于各视场路径中第二数量个第二路径点的第三纵坐标,确定视场路径的第四纵坐标;若两条视场路径的第四纵坐标间的差值低于预设阈值,则获取新的至少两帧原始图像,并利用新的至少两帧原始图像重新执行确定至少两帧原始图像中的连通域以及基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场的步骤。视场路径中对应的第二路径点的横坐标也可自定义设置,例如是原始图像宽度的一半对应的横坐标等。第二数量可以是一个或多个均可。当第二数量为一个时,基于各视场路径中第二数量个第二路径点的第三纵坐标,确定视场路径的第四纵坐标时,可以将第三纵坐标作为视场路径的第四纵坐标即可,而当第二数量为多个时,基于各视场路径中第二数量个第二路径点的第三纵坐标,确定视场路径的第四纵坐标时,可以将任意一个第二路径点的第三纵坐标作为视场路径的第四纵坐标,可以将多个第二路径点的第三纵坐标的最大值作为视场路径的第四纵坐标等。
63.通过上述方式,通过对连通域进行跟踪匹配,查找出若干组匹配的连通域组,以基于每组连通域组的位置,形成连通域组对应的轨迹路径,进而有效确定视场。
64.为了更加清楚地说明如何基于视场,对原始图像进行校正,请参阅图4,图4是本技术图像校正方法再一实施例步骤s13的流程示意图。具体而言,可以包括如下步骤:
65.步骤s131:在原始图像中,确定经过视场的视场路径的若干原始参考点,并为每个原始参考点确定对应的目标参考点。
66.原始参考点可以是经过视场的视场路径任意像素点,且其数量可以自由选择。
67.在一公开实施例中,视场包括两条视场路径,在原始图像中,确定经过视场的视场路径的若干原始参考点时,可以将两条视场路径与原始图像的两条边界线之间的四个第一交点作为原始参考点,从而快速确定原始参考点;也可以将两条视场路径与两条目标偏移线之间的四个第二交点作为原始参考点,从而同时考虑至少两帧原始图像在扫描方向上的
偏移情况和偏移角度。两条目标偏移线为分别经过四个第一交点的四条偏移线中,被两条视场路径限制的线段部分均位于原始图像中的两条偏移线。偏移线的偏移角度为原始图像的偏移角度。偏移线的偏移角度或原始图像的偏移角度的获取方式可以是任意获取方式,例如一实际场景中,利用现有最小外接矩形确定算法获取原始图像中连通域的最小外接矩形,获取该连通域的第一边界矩形,由于第一边界矩形是四条经过连通域左边界点、右边界点、上边界点、下边界点且与原始图像边界平行的线段围成的,而最小外接矩形是贴近连通域的最小矩形,从而比较最小外接矩形和第一边界矩形,得到连通域的偏移角度,与之类似,获取多帧原始图像的多个连通域的偏移角度后,求取个偏移角度的平均值,将该平均值作为原始图像的偏移角度。为了防止仅考虑一个连通域的部分笔画时带来的误差,确定原始图像的偏移角度的连通域需为完整的连通域。具体地,可以检测原始图像中的连通域的第二边界点是否位于原始图像的边界区域上,第二边界点包括左边界点、右边界点、上边界点、下边界点中的至少一者;若是,则表明连通域不是完整地出现在原始图像中,将连通域舍弃。偏移线的偏移角度或原始图像的偏移角度的获取时间可以是基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场的过程中。
68.在一公开实施例中,视场可以包括上视场路径和下视场路径,若干原始参考点可以包括经过上视场路径的两个第一原始参考点和经过下视场路径的两个第二原始参考点,为每个原始参考点确定对应的目标参考点时,可以将两个第一原始参考点的纵坐标的最小值,作为两个第一原始参考点对应的两个目标参考点的纵坐标,以及,将两个第二原始参考点的纵坐标的最大值,作为两个第二原始参考点对应的两个目标参考点的纵坐标;然后将预设横坐标值作为位于左侧的第一原始参考点和第二原始参考点对应的两个目标参考点的横坐标,以及,将目标宽度值作为位于右侧的第一原始参考点和第二原始参考点对应的两个目标参考点的横坐标。其中,目标宽度值为原始图像的图像宽度与预设值间的差值,且该预设值可以自定义设置,例如一、二等等。预设横坐标值可以是零、一等,也可以是靠近原始图像左边界的其他横坐标值。因此,在视场包括上视场路径和下视场路径的情况下,通过分别比较上视场路径和下视场路径上的原始参考点的纵坐标,纠正至少两帧原始图像在扫描方向上的偏移情况,通过将预设横坐标值作为位于左侧的第一原始参考点和第二原始参考点对应的两个目标参考点的横坐标,以及,将目标宽度值作为位于右侧的第一原始参考点和第二原始参考点对应的两个目标参考点的横坐标,纠正至少两帧原始图像的偏移角度。
69.步骤s132:基于原始参考点及对应的目标参考点,确定原始图像的形变场。
70.形变场表征原始图像中的像素点的坐标偏移量。在一公开实施例中,基于原始参考点及对应的目标参考点,确定原始图像的形变场时,可以将每组对应的原始参考点和目标参考点作为匹配点对,利用匹配点对的位置确定形变矩阵,然后基于形变矩阵,确定原始图像的形变场,从而有效获取原始图像中的像素点的坐标偏移量。将每组对应的原始参考点和目标参考点作为匹配点对,利用匹配点对的位置确定形变矩阵时,可以利用dlt(直接线性变换,direct linear transformation)算法计算出匹配点对的形变矩阵。基于形变矩阵,确定原始图像的形变场的方法可以是任意能够确定原始图像中的像素点的坐标偏移量的方法。
71.步骤s133:基于形变场,对原始图像进行校正。
72.由于形变场能够确定原始图像中的像素点的坐标偏移量,因此可以基于形变场,对原始图像进行校正,有效缓解原始图像存在的透视问题。基于校正后的原始图像进行后续各种图像操作,能获得更准确的结果。
73.通过上述方式,在原始图像中,确定经过视场的视场路径的若干原始参考点,并为每个原始参考点确定对应的目标参考点,然后基于原始参考点及对应的目标参考点,确定原始图像的形变场,最后基于形变场,对原始图像进行校正,能够准确确定原始图像中的像素点的坐标偏移量。
74.请参阅图5,图5是本技术图像拼接方法一实施例的流程示意图。具体而言,可以包括如下步骤:
75.步骤s51:获取原始图像序列。
76.原始图像序列中的各原始图像是拍摄设备扫描得到的。其中,拍摄设备可以是扫描笔等各种能够扫描图像的设备。以扫描笔为例,扫描笔是一款便携的扫描录入设备,可以方便快捷的通过前端的摄像头将需要的内容扫描到电子设备中,并同时或者后续完成内容的识别和翻译等工作。
77.步骤s52:利用图像校正方法对各原始图像进行校正,以得到经校正图像序列。
78.由于握笔姿势的不同,扫描笔笔身通常和被扫描平面之间会存在一定的倾斜角度,这就导致了获取的原始图像序列可能存在较大的透视问题,即字符等被扫描目标进入画面时和离开画面时的大小存在较大的变化,而帧之间帧偏移量的计算通常是基于图像匹配进行的,这就导致了后续帧偏移量计算的难度增加,错误率增大,因此,利用上述任一图像校正方法实施例对各原始图像进行校正,以得到经校正图像序列,考虑了扫描姿势带来的透视形变问题,很好的规避被扫描目标在图像内移动过程中的大小变化问题,得到纠正原始图像在扫描方向上的偏移情况的经校正图像序列。
79.步骤s53:确定经校正图像序列的帧偏移量。
80.若原始图像序列未经校正,同一个被扫描目标,在刚进入画面和即将离开画面时的大小发生了明显的变化,且当被扫描目标大小变化较大时,会造成提取出的特征分布差异较大,这使得后续计算帧偏移量的时候容易出现错误,从而导致帧偏移量计算不准确,造成拼接错误。而本案由于经校正图像序列已经纠正原始图像在扫描方向上的偏移情况,基于这样的经校正图像序列确定的帧偏移量更加准确。当然,确定经校正图像序列的帧偏移量可以是任意实现方式。例如,依序将经校正图像序列中的每帧经校正图像作为当前经校正图像,在当前经校正图像中切片的方式,提取当前经校正图像的一个子图区域,并利用滑窗匹配的方式,在当前经校正图像的上一帧经校正图像中搜索与子图区域匹配的区域位置,其中,匹配的方式可以是利用整个子图区域提取图像特征进行相似度计算,也可以是基于特征点匹配的方式,通过遍历上一帧经校正图像找出相似度最高的位置作为匹配结果,前后帧中匹配上的区域的坐标差值即为帧偏移量。图像特征例如为直方图特征,lbp(局部二值模式,local binary pattern)特征、或hog(方向梯度直方图,histogram of oriented gradients)特征等均可,而特征点的确定可以是harris角点,sift(尺度不变特征变换,scale-invariant feature transform),surf(加速稳健特征,speeded-up robust features)等。
81.步骤s54:基于帧偏移量,将经校正图像序列拼接得到目标图像。
82.由于帧偏移量是基于经校正图像序列确定的,因此,帧偏移量更加准确,从而基于更加准确的帧偏移量,将经校正图像序列拼接得到目标图像,可以移除或减轻图像由于透视形变造成的影响,实现帧图像的正确拼接。
83.在基于帧偏移量,将经校正图像序列拼接得到目标图像之后,还可以对目标图像进行文本识别,得到目标文本,因此,在校正图像序列的基础上计算图像帧之间的帧偏移量,基于帧偏移量,将经校正图像序列拼接得到目标图像后,可以对目标图像进行后续的处理,将图像转为文本。
84.通过上述方式,获取原始图像序列后,利用图像校正方法对各原始图像进行校正,以得到经校正图像序列,该经校正图像序列考虑了扫描姿势带来的透视形变问题,很好的规避被扫描目标在移动过程中的大小变化问题,纠正原始图像在扫描方向上的偏移情况,然后确定经校正图像序列的帧偏移量,并基于帧偏移量,将经校正图像序列拼接得到目标图像,实现帧图像的正确拼接。
85.请参阅图6,图6是本技术图像校正装置60一实施例的框架示意图。图像校正装置60包括第一确定模块61、第二确定模块62、校正模块63。第一确定模块61,用于确定至少两帧原始图像中的连通域,其中,至少两帧原始图像是拍摄设备扫描得到的;第二确定模块62,用于基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场,其中,视场表征至少两帧原始图像在扫描方向上的偏移情况;校正模块63,用于基于视场,对原始图像进行校正。
86.上述方案,在拍摄设备扫描得到至少两帧原始图像后,第一确定模块61可以确定至少两帧原始图像中的连通域,然后基于至少两帧原始图像中的连通域,第二确定模块62确定至少两帧原始图像的视场,进而校正模块63基于该视场对原始图像进行校正,故能够对图像进行校正,而且由于该视场表征至少两帧原始图像在扫描方向上的偏移情况,因此校正模块63基于该视场对原始图像进行校正时,可以校正原始图像在扫描方向上的偏移,从而提高图像的质量。
87.在一些公开实施例中,第二确定模块62用于基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场时,还用于从至少两帧原始图像中查找出若干组匹配的连通域组;基于每组连通域组的位置,形成连通域组对应的轨迹路径;基于若干组连通域组对应的轨迹路径,确定视场。
88.因此,通过对连通域进行跟踪匹配,查找出若干组匹配的连通域组,以基于每组连通域组的位置,形成连通域组对应的轨迹路径,进而有效确定视场。
89.在一些公开实施例中,第二确定模块62用于从至少两帧原始图像中查找出若干组匹配的连通域组时,还用于依序将每帧原始图像作为当前图像,将当前图像中的至少一个连通域作为目标连通域;对于各目标连通域,在当前图像的相邻原始图像中的预设区域内,查找出与目标连通域匹配的连通域,其中,预设区域是基于目标连通域的位置确定的;和/或,第二确定模块62用于基于每组连通域组的位置,形成连通域组对应的轨迹路径时,还用于对于每组连通域组,将连通域组中的各连通域的至少一个第一边界点作为轨迹点,其中,连通域的每个第一边界点对应一类的轨迹点;分别连接连通域组中的不同类轨迹点,得到连通域组的至少一条轨迹路径,其中,同一类的轨迹点连接形成一条轨迹路径。
90.因此,依序将每帧原始图像作为当前图像,将当前图像中的至少一个连通域作为
目标连通域;对于各目标连通域,在当前图像的相邻原始图像中的预设区域内,查找出与目标连通域匹配的连通域,从而实现对连通域进行跟踪。另外,形成连通域组对应的轨迹路径时,分别连接对应类的轨迹点,对连通域的位置变化进行跟踪,形成轨迹路径,实现对连通域的跟踪,便于后续确定视场。
91.在一些公开实施例中,连通域的至少一个第一边界点包括连通域的上边界点和下边界点;预设区域内为相邻原始图像中与目标连通域对应的位置的预设位移量内,在第二确定模块62用于当前图像的相邻原始图像中的预设位置范围内,查找出与目标连通域匹配的连通域之前,还用于确定当前图像的参考区域;在相邻原始图像中,搜索出与参考区域的像素相似度满足相似要求的关联区域;基于参考区域与关联区域之间的位移偏移量,确定预设位移量。
92.因此,连通域的至少一个第一边界点可以包括连通域的上边界点和下边界点,从而保证连通域及其轨迹路径全部出现在原始图像内,避免连通域与原始图像边界重合导致轨迹路径出现在原始图像外引起的错误,进而更加准确地确定至少两帧原始图像在扫描方向上的偏移情况。另外,可通过估计当前图像与相邻原始图像之间的大概位移偏移量,确定预设位移量,使得预设位移量更加准确,便于快速查找出与目标连通域匹配的连通域。
93.在一些公开实施例中,第二确定模块62用于基于若干组连通域组对应的轨迹路径,确定视场时,还用于在若干组连通域组对应的轨迹路径中查找出两条视场路径;基于两条视场路径,确定视场。
94.因此,视场由两条视场路径确定,能够清晰反映至少两帧原始图像在扫描方向上的偏移情况。
95.在一些公开实施例中,第二确定模块62用于在若干组连通域组对应的轨迹路径中查找出两条视场路径时,还用于在每条轨迹路径中,分别确定对应的第一数量个第一路径点,其中,每条轨迹路径中对应的第一路径点的横坐标相同;基于各轨迹路径中第一数量个第一路径点的第一纵坐标,对应确定各轨迹路径的第二纵坐标;查找出第二纵坐标最大和最小的两条轨迹路径,以作为两条视场路径;和/或,第二确定模块62用于在基于两条视场路径,确定视场之前,还用于在每条视场路径中,分别确定对应的第二数量个第二路径点,其中,每条视场路径中对应的第二路径点的横坐标相同;基于各视场路径中第二数量个第二路径点的第三纵坐标,确定视场路径的第四纵坐标;若两条视场路径的第四纵坐标间的差值低于预设阈值,则获取新的至少两帧原始图像,并利用新的至少两帧原始图像重新执行确定至少两帧原始图像中的连通域以及基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场的步骤。
96.因此,为了避免路径不稳定带来的误差,会获取多个连通域组对应的轨迹路径,并从若干组连通域组对应的轨迹路径中,利用所有轨迹路径的纵坐标对轨迹路径进行筛选。另外,为了防止连通域在纵坐标方向上过于集中带来的误差,会判断两条视场路径之间的纵坐标方向上的幅度偏差,若两条视场路径的第四纵坐标间的差值低于预设阈值,会继续进行连通域的跟踪过程,直到满足条件为止。
97.在一些公开实施例中,在第二确定模块62用于基于至少两帧原始图像中匹配的连通域,确定至少两帧原始图像的视场之前,还用于检测原始图像中的连通域的第二边界点是否位于原始图像的边界区域上,第二边界点包括左边界点、右边界点、上边界点、下边界
点中的至少一者;若是,则将连通域舍弃。
98.因此,防止基于不完整的连通域确定的视场出现在图像边界区域,引起视场确定错误或者不够准确,保证确定视场的连通域在原始图像中是完整的。
99.在一些公开实施例中,校正模块63用于基于视场,对原始图像进行校正时,还用于在原始图像中,确定经过视场的视场路径的若干原始参考点,并为每个原始参考点确定对应的目标参考点;基于原始参考点及对应的目标参考点,确定原始图像的形变场,其中,形变场表征原始图像中的像素点的坐标偏移量;基于形变场,对原始图像进行校正。
100.因此,在原始图像中,确定经过视场的视场路径的若干原始参考点,并为每个原始参考点确定对应的目标参考点,然后基于原始参考点及对应的目标参考点,确定原始图像的形变场,最后基于形变场,对原始图像进行校正,能够准确确定原始图像中的像素点的坐标偏移量,并有效缓解原始图像存在的透视问题。
101.在一些公开实施例中,视场包括两条视场路径,校正模块63用于在原始图像中,确定经过视场的视场路径的若干原始参考点时,还用于将两条视场路径与原始图像的两条边界线之间的四个第一交点作为原始参考点;或者,将两条视场路径与两条目标偏移线之间的四个第二交点作为原始参考点,其中,两条目标偏移线为分别经过四个第一交点的四条偏移线中,被两条视场路径限制的线段部分均位于原始图像中的两条偏移线,偏移线的偏移角度为原始图像的偏移角度;和/或,视场包括上视场路径和下视场路径,若干原始参考点包括经过上视场路径的两个第一原始参考点和经过下视场路径的两个第二原始参考点,校正模块63用于为每个原始参考点确定对应的目标参考点时,还用于将两个第一原始参考点的纵坐标的最小值,作为两个第一原始参考点对应的两个目标参考点的纵坐标,以及,将两个第二原始参考点的纵坐标的最大值,作为两个第二原始参考点对应的两个目标参考点的纵坐标;将预设横坐标值作为位于左侧的第一原始参考点和第二原始参考点对应的两个目标参考点的横坐标,以及,将目标宽度值作为位于右侧的第一原始参考点和第二原始参考点对应的两个目标参考点的横坐标,其中,目标宽度值为原始图像的图像宽度与预设值间的差值。
102.因此,可以将两条视场路径与原始图像的两条边界线之间的四个第一交点作为原始参考点,从而快速确定原始参考点;也可以将两条视场路径与两条目标偏移线之间的四个第二交点作为原始参考点,从而同时考虑至少两帧原始图像在扫描方向上的偏移情况和偏移角度。另外,在视场包括上视场路径和下视场路径的情况下,通过分别比较上视场路径和下视场路径上的原始参考点的纵坐标,纠正至少两帧原始图像在扫描方向上的偏移情况,通过将预设横坐标值作为位于左侧的第一原始参考点和第二原始参考点对应的两个目标参考点的横坐标,以及,将目标宽度值作为位于右侧的第一原始参考点和第二原始参考点对应的两个目标参考点的横坐标,纠正至少两帧原始图像的偏移角度。
103.在一些公开实施例中,校正模块63用于基于原始参考点及对应的目标参考点,确定原始图像的形变场时,还用于将每组对应的原始参考点和目标参考点作为匹配点对,利用匹配点对的位置确定形变矩阵;基于形变矩阵,确定原始图像的形变场。
104.因此,利用匹配点对的位置确定形变矩阵,再基于该形变矩阵,确定原始图像的形变场,可以有效获取原始图像中的像素点的坐标偏移量。
105.在一些公开实施例中,第一确定模块61用于确定至少两帧原始图像中的连通域
时,还用于对于各原始图像,基于原始图像的像素点聚类结果,确定原始图像的初始前景值;利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像;对原始图像对应的原始二值化图像进行连通域分析,得到所原始图像的连通域。
106.因此,基于原始图像的像素点聚类结果,确定原始图像的初始前景值,从而有效利用原始图像的像素分布情况来确定初始前景值,可使初始前景值更加符合实际情况,提高准确性;然后,利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像,相较于直接设置阈值区分前景和背景,利用更加符合实际情况的初始前景值对原始图像进行二值化处理,使得原始二值化图像更加准确地区分前景和背景,从而对该原始二值化图像进行连通域分析后,得到的所原始图像的连通域也更加准确。
107.在一些公开实施例中,第一确定模块61用于基于原始图像的像素点聚类结果,确定原始图像的初始前景值时,还用于基于对原始图像中各像素点的像素值的第一聚类结果,确定原始图像的初始背景值;利用初始背景值、以及原始图像的局部区域中各像素点的像素值的第二聚类结果,确定原始图像的初始前景值;第一确定模块61用于对原始图像对应的原始二值化图像进行连通域分析,得到原始图像的连通域时,还用于对原始二值化图像取反,得到取反二值化图像;分别计算原始二值化图像和取反二值化图像的占空比,其中,占空比为各连通域的面积和与原始图像的面积之商;将占空比较小的二值化图像所对应的连通域,作为原始图像的连通域。
108.因此,利用背景像素点的像素数一般明显大于前景像素点的像素数的图像像素分布特性,确定符合原始图像自身情况的初始背景值,再利用初始背景值、以及原始图像的局部区域中各像素点的像素值的第二聚类结果,进一步确定原始图像的初始前景值,使得初始前景值更加符合实际场景,尤其对于复杂的原始图像仍能够得到较好的初始前景值。另外,为了避免原始图像的连通域出现误判,减少误判的几率,可以对连通域进行校验,从原始二值化图像和取反二值化图像中,选择占空比较小的二值化图像作为原始图像最终的二值化图像,并将其对应的连通域,作为原始图像的连通域。
109.在一些公开实施例中,第一确定模块61用于基于对原始图像中各像素点的像素值的第一聚类结果,确定原始图像的初始背景值时,还用于基于原始图像中各像素点的像素值,将原始图像的像素点聚类至若干第一类;选择像素数最大的第一类作为目标第一类,将目标第一类的类中心的像素值作为原始图像的背景像素值;第一确定模块61用于利用初始背景值、以及原始图像的局部区域中各像素点的像素值的第二聚类结果,确定原始图像的初始前景值时,还用于确定原始图像中梯度满足预设梯度要求的第一像素点,并将原始图像中第一像素点的预设范围作为局部区域;将局部区域内的第二像素点进行聚类,得到若干第二类;选择类中心对应的差值最大的第二类作为目标第二类,将目标第二类的类中心的像素值作为原始图像的初始前景值,其中,类中心对应的差值为类中心的像素值与原始图像的初始背景值之间的差值;和/或,第一确定模块61用于利用原始图像的初始前景值对原始图像进行二值化处理,得到原始图像对应的原始二值化图像时,还用于获取原始图像中各像素点的像素值与初始前景值的差值的绝对值;将原始图像中绝对值小于预设像素阈值的像素点二值化为一,将原始图像中绝对值大于或等于预设像素阈值的像素点二值化为零,得到原始图像对应的原始二值化图像。
110.因此,利用背景像素点的像素数一般明显大于前景像素点的像素数的图像像素分
布特性,确定符合原始图像自身情况的初始背景值,将与初始背景值存在更大差距的像素值作为初始前景值,使得初始前景值的确定更加准确,并且利用该初始前景值和预设像素阈值,将与初始前景值附近的像素点作为前景,其他像素点作为背景,提出一种基于颜色聚类和连通域分析的自适应二值化算法,能够对各个原始图像具体情况具体分析,提升二值化处理效果,减少噪声。
111.请参阅图7,图7是本技术图像拼接装置70一实施例的框架示意图。图像拼接装置70包括获取模块71、图像校正模块72、帧偏移量确定模块73、拼接模块74。获取模块71,用于获取原始图像序列,其中,原始图像序列中的各原始图像是拍摄设备扫描得到的;图像校正模块72,用于利用上诉任一图像校正方法实施例对各原始图像进行校正,以得到经校正图像序列;帧偏移量确定模块73,用于确定经校正图像序列的帧偏移量;拼接模块74,用于基于帧偏移量,将经校正图像序列拼接得到目标图像。
112.上述方案,获取模块71获取原始图像序列后,图像校正模块72利用图像校正方法对各原始图像进行校正,以得到经校正图像序列,该经校正图像序列考虑了扫描姿势带来的透视形变问题,很好的规避被扫描目标在移动过程中的大小变化问题,纠正原始图像在扫描方向上的偏移情况,然后帧偏移量确定模块73确定经校正图像序列的帧偏移量,并帧偏移量确定模块73基于帧偏移量,将经校正图像序列拼接得到目标图像,实现帧图像的正确拼接。
113.在一些公开实施例中,拍摄设备为扫描笔;和/或,拼接模块74用于在基于帧偏移量,将经校正图像序列拼接得到目标图像之后,还用于对目标图像进行文本识别,得到目标文本。
114.因此,在校正图像序列的基础上计算帧之间的帧偏移量,基于帧偏移量,将经校正图像序列拼接得到目标图像后,进行后续的处理,将图像转为文本。
115.请参阅图8,图8是本技术电子设备80一实施例的框架示意图。电子设备80包括相互耦接的存储器81和处理器82,存储器81中存储有程序指令,处理器82用于执行程序指令以实现上述任一图像校正方法实施例中的步骤,和/或,实现上述任一图像拼接方法实施例中的步骤。具体地,电子设备80可以包括但不限于:台式计算机、笔记本电脑、服务器、手机、平板电脑等等,在此不做限定。
116.具体而言,处理器82用于控制其自身以及存储器81以实现上述任一图像校正方法实施例中的步骤,和/或,实现上述任一图像拼接方法实施例中的步骤。处理器82还可以称为cpu(central processing unit,中央处理单元)。处理器82可能是一种集成电路芯片,具有信号的处理能力。处理器82还可以是通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器82可以由集成电路芯片共同实现。
117.上述方案,在拍摄设备扫描得到至少两帧原始图像后,可以确定至少两帧原始图像中的连通域,然后基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场,进而基于该视场对原始图像进行校正,故能够对图像进行校正,而且由于该视场表征至少两帧原始图像在扫描方向上的偏移情况,因此基于该视场对原始图像进行校正时,可以校正
原始图像在扫描方向上的偏移,从而提高图像的质量。
118.请参阅图9,图9是本技术计算机可读存储介质90一实施例的框架示意图。计算机可读存储介质90存储有能够被处理器运行的程序指令91,程序指令91用于实现上述任一图像校正方法实施例中的步骤,和/或,实现上述任一图像拼接方法实施例中的步骤。
119.上述方案,在拍摄设备扫描得到至少两帧原始图像后,可以确定至少两帧原始图像中的连通域,然后基于至少两帧原始图像中的连通域,确定至少两帧原始图像的视场,进而基于该视场对原始图像进行校正,故能够对图像进行校正,而且由于该视场表征至少两帧原始图像在扫描方向上的偏移情况,因此基于该视场对原始图像进行校正时,可以校正原始图像在扫描方向上的偏移,从而提高图像的质量。
120.在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
121.上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
122.在本技术所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
123.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
124.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
125.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1