一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

图像处理方法、装置、设备及存储介质与流程

2022-07-09 22:10:24 来源:中国专利 TAG:


1.本技术属于文件检验技术领域,具体涉及一种图像处理方法、装置、设备及存储介质。


背景技术:

2.文件的真伪可以通过鉴别不同文件是否由同一台打印机打印来识别。
3.在相关技术中,一般通过打印机在使用过程中,遗留在打印文件表面的打印痕迹,例如,感光鼓的打印特征等,鉴别文件是否由同一台打印机打印。由于打印机的种类繁多,组成较为复杂,不同打印机遗留在不同文件表面的打印痕迹可能相同,导致文件真伪鉴别的准确度较低。


技术实现要素:

4.本技术涉及一种图像处理方法、装置、设备及存储介质,通过单位暗记图像对文件进行鉴别,可以提高文件真伪鉴别的准确度。
5.第一方面,本技术实施例提供一种图像处理方法,包括:
6.获取第一文件的暗记图像,所述暗记图像中包括多个单位暗记图像,所述单位暗记图像中包括多个暗记点;
7.确定所述单位暗记图像中所述暗记点之间的单位距离,在所述单位暗记图像的一行或者一列中,任意两个所述暗记点之间的距离为所述单位距离的整数倍;
8.在所述暗记图像中,确定横向相邻的两个单位暗记图像之间的第一水平偏移距离、以及纵向相邻的两个单位暗记图像之间的第一垂直偏移距离;
9.根据所述单位距离、所述第一水平偏移距离和所述第一垂直偏移距离,在所述暗记图像中提取所述单位暗记图像。
10.在一种可能的实施方式中,确定所述单位暗记图像中的所述暗记点之间的单位距离,包括:
11.确定所述暗记图像中多个线段的线段信息,所述多个线段为所述暗记图像中任意两个暗记点连接得到的线段,所述线段信息包括线段长度和线段角度,所述线段角度为所述线段与预设水平线之间的角度;
12.根据所述多个线段的线段信息,确定所述单位暗记图像中的所述暗记点之间的单位距离。
13.在一种可能的实施方式中,根据所述多个线段的线段信息,确定所述单位暗记图像中的所述暗记点之间的单位距离,包括:
14.根据所述多个线段的线段角度,在所述多个线段中确定多个第一线段,所述第一线段的线段角度在预设范围内;
15.根据所述多个第一线段的线段长度,将所述多个第一线段划分为多个线段集合;
16.根据所述线段集合中线段的线段长度,确定所述线段集合对应的线段长度均值;
17.将所述多个线段集合对应的线段长度均值中的最小值确定为所述单位距离。
18.在一种可能的实施方式中,在所述暗记图像中,确定横向相邻的两个单位暗记图像之间的第一水平偏移距离、以及纵向相邻的两个单位暗记图像之间的第一垂直偏移距离;包括:
19.在所述暗记图像中确定多个子图像;
20.确定任意两个子图像之间的第二水平偏移距离和第二垂直偏移距离,得到多个第二水平偏移距离和多个第二垂直偏移距离;
21.根据多个所述第二水平偏移距离确定所述第一水平偏移距离,以及根据多个所述第二垂直偏移距离确定所述第一垂直偏移距离。
22.在一种可能的实施方式中,根据多个所述第二水平偏移距离确定所述第一水平偏移距离,以及根据多个所述第二垂直偏移距离确定所述第一垂直偏移距离;包括:
23.确定任意两个子图像的匹配度;
24.根据所述匹配度,在多个所述第二水平偏移距离中确定多个第三水平偏移距离,在多个所述第二垂直偏移距离中确定多个第三垂直偏移距离,所述第三水平偏移距离以及所述第三垂直偏移距离对应的两个子图像之间的匹配度大于或等于预设阈值;
25.根据多个所述第三水平偏移距离确定所述第一水平偏移距离,以及根据多个所述第三垂直偏移距离确定所述第一垂直偏移距离。
26.在一种可能的实施方式中,根据所述单位距离、所述第一水平偏移距离和所述第一垂直偏移距离,在所述暗记图像中提取所述单位暗记图像,包括:
27.根据所述单位距离、所述第一水平偏移距离和所述第一垂直偏移距离,在所述暗记图像中确定多个待选单位暗记图像;
28.根据所述多个待选单位暗记图像中暗记点的坐标,确定所述多个待选单位暗记图像的边界;
29.根据所述单位距离,以及所述多个待选单位暗记图像的边界,确定所述多个待选单位暗记图像中各暗记点位置中出现暗记点的频率;
30.根据所述各暗记点位置中出现暗记点的频率,在所述暗记图像中提取所述单位暗记图像。
31.在一种可能的实施方式中,根据所述各暗记点位置中出现暗记点的频率,在所述暗记图像中提取所述单位暗记图像;包括:
32.根据所述各暗记点位置中出现暗记点的频率,在所述多个暗记点位置中确定多个目标暗记点位置,所述目标暗记点位置中出现暗记点的频率大于或等于预设阈值;
33.根据所述目标暗记点位置,生成所述单位暗记图像。
34.第二方面,本技术实施例提供一种图像处理装置,包括获取模块、第一确定模块、第二确定模块和提取模块,其中,
35.所述获取模块用于,获取第一文件的暗记图像,所述暗记图像中包括多个单位暗记图像,所述单位暗记图像中包括多个暗记点;
36.所述第一确定模块用于,确定所述单位暗记图像中所述暗记点之间的单位距离,在所述单位暗记图像的一行或者一列中,任意两个所述暗记点之间的距离为所述单位距离的整数倍;
37.所述第二确定模块用于,在所述暗记图像中,确定横向相邻的两个单位暗记图像之间的第一水平偏移距离、以及纵向相邻的两个单位暗记图像之间的第一垂直偏移距离;
38.所述提取模块用于,根据所述单位距离、所述第一水平偏移距离和所述第一垂直偏移距离,在所述暗记图像中提取所述单位暗记图像。
39.在一种可能的实施方式中,所述第一确定模块具体用于:
40.确定所述暗记图像中多个线段的线段信息,所述多个线段为所述暗记图像中任意两个暗记点连接得到的线段,所述线段信息包括线段长度和线段角度,所述线段角度为所述线段与预设水平线之间的角度;
41.根据所述多个线段的线段信息,确定所述单位暗记图像中的所述暗记点之间的单位距离。
42.在一种可能的实施方式中,所述第一确定模块具体用于:
43.根据所述多个线段的线段角度,在所述多个线段中确定多个第一线段,所述第一线段的线段角度在预设范围内;
44.根据所述多个第一线段的线段长度,将所述多个第一线段划分为多个线段集合;
45.根据所述线段集合中线段的线段长度,确定所述线段集合对应的线段长度均值;
46.将所述多个线段集合对应的线段长度均值中的最小值确定为所述单位距离。
47.在一种可能的实施方式中,所述第二确定模块具体用于:
48.在所述暗记图像中确定多个子图像;
49.确定任意两个子图像之间的第二水平偏移距离和第二垂直偏移距离,得到多个第二水平偏移距离和多个第二垂直偏移距离;
50.根据多个所述第二水平偏移距离确定所述第一水平偏移距离,以及根据多个所述第二垂直偏移距离确定所述第一垂直偏移距离。
51.在一种可能的实施方式中,所述第二确定模块具体用于:
52.确定任意两个子图像的匹配度;
53.根据所述匹配度,在多个所述第二水平偏移距离中确定多个第三水平偏移距离,在多个所述第二垂直偏移距离中确定多个第三垂直偏移距离,所述第三水平偏移距离以及所述第三垂直偏移距离对应的两个子图像之间的匹配度大于或等于预设阈值;
54.根据多个所述第三水平偏移距离确定所述第一水平偏移距离,以及根据多个所述第三垂直偏移距离确定所述第一垂直偏移距离。
55.在一种可能的实施方式中,所述提取模块具体用于:
56.根据所述单位距离、所述第一水平偏移距离和所述第一垂直偏移距离,在所述暗记图像中确定多个待选单位暗记图像;
57.根据所述多个待选单位暗记图像中暗记点的坐标,确定所述多个待选单位暗记图像的边界;
58.根据所述单位距离,以及所述多个待选单位暗记图像的边界,确定所述多个待选单位暗记图像中各暗记点位置中出现暗记点的频率;
59.根据所述各暗记点位置中出现暗记点的频率,在所述暗记图像中提取所述单位暗记图像。
60.在一种可能的实施方式中,所述提取模块具体用于:
61.根据所述各暗记点位置中出现暗记点的频率,在所述多个暗记点位置中确定多个目标暗记点位置,所述目标暗记点位置中出现暗记点的频率大于或等于预设阈值;
62.根据所述目标暗记点位置,生成所述单位暗记图像。
63.第三方面,本技术实施例提供了一种图像处理设备,包括:处理器、存储器;
64.所述存储器存储计算机执行指令;
65.所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如第一方面所述的图像处理方法。
66.第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当所述计算机执行指令被处理器执行时用于实现第一方面所述的图像处理方法。
67.第五方面,本技术实施例提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面所述的图像处理方法。
68.本技术实施例提供的一种图像处理方法、装置、设备及存储介质,获取第一文件的暗记图像,暗记图像中包括多个单位暗记图像,单位暗记图像中包括多个暗记点;确定单位暗记图像中暗记点之间的单位距离,在单位暗记图像的一行或者一列中,任意两个暗记点之间的距离为单位距离的整数倍;在暗记图像中,确定横向相邻的两个单位暗记图像之间的第一水平偏移距离、以及纵向相邻的两个单位暗记图像之间的第一垂直偏移距离;根据单位距离、第一水平偏移距离和第一垂直偏移距离,在暗记图像中提取单位暗记图像。通过提取的单位暗记图像,可以有效鉴别文件是否来自同一台打印机,提升了文件真伪鉴别的准确度。
附图说明
69.图1为本技术实施例提供的一种应用场景示意图;
70.图2为本技术实施例提供的一种图像处理方法的流程示意图;
71.图3为本技术实施例提供的暗记图像的示意图一;
72.图4为本技术实施例提供的单位暗记图像的示意图;
73.图5为本技术实施例提供的暗记图像的示意图二;
74.图6为本技术实施例提供的确定单位暗记图像中暗记点之间的单位距离的流程示意图;
75.图7为本技术实施例提供的第一水平偏移距离和第一垂直偏移距离确定的流程示意图;
76.图8为本技术实施例提供的提取单位暗记图像的流程示意图;
77.图9为本技术实施例提供的图像处理装置的结构示意图;
78.图10为本技术实施例提供的一种图像处理设备的结构示意图。
具体实施方式
79.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员
在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
80.为了更清楚的说明本技术,下面首先对本技术涉及的相关术语进行介绍。
81.暗记特征
82.暗记特征是由暗记点通过点阵排列组成的单位暗记图像,是打印机在印刷文件时留在文件中的特殊标识。
83.文件中的暗记特征在日常光照下不会显现,需要使用425nm~455nm的蓝光照射,才能在文件中显现。
84.一台打印机对应一个暗记特征。
85.为了文字描述前后的一致性,在本技术中,采用单位暗记图像描述暗记特征。
86.为了便于理解,下面结合图1,对本技术实施例所适用的应用场景进行说明。
87.图1为本技术实施例提供的一种应用场景示意图。请参见图1,包括打印机a和两份文件,分别为:文件1和文件2。其中,文件1是由打印机a打印出来的文件,文件2是由未知打印机打印出来的文件。
88.为了识别文件2是否是由打印机a打印,可以分别提取文件1和文件2中的单位暗记图像,然后将提取的两个单位暗记图像进行对比,若两个单位暗记图像相同,则可以判定文件2是由打印机a打印出来的。
89.示例性的,文件1和文件2均可以是学位证,其中,可以确定的是,文件1是真实的,由学校打印机a打印出来的学位证;为了鉴别文件2是否真实,可以通过比较文件1和文件2中的单位暗记图像是否相同来确定。
90.在相关技术中,一般通过打印机在使用过程中,遗留在打印文件表面的打印痕迹,例如,感光鼓及其周围部件等的打印特征,鉴别文件是否由同一台打印机打印。由于打印机的种类繁多,组成较为复杂,不同打印机遗留在不同文件表面的打印痕迹可能相同,导致文件真伪鉴别的准确度较低。
91.为了解决上述技术问题,本技术提供了一种在文件中准确提取单位暗记图像的方法,通过提取得到的单位暗记图像,可以有效鉴别文件是否来自同一台打印机,提升了文件真伪鉴别的准确度。
92.下面,通过具体实施例对本技术所示的技术方案进行详细说明。需要说明的是,下面几个实施例可以独立存在,也可以相互结合,对于相同或显示的内容,在不同的实施例中不再重复说明。
93.图2为本技术实施例提供的一种图像处理方法的流程示意图。请参见图2,该方法包括:
94.s201、获取第一文件的暗记图像,暗记图像中包括多个单位暗记图像,单位暗记图像中包括多个暗记点。
95.本技术的执行主体可以是电脑、手机等可以进行图像分析处理的终端设备,也可以是设置在上述终端设备中的图像处理装置,该图像处理装置可以通过软件实现,也可以通过软件和硬件的结合实现。
96.第一文件可以是彩色激光打印文件,也可以是复印机打印的文件,还可以是复印机复制的文件。
97.暗记图像是指将第一文件置于425nm~455nm的蓝光照射下显示出来的图像。
98.单位暗记图像中的暗记点是按照预设的顺序排列的。
99.暗记点可以是圆形的、椭圆形的,暗记点的大小是毫米量级的,例如,若暗记点是圆形的,则暗记点的直径可以为0.1mm、0.2mm;若暗记点是椭圆形的,则暗记点的尺寸可以为0.2mm
×
0.1mm。
100.为了便于理解,下面,结合图3对暗记图像、单位暗记图像以及暗记点之间的关系进行说明。
101.图3为本技术实施例提供的暗记图像的示意图一。请参见图3,一个暗记图像中的包括7个规律排列的单位暗记图像,每一个单位暗记图像是由47个规律排列的暗记点组成。
102.s202、确定单位暗记图像中暗记点之间的单位距离。
103.单位距离是指在单位暗记图像的一行或者一列中,相邻暗记点之间的距离的最小值。
104.一个单位暗记图像中通常只有一个单位距离。
105.在单位暗记图像的一行或者一列中,任意两个暗记点之间的距离为单位距离的整数倍。
106.为了便于理解,下面,结合图4对单位距离进行说明。
107.图4为本技术实施例提供的单位暗记图像的示意图。请参见图4,以暗记点为圆形为例。暗记图像中横向相邻的暗记点b与暗记点c之间的距离为单位距离d1,纵向相邻的暗记点a与暗记点b之间的距离为单位距离d1。
108.s203、在暗记图像中,确定横向相邻的两个单位暗记图像之间的第一水平偏移距离、以及纵向相邻的两个单位暗记图像之间的第一垂直偏移距离。
109.横向相邻的两个单位暗记图像之间的第一水平偏移距离是指横向相邻的两个单位暗记图像的中心点之间的水平距离。
110.纵向相邻的两个单位暗记图像之间的第一垂直偏移距离是指纵向相邻的两个单位暗记图像的中心点之间的垂直距离。
111.为了便于理解,下面,结合图5对第一水平偏移距离和第一垂直偏移距离进行说明。
112.图5为本技术实施例提供的暗记图像的示意图二。请参见图5,包括4个单位暗记图像,分别命名为单位暗记图像1、单位暗记图像2、单位暗记图像3和单位暗记图像4。其中,单位暗记图像1和单位暗记图像2是横向相邻的两个单位暗记图像,单位暗记图像1和单位暗记图像2之间的距离d3即为第一水平偏移距离;单位暗记图像1和单位暗记图像3是纵向相邻的两个单位暗记图像,单位暗记图像1和单位暗记图像3之间的距离d4即为第一垂直偏移距离。
113.s204、根据单位距离、第一水平偏移距离和第一垂直偏移距离,在暗记图像中提取单位暗记图像。
114.根据单位距离、第一水平偏移距离和第一垂直偏移距离,可以在暗记图像中确定多个单位暗记图像的边界,然后根据单位暗记图像的边界提取单位暗记图像。
115.在图2所示的实施例中,先获取第一文件的暗记图像,暗记图像中包括多个单位暗记图像,单位暗记图像中包括多个暗记点;然后确定单位暗记图像中暗记点之间的单位距离;以及在暗记图像中,确定横向相邻的两个单位暗记图像之间的第一水平偏移距离、和纵
向相邻的两个单位暗记图像之间的第一垂直偏移距离;最后根据单位距离、第一水平偏移距离和第一垂直偏移距离,在暗记图像中提取单位暗记图像。本技术实施例提供的方法可以准确的从第一文件的暗记图像中提取单位暗记图像,通过提取的单位暗记图像可以有效鉴别文件是否来自同一台打印机,提升了文件真伪鉴别的准确度。
116.在上述任意实施例的基础上,下面,结合图6-图9所示的实施例,对上述图像处理方法的各个步骤进行详细说明。
117.图6为本技术实施例提供的确定单位暗记图像中暗记点之间的单位距离的流程示意图。请参见图6,包括:
118.s601、确定暗记图像中多个线段的线段信息,多个线段为暗记图像中任意两个暗记点连接得到的线段,线段信息包括线段长度和线段角度。
119.线段长度可以通过两个暗记点的坐标计算得到。
120.例如,暗记点pi=(xi,yi)和暗记点pj=(xj,yj)组成线段len
ij
,len
ij
的计算公式为:
121.线段角度可以是线段与预设水平线之间的角度。
122.线段角度可以通过以下方式确定:
123.首先计算两点之间的高度与宽度的正切值,接着使用反正切函数计算出弧度值(采用的函数是arctan),再将弧度转化为角度(采用的函数是rad2deg),计算公式为:
[0124][0125]
最后将计算得到的角度处理为锐角:
[0126][0127]
s602、根据多个线段的线段角度,在多个线段中确定多个第一线段。
[0128]
第一线段的线段角度在预设范围内,预设范围可以为[0
°
,3
°
]∪[87
°
,90
°
]。
[0129]
多个线段中的线段角度为[0
°
,90
°
],然后从多个线段中选出水平和垂直的线段组成第一线段,水平线段的角度范围为[0
°
,3
°
],垂直线段的角度范围为[87
°
,90
°
]。
[0130]
s603、根据多个第一线段的线段长度,将多个第一线段划分为多个线段集合。
[0131]
可以通过k-means聚类算法对线段长度进行聚类,得到多个线段的集合,再计算每个集合中线段长度的均方差,根据均方差确定正确的线段集合。
[0132]
s604、根据线段集合中线段的线段长度,确定线段集合对应的线段长度均值。
[0133]
可以先按照线段集合中线段数量的多少对线段集合进行排序,选取排列在前几个的线段集合,计算线段集合中线段长度的均值。
[0134]
s605、将多个线段集合对应的线段长度均值中的最小值确定为单位距离。
[0135]
例如,选取了3个线段集合,分别为集合a、集合b和集合c,其中集合a中线段长度均值为6像素,集合b中线段长度的均值为3像素,集合c中线段长度的均值为9像素;则可以确认单位距离为3像素。
[0136]
在图6所示的实施例中,确定暗记图像中多个线段的线段信息,多个线段为暗记图像中任意两个暗记点连接得到的线段,线段信息包括线段长度和线段角度;根据多个线段的线段角度,在多个线段中确定多个第一线段;根据多个第一线段的线段长度,将多个第一线段划分为多个线段集合;根据线段集合中线段的线段长度,确定线段集合对应的线段长度均值;最后将多个线段集合对应的线段长度均值中的最小值确定为单位距离。通过上述方法,可以准确确定单位暗记点之间的单位距离。
[0137]
图7为本技术实施例提供的第一水平偏移距离和第一垂直偏移距离确定的流程示意图。请参见图7,包括:
[0138]
s701、在暗记图像中确定多个子图像。
[0139]
可以以暗记图像中任意一个暗记点为圆心,以r为半径构成子图像。
[0140]
r一般可以设置为100像素。
[0141]
一张暗记图像中有多少个暗记点,则可以生成多少个子图像。例如,一张暗记图像中有255个暗记点,则可以生成255个子图像。
[0142]
s702、确定任意两个子图像之间的第二水平偏移距离和第二垂直偏移距离,得到多个第二水平偏移距离和多个第二垂直偏移距离。
[0143]
任意两个子图像之间的第二水平偏移距离是指任意两个子图像的圆心之间的水平偏移距离,第二垂直偏移距离是指任意两个子图像的圆心之间的垂直偏移距离。
[0144]
s703、确定任意两个子图像的匹配度。
[0145]
对于任意的两个节点pa和pb,生成它们的子图gi,i∈{a,b},则两个子图的匹配度为:
[0146][0147]
其中,m
vaibj
表示图a以点v
ai
为基准点并且图b点以v
bj
为基准点时两个子图匹配度,可以表示为:
[0148][0149]
其中,v
aibj
表示两个子图分别以v
ai
和v
bj
为基准点,匹配的节点对集,|v
x
|为集合元素的个数,v
aibj
可以表示为:
[0150][0151]
其中,α和β是判断两个节点横坐标和纵坐标是否匹配的阈值,一般设置为5个像素。
[0152]
s704、根据匹配度,在多个第二水平偏移距离中确定多个第三水平偏移距离,在多个第二垂直偏移距离中确定多个第三垂直偏移距离。
[0153]
第三水平偏移距离以及第三垂直偏移距离对应的两个子图像之间的匹配度大于或等于预设阈值。
[0154]
可以通过以下方式确定第三水平偏移距离和第三垂直偏移距离:
[0155]
将所有匹配度按照从大到小的顺序进行排列,然后将前10%的匹配度对应的第二水平偏移距离确定为多个第三水平偏移距离,将前10%的匹配度对应的第二垂直偏移距离
确定为多个第三垂直偏移距离。
[0156]
任意两个子图像可以确定出一个匹配度、一个水平偏移距离和第一垂直偏移距离。匹配度对应的水平偏移距离是指匹配度和水平偏移距离是通过相同的两个子图像计算得到的。
[0157]
s705、根据多个第三水平偏移距离确定第一水平偏移距离,以及根据多个第三垂直偏移距离确定第一垂直偏移距离。
[0158]
可以通过以下方式确定第一水平偏移距离:
[0159]
根据多个第三水平偏移距离,生成第三水平偏移距离的直方图,直方图的特征峰的距离等于第一水平偏移距离。
[0160]
第一垂直偏移距离的确定方式可以参见第一水平偏移距离的确定方式。
[0161]
在图7所示的实施例中,在暗记图像中确定多个子图像;确定任意两个子图像之间的第二水平偏移距离和第二垂直偏移距离,得到多个第二水平偏移距离和多个第二垂直偏移距离;确定任意两个子图像的匹配度;根据匹配度,在多个第二水平偏移距离中确定多个第三水平偏移距离,在多个第二垂直偏移距离中确定多个第三垂直偏移距离;根据多个第三水平偏移距离确定第一水平偏移距离,以及根据多个第三垂直偏移距离确定第一垂直偏移距离。通过上述方法,可以准确,快速的确定单位暗记图像之间的第一水平偏移距离和第一垂直偏移距离。
[0162]
图8为本技术实施例提供的提取单位暗记图像的流程示意图。请参见图8,包括:
[0163]
s801、根据单位距离、第一水平偏移距离和第一垂直偏移距离,在暗记图像中确定多个待选单位暗记图像。
[0164]
在暗记图像中,先对所有的点进行编号,初始状态时,每一个暗记点都属于不同的类别。
[0165]
针对水平方向的两个暗记点,若两个暗记点的距离不超过第一水平偏移距离,并且距离为单位距离的两倍以上,则可以将两个暗记点连接起来,并将两个暗记点更新为相同的类别。针对垂直方向的两个暗记点,若两个暗记点的距离不超过第一垂直偏移距离,并且距离为单位距离的两倍以上,则可以将两个暗记点连接起来,并将两个暗记点更新为相同的类别。
[0166]
更新的原则是:确定两个暗记点所属类别中暗记点的数量,将所属类别中暗记点的数量少的类别更新为另一个暗记点的类别。
[0167]
经过无数次的归类,可以在暗记图像中确定多个待选单位暗记图像。待选单位暗记图像中的所有暗记点的类别相同。
[0168]
s802、根据多个待选单位暗记图像中暗记点的坐标,确定多个待选单位暗记图像的边界。
[0169]
针对任意一个单位暗记图像,可以根据单位暗记图像中所有暗记点的坐标,可以确定出单位暗记点的4条边界,根据4条边界,可以确定单位暗记图像的高度和宽度。
[0170]
统计暗记图像中所有单位暗记图像的高度,去除其中的异常值,再对剩余的高度求取平均值,得到平均高度;统计暗记图像中所有单位暗记图像的宽度,去除其中的异常值,再对剩余的宽度求取平均值,得到平均宽度。
[0171]
平均高度和平均宽度组成单位暗记图像的边界。
[0172]
s803、根据单位距离,以及多个待选单位暗记图像的边界,确定多个待选单位暗记图像中各暗记点位置中出现暗记点的频率。
[0173]
暗记点的频率是由暗记点位置出现暗记点的次数与待选单位暗记图像个数的比值。
[0174]
在暗记图像中,显现出来的暗记点可以是真实的暗记点,也可以是噪声点,通过统计所有待选单位暗记图像中各暗记点位置中出现暗记点的频率可以确定暗记点是否为真实的暗记点(目标暗记点)。
[0175]
s804、根据各暗记点位置中出现暗记点的频率,在多个暗记点位置中确定多个目标暗记点位置,目标暗记点位置中出现暗记点的频率大于或等于预设阈值。
[0176]
根据所有待选单位暗记图像中各暗记点位置出现暗记点的频率,可以确定各暗记点位置出现的是目标暗记点还是噪声点。
[0177]
在确定了目标暗记点和噪声点后,可以对所有待选单位暗记图像中的各暗记点的位置进行补足或者删除。
[0178]
s805、根据目标暗记点位置,生成单位暗记图像。
[0179]
单位暗记图像与待选单位暗记图像的边界相同,单位暗记图像中的暗记点的数量和位置可能与待选单位暗记图像中的数量和位置不同。
[0180]
在图8所示的实施例中,根据单位距离、第一水平偏移距离和第一垂直偏移距离,在暗记图像中确定多个待选单位暗记图像;根据多个待选单位暗记图像中暗记点的坐标,确定多个待选单位暗记图像的边界;根据单位距离,以及多个待选单位暗记图像的边界,确定多个待选单位暗记图像中各暗记点位置中出现暗记点的频率;根据各暗记点位置中出现暗记点的频率,在多个暗记点位置中确定多个目标暗记点位置,目标暗记点位置中出现暗记点的频率大于或等于预设阈值;根据目标暗记点位置,生成单位暗记图像。通过上述方法,可以准确,快速的从暗记图像中提取单位暗记图像。
[0181]
在上述任意实施例的基础上,下面,通过具体的示例对图像处理方法的流程进行详细说明。
[0182]
步骤1,对暗记图像上所有的点进行编号
[0183]
预先对暗记图像的所有点分别设置不同的标签,点的个数表示为n。初始状态认为每一个点都属于不同的类别,对于暗记图像上的点可以表示为{pi=(xi,yi}|i=0,1,

,n}。
[0184]
步骤2,对暗记图像上的所有线段进行编号
[0185]
按照编号依次得到每个点,并获得这个点和它之后的每个点间的距离和角度,这些所有的线段组成的线段集表示为line
all
={(pi,pj,len
ij
,ang
ij
)|i≠j and i,j=0,1,

,n},其中pi和pj为暗记图像上任意两个点,len
ij
为pi和pj之间的长度,ang
ij
为pi和pj之间的角度(角度为锐角)。对于任意两个点pi=(xi,yi)和pj=(xj,yj),它们之间的距离和角度计算如下:
[0186]
步骤2-1,计算两个点之间的距离:
[0187]
计算两点之间的距离采用的是欧氏距离,计算公式为:
[0188]
[0189]
步骤2-2,计算两个点之间的角度:
[0190]
计算两点之间的角度,首先计算两点之间的高度与宽度的正切值,接着使用反正切函数计算出弧度值(采用的函数是arctan),再将弧度转化为角度(采用的函数是rad2deg),计算公式为:
[0191][0192]
最后将角度处理为锐角可以表示为:
[0193][0194]
步骤3,计算暗记图像的单位距离
[0195]
步骤3-1,通过角度筛选出水平垂直的线段
[0196]
通过角度筛选得到线段集line
all
中的那些水平和竖直的线段组成的线段集line
h-v
,筛选垂直线段使用的角度阈值为[87,90],筛选水平线段使用的角度阈值为[0,3],line
h-v
可以表示为:
[0197]
line
h-v
={(pi,pj,len
ij
,ang
ij
)|i≠j and i,j=0,1,

,n and ang
ij
∈{[0,3]∪[87,90]}}
[0198]
步骤3-2,通过k-means聚类算法分析水平和垂直的线段的长度
[0199]
k-means聚类算法的输入为待分析的数据和预先设置的类别数c,输出为每个数据对应的类别,对聚类的类别数从1到线段集线段个数|line
h-v
|(|line
h-v
|为集合元素的个数)依次分析,可以表示为:
[0200][0201]
其中k为k-means函数,indi为每个数据聚类后对应的类别编号,为line
h-v
线段集中每个线段的长度组成的集合
[0202]
步骤3-3,对于每个类别数c计算聚类后的均方差
[0203]
对于每个类别数c聚类后的均方差可以表示为:
[0204][0205]
其中,dev是计算方差
[0206]
步骤3-4,通过确定拐点找到刚好聚类正确的情况
[0207]
通过分析聚类类别数c从1类增加到|line
h-v
|类的均方差的变化,在拐点处就是刚好聚类正确的情况,假设拐点处类别数为cb,均方差为拐点前一个点处类别数为ca,均方差为拐点后一个点处类别数为cc,均方差为则可以根据下式判断是否到达拐点:
[0208][0209]
通过实验比值的阈值设置为5。当类别数c从1增加到|line
h-v
|,依次计算上式的值,当值第一次小于等于5时,就认为已经是拐点了
[0210]
步骤3-5,对聚类正确的情况进行分析得到暗记图像的单位距离
[0211]
由于单位距离的线段是占多数的,可以对每个类别按照线段的数量进行排序,然后取前几个类别的线段,平均值最小的类别就是单位距离所在的类别,这样就得到了暗记图像中单位距离的线段,将这些线段的长度的均值作为这个暗记图像的单位距离d
std

