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

图像处理方法和装置与流程

2021-12-07 20:48:00 来源:中国专利 TAG:


1.本公开涉及信息处理领域,特别涉及一种图像处理方法和装置。


背景技术:

2.目前,将图像展示作为宣传手段以得到了广泛应用。例如通过展示在不同装修场景下的地板、地毯等物品,可有效提升用户的体验。


技术实现要素:

3.发明人注意到,在相关技术中,通过人工手动标注的方式对场景图像中诸如地板的目标进行更换。然而人工手动标注方式的工作量巨大,耗时长且人工成本高,无法满足用户的个性化需求。
4.据此,本公开提供一种图像处理方案,能够直接将场景图像的目标更换为样本图像,从而有效满足用户的个性化需求。
5.根据本公开实施例的第一方面,提供一种图像处理方法,包括:对场景图像中的目标边界进行直线检测,以得到多个候选直线;在所述多个候选直线中,将与所述边界的重叠像素数量最多的候选直线作为第一参照直线;在所述场景图像中生成所述目标的最小外接矩形;生成变换区域,其中所述最小外接矩形的四个顶点位于所述变换区域的四条边线上,所述变换区域的第一边线和相对的第二边线的斜率与所述第一参照直线的斜率相关联,所述变换区域的第三边线和相对的第四边线的斜率与所述第一边线和第二边线的外角平分线的斜率相关联;将预设图像变换到所述变换区域中,以生成变换图像;利用所述变换图像覆盖所述目标,以便更新所述场景图像。
6.在一些实施例中,生成变换区域包括:生成经过所述最小外接矩形的第一顶点的第一边线和经过所述最小外接矩形的第二顶点的第二边线,所述第一顶点所在角和所述第二顶点所在角为对角,所述第一边线和所述第二边线的斜率与所述第一参照直线的斜率之差在第一预设范围内;生成经过所述最小外接矩形的中心点的第二参照直线,其中所述第二参照直线的斜率为所述第一边线和第二边线的外角平分线的斜率;生成经过所述最小外接矩形的第三顶点的第三边线和经过所述最小外接矩形的第四顶点的第四边线,所述第三顶点所在角和第四顶点所在角为对角,所述第三边线和所述第四边线的斜率与所述第二参照直线的斜率之差在第二预设范围内;利用所述第一边线、第二边线、第三边线和第四边线生成变换区域。
7.在一些实施例中,在所述第一参照直线的斜率小于0的情况下,所述第一边线的斜率大于所述第一参照直线的斜率,所述第二边线的斜率小于所述第一参照直线的斜率。
8.在一些实施例中,在所述第一参照直线的斜率大于0的情况下,所述第一边线的斜率小于所述第一参照直线的斜率,所述第二边线的斜率大于所述第一参照直线的斜率。
9.在一些实施例中,所述第一边线的斜率与所述第一参照直线的斜率之差为所述第一顶点到所述第一参照直线的距离和第一预设参数的比值;所述第二边线的斜率与所述第
一参照直线的斜率之差为所述第二顶点到所述第一参照直线的距离和第二预设参数的比值。
10.在一些实施例中,在所述第二参照直线的斜率大于0的情况下,所述第三边线的斜率小于所述第二参照直线的斜率,所述第四边线的斜率大于所述第二参照直线的斜率。
11.在一些实施例中,在所述第二参照直线的斜率小于0的情况下,所述第三边线的斜率大于所述第二参照直线的斜率,所述第四边线的斜率小于所述第二参照直线的斜率。
12.在一些实施例中,所述第三边线的斜率与所述第二参照直线的斜率之差为所述第三顶点到所述第二参照直线的距离和第三预设参数的比值;所述第四边线的斜率与所述第二参照直线的斜率之差为所述第四顶点到所述第二参照直线的距离和第四预设参数的比值。
13.在一些实施例中,将预设图像映射变换到所述变换区域中,以生成变换图像包括:生成所述变换区域的最小外接矩形;将所述预设图像在所述变换区域的最小外接矩形中重复拼接,以生成样本图像;通过仿射变换将所述样本图像变换到所述变换区域中,以生成变换图像。
14.在一些实施例中,在利用所述变换图像覆盖所述目标后,将所述变换图像中超出所述场景图像的部分删除。
15.根据本公开实施例的第二方面,提供一种图像处理装置,包括:第一处理模块,被配置为对场景图像中的目标边界进行直线检测,以得到多个候选直线,在所述多个候选直线中,将与所述边界的重叠像素数量最多的候选直线作为第一参照直线;第二处理模块,被配置为在所述场景图像中生成所述目标的最小外接矩形;变换区域生成模块,被配置为生成变换区域,其中所述最小外接矩形的四个顶点位于所述变换区域的四条边线上,所述变换区域的第一边线和相对的第二边线的斜率与所述第一参照直线的斜率相关联,所述变换区域的第三边线和相对的第四边线的斜率与所述第一边线和第二边线的外角平分线的斜率相关联;图像处理模块,被配置为将预设图像变换到所述变换区域中,以生成变换图像,利用所述变换图像覆盖所述目标,以便更新所述场景图像。
16.根据本公开实施例的第三方面,提供一种图像处理装置,包括:存储器,被配置为存储指令;处理器,耦合到存储器,处理器被配置为基于存储器存储的指令执行实现如上述任一实施例所述的方法。
17.根据本公开实施例的第四方面,提供一种计算机可读存储介质,其中,计算机可读存储介质存储有计算机指令,指令被处理器执行时实现如上述任一实施例涉及的方法。
18.通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
19.为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
20.图1为本公开一个实施例的图像处理方法的流程示意图;
21.图2a

图2c为本公开一些实施例的目标边界提取示意图;
22.图3为本公开一个实施例的目标的最小外接矩形的示意图;
23.图4为本公开另一个实施例的图像处理方法的流程示意图;
24.图5

图8为本公开一些实施例的变换区域边线生成示意图;
25.图9为本公开一个实施例的变换区域示意图;
26.图10a

图10c为本公开一些实施例的图像变换示意图;
27.图11a

图11b为本公开一些实施例的目标呈现示意图;
28.图12为本公开一个实施例的图像处理装置的结构示意图;
29.图13为本公开另一个实施例的图像处理装置的结构示意图。
具体实施方式
30.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
31.除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
32.同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
33.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
34.在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
35.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
36.图1为本公开一个实施例的图像处理方法的流程示意图。在一些实施例中,下列的图像处理方法步骤由图像处理装置执行。
37.在步骤101,对场景图像中的目标边界进行直线检测,以得到多个候选直线。
38.例如,为了对如图2a所示的图像中的地板区域进行处理,首先利用地板区域的前景掩膜mask将场景图像中的地板区域提取出来,并将非地板区域像素值置为0,如图2b所示。接下来,利用canny算子提取地板区域的边界,如图2c所示。
39.然后,对提取到的边界进行霍夫(hough)直线检测,以得到多个候选直线。
40.在步骤102,在多个候选直线中,将与边界的重叠像素数量最多的候选直线作为第一参照直线。
41.在步骤103,在场景图像中生成目标的最小外接矩形。
42.例如,在图2a中所示的图像中,地板的最小外接矩形如图3中的黑色方框所示。
43.在步骤104,生成变换区域。
44.这里需要说明的是,最小外接矩形的四个顶点位于变换区域的四条边线上,变换
区域的第一边线和相对的第二边线的斜率与第一参照直线的斜率相关联,变换区域的第三边线和相对的第四边线的斜率与第一边线和第二边线的外角平分线的斜率相关联。
45.图4为本公开另一个实施例的图像处理方法的流程示意图。该实施例描述变换区域的生成步骤。在一些实施例中,下列的图像处理方法步骤由图像处理装置执行。
46.在步骤401,生成经过最小外接矩形的第一顶点的第一边线和经过最小外接矩形的第二顶点的第二边线,第一顶点所在角和第二顶点所在角为对角,第一边线和第二边线的斜率与第一参照直线的斜率之差在第一预设范围内。
47.在一些实施例中,在第一参照直线的斜率小于0的情况下,第一边线的斜率大于第一参照直线的斜率,第二边线的斜率小于第一参照直线的斜率。
48.在一些实施例中,如图5所示,矩形abcd为所生成的最小外接矩形,直线l00为第一参照直线,直线l00的斜率k*<0。考虑到视觉效果,经过顶点a的第一边线l1和经过顶点d的第二边线l2的斜率不会与直线l00的斜率完全一致,而是会具有一定的偏差。例如,如图5所示,第一边线l1的斜率大于直线l00的斜率,第二边线l2的斜率小于直线l00的斜率。
49.例如,如图5所示,顶点a到直线l00的距离为d1,顶点d到直线l00的距离为d2,则第一边线l1的斜率k1如公式(1)所示,第二边线l2的斜率k2如公式(2)所示,其中参数n1和n2为预设参数。
50.k1=k* d1/n1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
51.k2=k*

d2/n2
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
52.在一些实施例中,如图6所示,第一参照直线l00的斜率k*>0。考虑到视觉效果,经过顶点b的第一边线l1和经过顶点c的第二边线l2的斜率不会与直线l00的斜率完全一致,而是会具有一定的偏差。例如,如图6所示,第一边线l1的斜率小于直线l00的斜率,第二边线l2的斜率大于直线l00的斜率。
53.例如,如图6所示,顶点b到直线l00的距离为d3,顶点c到直线l00的距离为d4,则第一边线l1的斜率k1如公式(3)所示,第二边线l2的斜率k2如公式(4)所示,其中参数n1和n2为预设参数。
54.k1=k*