[0212]
步骤4,计算暗记图像中单位暗记图像的第一水平偏移距离d
hps
与第一垂直偏移距离d
vps
[0213]
使用基于图的匹配的重复性度量算法计算暗记图像的第一水平偏移距离d
hps
与第一垂直偏移距离d
vps
,基于图的匹配的重复性度量算法如下所示:
[0214]
步骤4-1,对每个节点构建子图像
[0215]
对于暗记图像上任意一点pi=(xi,yi),为该点生成子图像gi={pj,len
ij
≤r},pi的子图像是暗记图像上所有与pi的距离不超过预先设置的半径r的点构成的(r设置为100像素),一张暗记图像有多少个点,就生成多少个子图像,得到所有的子图像后,通过计算所有子图像两两之间的匹配度,每一对匹配都返回一组匹配参数,一个水平平移值t
x
和一个垂直平移值ty以及两个子图的匹配度q,这个匹配度用于选择生成统计数据的最佳匹配,因为匹配度更高的匹配会带来更高程度的鲁棒性。
[0216]
步骤4-2,匹配度的计算
[0217]
对于任意的两个节点pa和pb,生成它们的子图gi,i∈{a,b},则两个子图的匹配度为:
[0218][0219]
其中,表示图a以点v
ai
为基准点并且图b点以v
bi
为基准点时两个子图匹配度,可以表示为:
[0220][0221]
其中,v
aibj
表示两个子图分别以v
ai
和v
bj
为基准点,匹配的节点对集,|
·
|为集合元素的个数,v
aibj
可以表示为:
[0222][0223]
其中,α和β是判断两个节点横坐标和纵坐标是否匹配的阈值,一般设置为5个像素。
[0224]
步骤4-3,对所有子图的匹配度排序
[0225]
通过计算所有子图的匹配度,然后对所有的匹配度进行排序,统计匹配度前10%的匹配的t
x
和ty来计算d
hps
和d
vps
。如果单位暗记图像具有一定的水平模式分隔距离,则得到的水平平移值很可能是d
hps
的倍数。使用几次迭代的搜索,生成平移值的直方图,该直方图的特征峰的距离大约等于d
hps
。d
vps
和d
hps
的计算过程是一样的。
[0226]
步骤5,暗记点分类
[0227]
通过基于图的匹配的重复性度量算法,得到了第一水平偏移距离d
hps
与第一垂直偏移距离d
vps
,再结合暗记图像的单位距离d
std
,就可以将那些距离不超过d
hps
和d
vps
,距离为单位距离的两倍以上并且两点方向为垂直或者水平的两点连接起来,并更新它们的类别为相同的类别。更新的规则为:对于任意两个不属于同一类的顶点,如果两点的垂直距离不超过暗记图像的d
vps
并且线段为垂直方向或者两点的水平距离不超过d
hps
并且线段为水平方向,再根据两个点所在类别的点的数量多少来更新点的类别,将所在类别点的数量少的那个点类别更新为另一个点的类别。当暗记图像中属于一个单位暗记图像的暗记点被归为一类和一些噪声点单独作为一类时,通过暗记点个数阈值分别将状态信息为噪声点的那些类别的暗记点提取出来,这些类别的暗记点就对应单位暗记图像。
[0228]
步骤6,单位暗记图像的补全与优化
[0229]
通过统计频率,将那些频率小于阈值的点当作噪声点删除,有些单位暗记图像中会缺失一些暗记点,也可以得到补全。
[0230]
步骤6-1,得到单位暗记图像四个边界两端的顶点
[0231]
对于暗记图像中分好类的所有单位暗记图像点集,选择任意一个单位暗记图像点集,统计这个单位暗记图像点集所有点的坐标,求得四个边界上两端的点的坐标,如果四条边都至少有两个点,则一共8个点,如果某些边只有一个点,则少于8个点,对于只有一个点的那些边,则按照它们的对边的两个点的偏移量构造一个新的坐标(如果对边的点个数为1,则按照相邻边的两个点的偏移),按照这个步骤,最后求出来8个坐标,分别是上下左右四个方向的两端的顶点。
[0232]
步骤6-2,找到单位暗记图像的模式框
[0233]
对于每个边界的两个顶点,这两个点就可以构成一条边,而四个边界就可以构造四条边,这四条边相交所包含的区域就是当前单位暗记图像的模式框。
[0234]
步骤6-3,得到基本模式框的宽度和高度
[0235]
通过左边界两个点和上边界两个点求得当前单位暗记图像框左上顶点的坐标,通过右边界两个点和下边界两个点求得当前单位暗记图像框右下顶点的坐标,再通过右下顶点的坐标和左边界两个点的坐标,就可以求得当前单位暗记图像框的宽度,通过右下顶点的坐标和边界两个点的坐标,就可以求得当前单位暗记图像框的高度,计算出所有单位暗记图像的大小后去除这些单位暗记图像框宽度和高度的异常值,再取平均,就得到这个暗记图像所对应的基本模式框的宽度width和高度height。
[0236]
步骤6-4,基于基本模式框构造频率数组
[0237]
有了标准单位暗记图像框的宽度和高度以及暗记图像的单位距离d
st
d,就可以计算出基本模式的暗记点分布的行数row和列数col,从而初始化一个二维数组frequency[row][col]以记录暗记点出现的频率,初始化所有元素为0。
[0238]
步骤6-5,分析所有的单位暗记图像更新频率数组
[0239]
接下来就是分析所有的单位暗记图像以更新数组frequency,对于一个单位暗记图像所有暗记点坐标,得到一个暗记点pi的坐标(xi,yi),计算暗记点pi与当前单位暗记图像左上顶点的位移与单位距离的比值,然后将频率数组对应的元素加1。通过统计频率生成基本模式后,就得到当前暗记图像对应的基本模式的暗记点频率数组,通过预设的阈值,如
果频率小于阈值,则这个点是噪声点,将这个位置元素设为0,否则将这个位置元素设为1,最终得到一个由0和1组成的数组,为1的位置则是暗记点,这也就是这个暗记图像的基本模式对应的01矩阵。
[0240]
一种暗记图像对应一种单位暗记图像,一种单位暗记图像对应一个01矩阵,由于不同型号的打印机对应不同的单位暗记图像,01矩阵也可以唯一的对应一种型号打印机。最后将所有提取的01矩阵作为数据库,以便后续新的待检验的打印输出进行比较分析,判断出所属打印机型号。
[0241]
本技术实施例提供的方法可以准确,快速的从暗记图像中提取单位暗记图像。提取出来的单位暗记图像可以有效鉴别文件是否来自同一台打印机,提升了文件真伪鉴别的准确度。
[0242]
图9为本技术实施例提供的图像处理装置的结构示意图。请参见图9,该图像处理装置10可以包括:获取模块11、第一确定模块12、第二确定模块13和提取模块14,其中,
[0243]
所述获取模块11用于,获取第一文件的暗记图像,所述暗记图像中包括多个单位暗记图像,所述单位暗记图像中包括多个暗记点;
[0244]
所述第一确定模块12用于,确定所述单位暗记图像中所述暗记点之间的单位距离,在所述单位暗记图像的一行或者一列中,任意两个所述暗记点之间的距离为所述单位距离的整数倍;
[0245]
所述第二确定模块13用于,在所述暗记图像中,确定横向相邻的两个单位暗记图像之间的第一水平偏移距离、以及纵向相邻的两个单位暗记图像之间的第一垂直偏移距离;
[0246]
所述提取模块14用于,根据所述单位距离、所述第一水平偏移距离和所述第一垂直偏移距离,在所述暗记图像中提取所述单位暗记图像。
[0247]
在一种可能的实施方式中,所述第一确定模块12具体用于:
[0248]
确定所述暗记图像中多个线段的线段信息,所述多个线段为所述暗记图像中任意两个暗记点连接得到的线段,所述线段信息包括线段长度和线段角度,所述线段角度为所述线段与预设水平线之间的角度;
[0249]
根据所述多个线段的线段信息,确定所述单位暗记图像中的所述暗记点之间的单位距离。
[0250]
在一种可能的实施方式中,所述第一确定模块12具体用于:
[0251]
根据所述多个线段的线段角度,在所述多个线段中确定多个第一线段,所述第一线段的线段角度在预设范围内;
[0252]
根据所述多个第一线段的线段长度,将所述多个第一线段划分为多个线段集合;
[0253]
根据所述线段集合中线段的线段长度,确定所述线段集合对应的线段长度均值;
[0254]
将所述多个线段集合对应的线段长度均值中的最小值确定为所述单位距离。
[0255]
在一种可能的实施方式中,所述第二确定模块13具体用于:
[0256]
在所述暗记图像中确定多个子图像;
[0257]
确定任意两个子图像之间的第二水平偏移距离和第二垂直偏移距离,得到多个第二水平偏移距离和多个第二垂直偏移距离;
[0258]
根据多个所述第二水平偏移距离确定所述第一水平偏移距离,以及根据多个所述
第二垂直偏移距离确定所述第一垂直偏移距离。
[0259]
在一种可能的实施方式中,所述第二确定模块13具体用于:
[0260]
确定任意两个子图像的匹配度;
[0261]
根据所述匹配度,在多个所述第二水平偏移距离中确定多个第三水平偏移距离,在多个所述第二垂直偏移距离中确定多个第三垂直偏移距离,所述第三水平偏移距离以及所述第三垂直偏移距离对应的两个子图像之间的匹配度大于或等于预设阈值;
[0262]
根据多个所述第三水平偏移距离确定所述第一水平偏移距离,以及根据多个所述第三垂直偏移距离确定所述第一垂直偏移距离。
[0263]
在一种可能的实施方式中,所述提取模块14具体用于:
[0264]
根据所述单位距离、所述第一水平偏移距离和所述第一垂直偏移距离,在所述暗记图像中确定多个待选单位暗记图像;
[0265]
根据所述多个待选单位暗记图像中暗记点的坐标,确定所述多个待选单位暗记图像的边界;
[0266]
根据所述单位距离,以及所述多个待选单位暗记图像的边界,确定所述多个待选单位暗记图像中各暗记点位置中出现暗记点的频率;
[0267]
根据所述各暗记点位置中出现暗记点的频率,在所述暗记图像中提取所述单位暗记图像。
[0268]
在一种可能的实施方式中,所述提取模块14具体用于:
[0269]
根据所述各暗记点位置中出现暗记点的频率,在所述多个暗记点位置中确定多个目标暗记点位置,所述目标暗记点位置中出现暗记点的频率大于或等于预设阈值;
[0270]
根据所述目标暗记点位置,生成所述单位暗记图像。
[0271]
本技术实施例提供的图像处理装置10可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此次不再进行赘述。
[0272]
图10为本技术实施例提供的一种图像处理设备的结构示意图。请参见图10,图像处理设备20可以包括:存储器21、处理器22。示例性地,存储器21、处理器22,各部分之间通过总线23相互连接。
[0273]
存储器21用于存储程序指令;
[0274]
处理器22用于执行该存储器所存储的程序指令,用以使得图像处理设备20执行上述的图像处理方法。
[0275]
图10实施例所示的图像处理设备可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
[0276]
本技术实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当计算机执行指令被处理器执行时用于实现上述图像处理方法。
[0277]
本技术实施例还可提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,可实现上述图像处理方法。
[0278]
以上描述仅为本技术的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本技术中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本技术中公开的(但不限于)具有类似功
能的技术特征进行互相替换而形成的技术方案。
[0279]
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本技术的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
[0280]
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献