d3/n1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
55.k2=k* d4/n2
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
56.在步骤402,生成经过最小外接矩形的中心点的第二参照直线,其中第二参照直线的斜率为第一边线和第二边线的外角平分线的斜率。
57.在步骤403,生成经过最小外接矩形的第三顶点的第三边线和经过最小外接矩形的第四顶点的第四边线,第三顶点所在角和第四顶点所在角为对角,第三边线和第四边线的斜率与第二参照直线的斜率之差在第二预设范围内。
58.在一些实施例中,在第二参照直线的斜率大于0的情况下,第三边线的斜率小于第二参照直线的斜率,第四边线的斜率大于第二参照直线的斜率。
59.在一些实施例中,如图7所示,第二参照直线l01经过矩形abcd的中心o点,第二参照直线l01的斜率k**>0。考虑到视觉效果,经过顶点b的第三边线l3和经过顶点c的第四边线l4的斜率不会与直线l01的斜率完全一致,而是会具有一定的偏差。例如,如图7所示,第三边线l3的斜率小于直线l01的斜率,第四边线l4的斜率大于直线l01的斜率。
60.例如,如图7所示,顶点b到直线l01的距离和顶点c到直线l01的距离均为d5,则第
三边线l3的斜率k3如公式(5)所示,第四边线l4的斜率k4如公式(6)所示,其中参数n3和n4为预设参数。
61.k3=k**

d5/n3
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
62.k4=k** d5/n4
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
63.在一些实施例中,在第二参照直线的斜率小于0的情况下,第三边线的斜率大于第二参照直线的斜率,第四边线的斜率小于第二参照直线的斜率。
64.在一些实施例中,如图8所示,第二参照直线l01经过矩形abcd的中心o点,第二参照直线l01的斜率k**<0。考虑到视觉效果,经过顶点a的第三边线l3和经过顶点d的第四边线l4的斜率不会与直线l01的斜率完全一致,而是会具有一定的偏差。例如,如图8所示,第三边线l3的斜率大于直线l01的斜率,第四边线l4的斜率小于直线l01的斜率。
65.例如,如图8所示,顶点a到直线l01的距离和顶点d到直线l01的距离均为d6,则第三边线l3的斜率k3如公式(7)所示,第四边线l4的斜率k4如公式(8)所示,其中参数n3和n4为预设参数。
66.k3=k** d6/n3
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
67.k4=k**

d6/n4
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
68.在步骤404,利用第一边线、第二边线、第三边线和第四边线生成变换区域。
69.例如,在图8的基础上,所得到的变换区域如图9中的白色线框所示。
70.返回图1。在步骤105,将预设图像变换到变换区域中,以生成变换图像。
71.在一些实施例中,通过生成变换区域的最小外接矩形,将预设图像在变换区域的最小外接矩形中重复拼接,以生成样本图像,并通过仿射变换将样本图像变换到变换区域中,以生成变换图像。
72.例如,预设的地板样图如图9a所示。通过将预设的地板样图在变换区域的最小外接矩形中重复拼接,以生成样本图像,如图9b所示。接下来,通过仿射变换将样本图像变换到变换区域中,以生成变换图像,如图9c所示。
73.在步骤106,利用变换图像覆盖目标,以便更新场景图像。
74.在一些实施例中,在利用变换图像覆盖目标后,将变换图像中超出场景图像的部分删除。
75.例如,图11a为原始的场景图像,通过上述实施例描述的方案在原始的场景图像上覆盖变换图像,从而将改变原始的场景图像中的地板样式,如图11b所示。
76.在本公开上述实施例提供的图像处理装置中,能够直接将场景图像的目标更换为样本图像,从而有效满足用户的个性化需求。
77.图12为本公开一个实施例的图像处理装置的结构示意图。如图12所示,图像处理装置包括第一处理模块1201、第二处理模块1202、变换区域生成模块1203和图像处理模块1204。
78.第一处理模块1201被配置为对场景图像中的目标边界进行直线检测,以得到多个候选直线,在多个候选直线中,将与边界的重叠像素数量最多的候选直线作为第一参照直线。
79.例如,为了对如图2a所示的图像中的地板区域进行处理,首先利用地板区域的前景掩膜mask将场景图像中的地板区域提取出来,并将非地板区域像素值置为0,如图2b所
示。接下来,利用canny算子提取地板区域的边界,如图2c所示。然后,对提取到的边界进行霍夫直线检测,以得到多个候选直线。
80.第二处理模块1202被配置为在场景图像中生成目标的最小外接矩形。
81.例如,在图2a中所示的图像中,地板的最小外接矩形如图3中的黑色方框所示。
82.变换区域生成模块1203被配置为生成变换区域,其中最小外接矩形的四个顶点位于变换区域的四条边线上,变换区域的第一边线和相对的第二边线的斜率与第一参照直线的斜率相关联,变换区域的第三边线和相对的第四边线的斜率与第一边线和第二边线的外角平分线的斜率相关联。
83.在一些实施例中,变换区域生成模块1203生成经过最小外接矩形的第一顶点的第一边线和经过最小外接矩形的第二顶点的第二边线,第一顶点所在角和第二顶点所在角为对角,第一边线和第二边线的斜率与第一参照直线的斜率之差在第一预设范围内。
84.在一些实施例中,在第一参照直线的斜率小于0的情况下,第一边线的斜率大于第一参照直线的斜率,第二边线的斜率小于第一参照直线的斜率。例如可利用上述公式(1)计算第一边线的斜率,利用上述公式(2)计算第二边线的斜率。
85.在一些实施例中,在第一参照直线的斜率大于0的情况下,第一边线的斜率小于第一参照直线的斜率,第二边线的斜率大于第一参照直线的斜率。例如可利用上述公式(3)计算第一边线的斜率,利用上述公式(4)计算第二边线的斜率。
86.接下来,变换区域生成模块1203生成经过最小外接矩形的中心点的第二参照直线,其中第二参照直线的斜率为第一边线和第二边线的外角平分线的斜率。
87.接下来,变换区域生成模块1203生成经过最小外接矩形的第三顶点的第三边线和经过最小外接矩形的第四顶点的第四边线,第三顶点所在角和第四顶点所在角为对角,第三边线和第四边线的斜率与第二参照直线的斜率之差在第二预设范围内。
88.在一些实施例中,在第二参照直线的斜率大于0的情况下,第三边线的斜率小于第二参照直线的斜率,第四边线的斜率大于第二参照直线的斜率。例如可利用上述公式(5)计算第三边线的斜率,利用上述公式(6)计算第四边线的斜率。
89.在一些实施例中,在第二参照直线的斜率小于0的情况下,第三边线的斜率大于第二参照直线的斜率,第四边线的斜率小于第二参照直线的斜率。例如可利用上述公式(7)计算第三边线的斜率,利用上述公式(8)计算第四边线的斜率。
90.然后,变换区域生成模块1203利用第一边线、第二边线、第三边线和第四边线生成变换区域。例如,在图8的基础上,所得到的变换区域如图9中的白色线框所示。
91.图像处理模块1204被配置为将预设图像变换到变换区域中,以生成变换图像,利用变换图像覆盖目标,以便更新场景图像。
92.在一些实施例中,图像处理模块1204通过生成变换区域的最小外接矩形,将预设图像在变换区域的最小外接矩形中重复拼接,以生成样本图像,并通过仿射变换将样本图像变换到变换区域中,以生成变换图像。
93.图13为本公开另一个实施例的图像处理装置的结构示意图。如图13所示,图像处理装置包括存储器1301和处理器1302。
94.存储器1301用于存储指令,处理器1302耦合到存储器1301,处理器1302被配置为基于存储器存储的指令执行实现如图1或图4中任一实施例涉及的方法。
95.如图13所示,该图像处理装置还包括通信接口1303,用于与其它设备进行信息交互。同时,该图像处理装置还包括总线1304,处理器1302、通信接口1303、以及存储器1301通过总线1304完成相互间的通信。
96.存储器1301可以包含高速ram存储器,也可还包括非易失性存储器(non

volatile memory),例如至少一个磁盘存储器。存储器1301也可以是存储器阵列。存储器1301还可能被分块,并且块可按一定的规则组合成虚拟卷。
97.此外,处理器1302可以是一个中央处理器cpu,或者可以是专用集成电路asic,或是被配置成实施本公开实施例的一个或多个集成电路。
98.本公开同时还涉及一种计算机可读存储介质,其中计算机可读存储介质存储有计算机指令,指令被处理器执行时实现如图1或图4中任一实施例涉及的方法。
99.在一些实施例中,在上面所描述的功能单元模块可以实现为用于执行本公开所描述功能的通用处理器、可编程逻辑控制器(programmable logic controller,简称:plc)、数字信号处理器(digital signal processor,简称:dsp)、专用集成电路(application specific integrated circuit,简称:asic)、现场可编程门阵列(field

programmable gate array,简称:fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。
100.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
101.本公开的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本公开限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本公开的原理和实际应用,并且使本领域的普通技术人员能够理解本公开从而设计适于特定用途的带有各种修改的各种实施例。
再多了解一些

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

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

相关文献