
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.第三方面的一种可选实施例中,提案结果确定模块在基于三维点云数据,得到场景中物体的提案结果时,具体用于:
70.基于三维点云数据,将三维点云数据转换为矩阵;
71.基于矩阵,确定第一特征图;
72.基于第一特征图,得到场景中物体的提案结果。
73.第三方面的一种可选实施例中,提案结果确定模块在基于三维点云数据,确定三维点云数据对应的矩阵时,具体用于:
74.确定三维点云数据中属于物体的点云数据;
75.基于三维点云数据中属于物体的点云数据,确定三维点云数据对应的矩阵。
76.第三方面的一种可选实施例中,待处理图像中还包括场景的彩色图像,该装置还包括:
77.特征提取模块,用于对彩色图像进行特征提取,得到第二特征图;
78.提案结果确定模块在基于第一特征图,得到场景中物体的提案结果时,具体用于:
79.基于第一特征图和第二特征图,得到场景中物体的提案结果。
80.第三方面的一种可选实施例中,提案结果确定模块在基于第一特征图和第二特征图,得到场景中物体的提案结果时,具体用于:
81.对第一特征图和第二特征图进行融合,得到待处理图像所对应的第三特征图;
82.基于第三特征图,得到场景中物体的提案结果。
83.第三方面的一种可选实施例中,提案结果确定模块在基于第三特征图,得到场景中物体的提案结果时,具体用于:
84.切分待处理图像,得到至少两个子图像;
85.基于每个子图像对应的第三特征图和/或每个子图像的邻近子图像对应的第三特征图,确定每个子图像对应的提案结果;
86.对各子图像对应的提案结果进行融合,得到场景中物体的提案结果。
87.第三方面的一种可选实施例中,提案结果确定模块在基于每个子图像对应的第三特征图和/或每个子图像的邻近子图像对应的第三特征图,确定每个子图像对应的提案结果时,具体用于:
88.确定每个子图像的权重;
89.基于每个子图像对应的第三特征图和/或每个子图像的邻近子图像对应的第三特征图,以及各个子图像所对应的权重,确定每个子图像对应的提案结果。
90.第三方面的一种可选实施例中,提案结果确定模块在确定每个子图像的权重时,通过以下任一种方式:
91.基于各个子图像对应的子特征图,确定每个子图像的权重;
92.确定待处理图像的候选点,基于各个子图像对应的候选点,或各个子图像对应的候选点对应的子特征图,确定每个子图像所对应的权重。
93.第三方面的一种可选实施例中,提案结果确定模块在基于各个子图像对应的候选点,确定每个子图像所对应的权重时,具体用于:
94.对于每个子图像对应的候选点,确定该候选点与其相邻的子图像的候选点之间的相似关系;基于各候选点与其相邻的子图像的候选点之间的相似关系,确定每个子图像所对应的权重;
95.提案结果确定模块在基于各个子图像对应的子特征图,确定每个子图像的权重时,通过以下任一种方式确定:
96.对于每个子图像,确定该子图像中心位置处对应的第一特征向量,以及该子图像对应的子特征图对应的第二特征向量;基于各子图像对应的第一特征向量和第二特征向量,确定每个子图像的权重;
97.对于每个子图像对应的子特征图,该子特征图对应至少一个概率值,每个概率值表征该子特征图属于对应物体的概率;将至少一个概率值中的最大概率值作为该子图像的权重。
98.第三方面的一种可选实施例中,该装置还包括:
99.三维检测结果确定模块,用于基于提案结果,确定待处理图像中物体的三维检测结果,三维检测结果中包括三维姿态结果和三维分割结果中的至少一项。
100.第三方面的一种可选实施例中,三维检测结果包括三维姿态结果和三维分割结果;
101.三维检测结果确定模块在基于提案结果,确定待处理图像中物体的三维检测结果时,具体用于:
102.提取提案结果对应的三维点云特征和二维图像特征;
103.将三维点云特征和二维图像特征进行拼接,得到第四特征图;
104.基于第四特征图,确定待处理图像中物体的三维检测结果。
105.第三方面的一种可选实施例中,三维检测结果确定模块在基于提案结果,确定待处理图像中物体的三维检测结果时,具体用于:
106.基于提案结果,确定待处理图像中物体的初始三维检测结果;
107.确定待处理图像中物体对应的原始图像;
108.基于各物体的初始三维检测结果以及对应的原始图像,确定每个物体的初始三维检测结果对应的差异信息;
109.基于每个物体的初始三维检测结果对应的差异信息,对对应的物体的初始三维检测结果进行更新,得到待处理图像中每个物体的三维检测结果。
110.第四方面,本发明提供了一种图像处理装置,该装置包括:
111.变形信息获取模块,用于获取虚拟物体对待处理图像中真实物体的变形信息;
112.图像变形模块,用于基于变形信息,对真实物体进行变形,得到变形后的待处理图像。
113.第四方面的一种可选实施例中,图像变形模块在基于变形信息,对真实物体进行变形,得到变形后的待处理图像时,具体用于:
114.确定真实物体对应的原始图像;
115.基于真实物体对应的三维姿态结果,变形信息,以及与真实物体对应的原始图像,确定真实物体对应的变形后的图像与变形前的图像之间的变换关系,变形前的图像为待处理图像中真实物体对应的图像;
116.基于变换关系以及真实物体对应的图像,确定真实物体所对应的变形后的图像;
117.基于真实物体所对应的变形后的图像,确定变形后的待处理图像。
118.第四方面的一种可选实施例中,图像变形模块在基于待变形物体对应的三维姿态结果,变形信息,以及与待变形物体对应的原始图像,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系时,具体用于:
119.基于待变形物体的原始图像,变形信息,以及对应关系,确定原始图像中待变形物体对应的变形后的变形点,对应关系是基于样本图像中物体在不同变形信息下、变形前后对应的变形点建立的;
120.基于待变形物体对应的变形后的变形点,待变形物体变形前的变形点,以及待变形物体对应的三维姿态结果,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系。
121.第四方面的一种可选实施例中,图像变形模块在基于待变形物体对应的变形后的变形点,待变形物体变形前的变形点,以及待变形物体对应的三维姿态结果,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系时,具体用于:
122.确定待变形物体所对应的各变形点中每个变形点的权重;
123.基于各变形点的权重,待变形物体对应的变形后的变形点,待变形物体变形前的变形点,以及待变形物体对应的三维姿态结果,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系。
124.第四方面的一种可选实施例中,图像变形模块在基于待变形物体所对应的变形后的图像,确定变形后的待处理图像时,通过以下至少一种方式确定:
125.将待变形物体对应的变形后的图像替换待处理图像中变形前的图像,得到变形后的待处理图像;
126.基于待变形物体对应的变形后的图像以及待变形物体对应的变形前的图像,确定差分图像,基于差分图像,确定变形后的待处理图像。
127.第五方面,本发明实施例提供了一种电子设备,电子设备包括处理器和存储器;存储器中存储有可读指令,可读指令由处理器加载并执行时,实现如上述第一方面或第二方面中的任一可选实施例中所示的方法。
128.第六方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质中存储有可读指令,可读指令由处理器加载并执行时,实现如上述第一方面或第二方面中的任一可选实施例中所示的方法。
129.本发明实施例提供的技术方案带来的有益效果是:本发明实施例所提供的图像处理方法、装置、电子设备及计算机存储介质的方案,可以在获取待处理图像之后,基于待处理图像中场景的深度图像,确定深度图像对应的三维点云数据;然后基于三维点云数据,得到场景中物体的提案结果。通过该方案,由于三维点云数据表示的是由多个三维离散点组成的点的集合,其数据量小于三维体素所对应的数据量,由此,基于三维点云数据确定场景中物体的提案结果,可节省存储空间,减少数据运算量,提高算法运行效率。
附图说明
130.为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所
需要使用的附图作简单地介绍。
131.图1示出了本发明实施例提供的一种图像处理方法的流程示意图;
132.图2示出了本发明实施例中提供的一种基于子图像确定物体的提案结果方法的流程示意图;
133.图3示出了本发明实施例中提供的一种基于单个格子的信息推断这个格子的权重的流程示意图;
134.图4a示出了本发明实施例中提供的一种五个相邻格子的分布的示意图;
135.图4b示出了本发明实施例中提供的一种各相邻格子之间的依赖关系的示意图;
136.图4c示出了本发明实施例中提供的又一种各相邻格子之间的依赖关系的示意图;
137.图5示出了本发明实施例中提供的一种依据相邻格子的关系推断格子的权重的流程示意图;
138.图6示出了本发明实施例中提供的一种基于彩色图像和深度图像确定物体的提案结果方法的流程示意图;
139.图7示出了本发明实施例中提供的又一种基于彩色图像和深度图像确定物体的提案结果方法的流程示意图;
140.图8示出了本发明实施例中提供的一种形状补全的方法流程示意图;
141.图9示出了本发明实施例中提供的又一种形状补全的方法流程示意图;
142.图10示出了本发明实施例中提供的一种基于空间损失函数训练模型方法的流程示意图;
143.图11示出了本发明实施例中提供的一种相邻的两个三维物体的三维包围框的空间位置关系示意图;
144.图12示出了本发明实施例中提供的又一种相邻的两个三维物体的三维包围框的空间位置关系示意图;
145.图13示出了本发明实施例中提供的一种对三维检测结果进行细化的方法流程示意图;
146.图14示出了本发明实施例中提供的又一种对三维检测结果进行细化的方法流程示意图;
147.图15示出了本发明实施例中提供的一种基于彩色图像和深度图像确定物体三维检测结果的方法流程示意图;
148.图16示出了本发明实施例提供的又一种图像处理方法的流程示意图;
149.图17示出了本发明实施例中提供的一种虚拟物体使待处理图像中的待变形物体发生形变的方法流程示意图;
150.图18示出了本发明实施例中提供的又一种虚拟物体使待处理图像中的待变形物体发生形变的方法流程示意图;
151.图19a示出了本发明实施例中提供的一种虚拟物体使待处理图像中的沙发发生形变的效果示意图;
152.图19b示出了本发明实施例中提供的又一种虚拟物体使待处理图像中的沙发发生形变的效果示意图;
153.图20示出了本发明实施例中提供的一种图像处理装置的结构示意图;
154.图21示出了本发明实施例中提供的又一种图像处理装置的结构示意图;
155.图22示出了本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
156.为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
157.下面详细描述本发明的实施例,该实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
158.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
159.为了更好的理解及说明本发明实施例的方案,下面对本发明实施例中所涉及到的一些技术用语进行简单说明。
160.体素:体素是体积元素的简称,是数字数据于三维空间分割上的最小单位,类似二维空间的最小单位-像素。
161.三维几何特征:三维几何特征是对三维元素的几何表示。这里的元素可以是一个点云,网格,也可以是点云里的一个点,网格里的一个顶点或面。
162.三维点云数据:由多个三维离散点组成的点的集合,三维点云数据中可包括物体的三维几何特征。
163.深度图像:包含与视点的场景对象的表面的距离有关的信息的图像或图像通道。其中,深度图像的每个像素点的灰度值可用于表征场景中某一点距离摄像机的远近。
164.特征图(feature map):图像和滤波器进行卷积后得到的特征图,feature map可以和滤波器进行卷积生成新的feature map。
165.神经网络(neural network,nn):是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
166.mlp(multilayer perceptron,多层感知机):也叫人工神经网络(ann,artificial neural network),除了输入输出层,中间可以有多个隐层。
167.cad(computer aided design,计算机辅助设计):指利用计算机及其图形设备帮助设计人员进行设计工作的交互式绘图系统。
168.在现有技术中,对于如何图像中物体的提案结果,即图像中包含物体的区域,通常可以通过以下方式实现:
169.第一种方式:基于图像的二维图像特征得到物体的提案结果:基于彩色图像的物体检测结果,确定彩色图像上物体的包围框,并从深度点云数据中截取视锥。基于截取的点云进行3d物体分割以及3d包围框和姿态估计
170.第二种方式:基于训练好的模型从彩色图像中提取物体的图像区域以及2d包围框,该模型是基于样本图像中物体的图像区域以及2d包围框训练得到的,用于确定二维图像的图像区域以及2d包围框,然后基于彩色图像的特征和深度图像的特征,得到物体对应的三维体素,基于三维体素得到物体的姿态估计结果。
171.第三种方式:基于物体的外观图像特征和结构信息从单幅图像中估计物体姿态。
172.第四种方式:将物体的三维模型和图像中的物体进行对齐,可基于图像中物体的形状风格检索出与之匹配的三维模型,并估计出该三维模型相对相机的视角。
173.通过上述方案均能得到物体的提案结果,提案结果可包括物体的图像区域、2d包围框以及物体姿态,但是上述方案存在如下技术问题:
174.第一种方式:仅适用于彩色图像的物体提案,遗漏了物体的三维特征,使得提案结果不准确。
175.第二种方式:仅适用于彩色图像的物体提案,不适用于深度图像的物体提案,且基于三维体素得到物体提案的方案,会导致消耗大量的存储空间和计算资源,使得算法效率低。
176.第三种方式:仅适用于彩色图像的物体提案,不适用于深度图像的物体提案。
177.第四种方式:该方案是基于物体的结构特征确定物体提案的方案,物体的结构特征不能反映物体的细节特征,使得得到的物体提案不准确。
178.针对上述技术问题,本发明可以在获取待处理图像之后,确定待处理图像中深度图像对应的三维点云数据;然后基于三维点云数据,得到场景中物体的提案结果。由于三维点云数据表示的是由多个三维离散点组成的点的集合,其数据量小于三维体素所对应的数据量,由此,基于三维点云数据确定场景中物体的提案结果,可节省存储空间,减少数据运算量,提高算法运行效率。同时,三维点云数据可以描述物体的三维结构特征,基于三维点云数据确定的提案结果更加准确。此外,在对三维点云数据进行特征提取时,采用mlp编码器进行特征提取,可先将三维点云数据转换为矩阵,从而进一步减少数据处理量,提高算法运行效率。
179.下面以具体地实施例对本发明的技术方案以及本发明的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
180.图1示出了本发明提供的一种图像处理方法的流程示意图,如图中所示,该方法可以包括步骤s110至步骤s130,其中:
181.步骤s110:获取待处理图像,待处理图像包括场景的深度图像。
182.其中,待处理图像指的是需要确定出其中物体的提案结果的图像,该待处理图像可以是通过具有深度图像拍照功能的终端设备拍摄得到的深度图像,也可以是基于彩色图像进行处理得到的深度图像。场景中包括的物体包括但不限于人物、动物等物体。一个场景中可同时包括一个或多个物体。
183.步骤s120:基于深度图像,确定深度图像对应的三维点云数据。
184.具体的,基于深度图像,确定深度图像对应的三维点云数据的一种可实现方式为:将深度图像的二维图像坐标和深度信息从图像坐标系转换为世界坐标系。三维点云数据可以描述物体在三维空间中的三维结构特征,即三维几何特征,一张深度图像反投影变换到三维空间中的每个三维点都对应着原深度图像中的每一个像素点。
185.步骤s130:基于三维点云数据,得到场景中物体的提案结果。
186.其中,物体的提案结果表示的是待处理图像中包括物体的区域,如果场景中包括多个物体,则提案结果表示的是每个物体在待处理图像中对应的物体区域。提案结果可以是带物体区域标识的图像,物体区域标识可以为标记框,该标记框所框选的区域为物体区域。
187.本发明的方案中,可以在获取待处理图像之后,基于待处理图像中场景的深度图像,确定深度图像对应的三维点云数据;然后基于三维点云数据,得到场景中物体的提案结果。通过该方案,由于三维点云数据表示的是由多个三维离散点组成的点的集合,其数据量小于三维体素所对应的数据量,由此,基于三维点云数据确定场景中物体的提案结果,可节省存储空间,减少数据运算量,提高算法运行效率。
188.本发明的可选方案中,步骤s130中,基于三维点云数据,得到场景中物体的提案结果,可以包括:
189.基于三维点云数据,确定三维点云数据对应的矩阵;
190.基于矩阵,确定第一特征图;
191.基于第一特征图,得到场景中物体的提案结果。
192.具体的,在对三维点云数据进行特征提取时,可先将三维点云数据转换为矩阵,以减少数据处理量。在对三维点云数据进行特征提取时,可采用mlp编码器,mlp编码器在提取数据的特征时,会将数据先转换为矩阵,再对矩阵进行后续的处理,以得到该数据对应的特征图。其中,例如,三维点云数据中包含n个点,三维点云数据对应的矩阵则表示为nx3的矩阵。
193.其中,在本发明的方案中采用mlp编码器进行特征的提取,mlp编码器可以通过以下方式训练得到:获取样本图像,每个样本图像包括场景的深度图像,每个样本图像中标注有各物体的标注结果,标注结果表征了样本图像中每个物体的三维检测结果;基于各样本图像中对应的深度图像,对初始网络模型进行训练,直至初始网络模型的损失函数收敛,将训练结束时的模型作为mlp编码器;其中,损失函数的值表征了各样本图像的预测结果和标注结果的差异程度。
194.上述三维检测结果可以包括三维物体框、三维关键点、三维物体分割结果等,则对应的预测结果与上述三维检测结果相对应。可以理解的是,上述三维检测结果可在训练时组合使用。通过三维检测结果确定训练的mlp编码器所提取的特征是否准确。
195.本发明的可选方案中,基于三维点云数据,确定三维点云数据对应的矩阵,可以包括:
196.确定三维点云数据中属于物体的点云数据;
197.基于三维点云数据中属于物体的点云数据,确定三维点云数据对应的矩阵。
198.其中,在对三维点云数据进行特征提取前,可先确定出三维点云数据中属于物体的点云数据,以使得在特征提取时,只对三维点云数据中属于物体的点云数据进行特征提
取,对不属于物体的点云数据不进行特征提取,从而可减少数据处理量。其中,不属于物体的点云数据可以为图像中的背景所对应的点云数据。
199.本发明的可选方案中,若待处理图像中还包括场景的彩色图像,深度图像为基于彩色图像确定的。
200.其中,深度图像可以是基于彩色图像确定的,在一些场景下,如果深度图像不容易获取到,则可基于相同场景所对应的彩色图像得到对应的深度图像。
201.基于彩色图像得到深度图像的一种可实现方式可以为:基于彩色图像,通过深度图像预测模型预测得到该彩色图像对应的深度图像。其中,该深度图像预测模型的输入为场景的彩色图像,输出为该场景的深度图像。该模型可以基于样本图像对初始模型训练得到,样本图像包括属于同一场景的彩色图像和对应的深度图像。
202.本发明的可选方案中,待处理图像中还包括场景的彩色图像,该方法还可以包括:
203.对彩色图像进行特征提取,得到第二特征图;
204.步骤s130中,基于第一特征图,得到场景中物体的提案结果,可以包括:
205.基于第一特征图和第二特征图,得到场景中物体的提案结果。
206.其中,如果待处理图像中还包括场景的彩色图像,彩色图像中可以反应出物体的二维特征,则在基于第一特征图(三维特征),得到场景中物体的提案结果时,可以在第一特征图的基础上,结合彩色图像的二维特征(第二特征图),使得得到的提案结果更加准确。
207.其中,对彩色图像进行特征提取的方法可以通过现有技术中的特征提取方法实现,比如,卷积神经网络。
208.可以理解的是,如果深度图像不是基于彩色图像预测得到的,是对于同一场景拍摄得到的两张图像,为了使两张图像的差别尽量减小,可以预先对这两张图像进行对齐处理,比如,将两张图像转换为同一角度的图像,或者,将两张图像转换为同一光线的图像。对齐后的深度图像和彩色图像中的各个像素点一一对应,以避免两张图像因为视差带来的影响。上述对图像的对齐处理可采用现有技术中的方法实现,在此不再赘述。
209.本发明的可选方案中,基于第一特征图和第二特征图,得到场景中物体的提案结果,可以包括:
210.对第一特征图和第二特征图进行融合,得到待处理图像所对应的第三特征图;
211.基于第三特征图,得到场景中物体的提案结果。
212.其中,在基于第一特征图和第二特征图得到物体的提案结果时,可以先将两个特征图进行融合,融合成一个特征图(第三特征图),第三特征图中包括第一特征图中的三维几何特征,还包括第二特征图中的二维像素特征。
213.在本发明的一可选方案中,点云数据中的点是图像的形式,可将第一特征图和第二特征图串联在一起,得到第三特征图。
214.在本发明的可选方案中,基于第三特征图,得到场景中物体的提案结果可以是通过神经网络模型的输出得到的,神经网络模型是通过以下方式训练得到的:获取样本图像,每个样本图像包括同一场景的深度图像和彩色图像,每个样本图像中标注有各对象的标注结果,标注结果表征了样本图像中每个对象的三维检测结果;基于各样本图像中对应的彩色图像的第二特征图和深度图像的第一特征图,确定各样本图像所对应的第三特征图;基于各样本图像所对应的第三特征图,对初始网络模型进行训练,直至初始网络模型的损失
函数收敛,将训练结束时的模型作为神经网络模型;其中,损失函数的值表征了各样本图像的预测结果和标注结果的差异程度。
215.可以理解的是,在训练神经网络模型时,可以基于实际需求对神经网络模型进行训练,比如,标注结果包括图像中各物体对应的区域图像、二维图像区域分割结果、包围框或关键点中的至少一项,则相应的,神经网络模型的输出可以包括待处理图像的中各物体对应的区域图像、包围框或关键点中的至少一项。基于上述神经网络模型的输出,均能得到物体的提案结果。
216.本发明的可选方案中,基于第三特征图,得到场景中物体的提案结果,可以包括:
217.切分第三特征图对应的待处理图像,得到至少两个子图像;
218.基于每个子图像对应的第三特征图和/或每个子图像的邻近子图像对应的第三特征图,确定每个子图像对应的提案结果;
219.对各子图像对应的提案结果进行融合,得到场景中物体的提案结果。
220.其中,待处理图像中的部分图像区域(子图像)可以有相对应的子特征图,则每个子图像对应于场景中物体的提案结果,即是每个子特征图对应的提案结果。在本发明的方案中,如果图像中包括多个物体,则各个子图像可以为对应于不同物体的子图像,则在各子图像中,多个子图像所对应的提案结果可以对应于同一个物体,也可以对应于不同的物体。
221.对于第三特征图,待处理图像中的每个物体都可以有对应的子特征图,即子特征图为第三特征图中的一部分特征图,由此,子图像对应的提案结果可以表示该子图像对应的子特征图对应的物体的提案结果,子特征图指的是第三特征图中的部分特征图,所有子特征图对应一个完整的第三特征图,则对各个子图像对应的提案结果进行融合即可得到待处理图像中物体提案(场景中物体的提案结果)。
222.可以理解的是,在本发明的方案中,如果是基于第一特征图,确定场景中的物体的提案结果,则子图像为基于第一特征图确定的。如果是基于第二特征图,确定场景中的物体的提案结果,则子图像为基于第二特征图确定的。
223.本发明的可选方案中,基于每个子图像对应的第三特征图和/或每个子图像的邻近子图像对应的第三特征图,确定每个子图像对应的提案结果,可以包括:
224.确定每个子图像的权重;
225.基于每个子图像对应的第三特征图和/或每个子图像的邻近子图像对应的第三特征图,以及各个子图像所对应的权重,确定每个子图像对应的提案结果。
226.其中,对于一个物体,每个子图像是否属于该物体的可能性可以通过权重表示,即权重越大,表示该子图像是该物体的可能性越大。则在对各个子图像对应的提案结果进行融合时,考虑到每个子图像对应的权重,可使得确定的每个子图像对应的提案结果更准确。
227.上述确定每个子图像所对应的权重可以通过上述神经网络模型确定,即在模型训练过程中,可基于各个子图像对应的提案结果,以及对应的权重,对模型进行训练,基于训练好的模型可用来确定每个子图像的权重。
228.本发明的可选方案中,确定每个子图像的权重,包括以下任一种:
229.第一种,基于各子图像对应的子特征图,确定每个子图像的权重。
230.其中,可根据每个子图像对应的子特征图中的特征来确定这个子图像的权重,在一个子图像对应的子特征图中,该子特征图中的每个特征属于各物体的可能性不同,因此,
基于每个子图像自身的特征可以确定出该子图像的权重,通过权重表征该子图像属于某个物体的可能性。
231.第二种,确定待处理图像的候选点,基于各个子图像对应的候选点,确定每个子图像所对应的权重。
232.其中,候选点为可以表示物体位置的点,通过候选点可以确定出物体在图像中的位置,每个候选点属于各物体的可能性不同,因此,基于各个子图像对应的候选点可以确定出该子图像的权重,通过权重表征该子图像属于某个物体的可能性。
233.第三种,基于各个子图像对应的候选点对应的子特征图,确定每个子图像所对应的权重。
234.其中,每个子特征图属于各物体的可能性不同,基于候选点对应的子特征图,也可以确定出对应子图像的权重。
235.本发明的可选方案中,确定待处理图像的候选点,可以包括以下任一种:
236.第一种,将待处理图像中的每个像素点作为待处理图像的候选点。
237.其中,基于像素点可以准确反应出物体在待处理图像中的位置,则将像素点作为候选点,可以准确确定出物体的提案结果。
238.第二种,基于各个子图像所对应的像素点,确定每个子图像所对应的候选点。
239.其中,可基于每个子图像对应的像素点,确定每个子特征图所对应的候选点,一个候选点可以对应多个像素点,也可以对应一个像素点。
240.以一个子图像所对应的像素点为例,基于该子图像所对应的像素点,确定该子图像所对应的候选点的一种可实现方式可以为:
241.将该子图像所对应的像素点中位于中间位置的像素点作为该子图像的候选点。
242.第三种,对待处理图像进行采样得到至少两个采样点,依据至少两个采样点分割待处理图像得到对应的至少两个子图像,并将每个子图像对应的采样点作为候选点。
243.其中,采样点可以为像素点,其中可以按照设定的采样规则进行采样,比如,每隔n个像素点进行一次采样。采样规则可以基于实际规则设置,本发明的方案中不限于上述一种采样规则。
244.其中,至少两个子图像可以包括以下几种情况:
245.第一种情况,多个采样点对应一个子图像。比如,在至少两个采样点中,相邻的两个采样点之间距离小于设定值,表示这两个采样点对应的可能是同一个物体,则可以将这两个采样点对应的区域作为一个子图像。
246.第二种情况,一个采样点对应一个子图像。即采样得到的至少两个采样点有几个,就对应划分得到几个子图像。
247.其中,在第一种情况下,可以将子图像对应的多个采样点中的任一个采样点作为该子图像的候选点。在第二种情况下,由于一个采样点对应一个子图像,则可以直接将该子图像对应的采样点作为候选点。
248.本发明的可选方案中,基于各个子图像对应的候选点,确定每个子图像所对应的权重,可以包括:
249.对于每个子图像对应的候选点,确定该候选点与其相邻的子图像的候选点之间的相似关系;基于各候选点与其相邻的子图像的候选点之间的相似关系,确定每个子图像所
对应的权重。
250.其中,对于相邻的子图像,考虑到相邻的子图像可能对应于同一个物体,则可基于相邻的子图像所对应的物体之间相似关系,确定每个子图像所对应的权重。相邻的子图像所对应的物体之间相似关系可以通过相邻的子图像中各子图像对应的候选点间的相似关系表示。
251.在本发明的可选方案中,每个候选点可通过一个向量表示,则可通过向量内积表示一个候选点与其相邻的候选点之间的相似关系,如果向量内积的值大于阈值,则表示两个候选点相似,否则,如果两个向量内积的值小于阈值,表示这两个候选点不相似。对于一个候选点和其相邻的候选点,分别确定每个候选点对应的相似候选点的个数,不同的个数对应不同的权重,个数越多,表示该候选点属于某类物体的可能性越大,对应的权重越大,则在确定得到上述一个候选点与其相邻的候选点中每个候选点对应的权重后,可将这几个权重进行融合(比如,求平均值),将融合后的权重作为该一个候选点对应的权重。由此,在确定一个子图像对应的权重时,考虑到该一个子图像与其相邻的子图像之间的相似关系,可使得该子图像的权重确定的更加准确。
252.在本发明的可选方案中,每个候选点可以对应一个分数,该分数表示该候选点属于某类物体的概率,概率越大,表示属于该类物体的可能性越大。
253.在一可选方案中,还可通过进一步对该概率值进行归一化处理,通过归一化结果标识该候选点是否属于该类物体,比如,大于设定概率值的候选点的归一化结果为1,表示该候选点属于该类物体,不大于设定概率值的候选点的归一化结果为0,表示该候选点不属于该类物体。
254.作为一个示例,以确定子图像a所对应的权重为例,该子图像a的相邻子图像为子图像b和子图像c,子图像a对应的候选点为候选点a,子图像b对应的候选点为候选点b,子图像c对应的候选点为候选点c,每个候选点对应一个向量,候选点a对应的向量为x,候选点b对应的向量为y,候选点c对应的向量为z,分别计算每两个候选点之间的向量内积,假如,候选点a对应的相似候选点为2个,即候选点b和候选点c均为候选点a的相似候选点,候选点b对应的相似候选点为1个,即候选点a,候选点c的相似候选点为1个,即候选点a,2个相似候选点对应的权重为w1,1个相似候选点对应的权重为w2,则候选点a所对应的子图像a的权重为(w1+w2+w1)/3。同理其他的子图像的权重也可以基于上述方式确定,在此不再赘述。
255.在训练包括上述方法的神经元网络时每个候选点对应一个损失,而每个子图像的评价也对应一个损失。在梯度反传的时候,对于每个子图像对应的梯度进行约束,避免梯度过大。其中,一种进行约束的方式是对梯度乘以一个小于1的系数。
256.在本发明的方案中,可以基于子图像(可称之为锚点)的中心点特征(子图像中心位置处对应的特征)来预测物体的类别和位置,但是,自然场景中的物体会有各种挑战,比如遮挡和形变。之前的基于锚点的单步方法使用锚点中心的特征来预测物体的类别和位置,隐含表示整个物体的表观被用来做预测。因为训练数据很难包含所有的半遮挡,所训练的模型很难学到所有情况下的表观。当物体特征在被遮挡区域,检测精度会下降。为了解决这个问题,对于每个特定的锚点我们用多个相邻的格子(可称之为子图像)来做预测。每个相邻的格子主要表示物体的部分的特征(可称之为子特征图),也就是重点关注部分的物体表观。通过未遮挡区域的预测,我们仍然可以得到鲁棒的检测。我们的模型基于refinedet。
但是,refinedet对于一个锚点只做一次预测,而我们的方法做多次预测。通过这种方式,我们的方法可以对部分遮挡更加的鲁棒。
257.如图2的网络结构示意图,在我们的网络中,我们使用和refinedet一样的锚点更新模块和迁移链接模块,并使用后面的特征图(p3,p4,p5,p6)来做检测。对这四个特征图的每一个,我们都采用多次预测的方式进行预测。在训练阶段,多个预测提供多个预测的损失。在测试阶段,根据各个格子的权重,我们将多个预测的结果结合起来作为最终的预测结果(可称之为物体的提案结果)。
258.使用多区域预测的检测。我们在4个特征图,p3,p4,p5,p6上进行检测。对每个更新的锚点,类别的标号和位置用一个向量表示。类别标号和位置同时进行预测。为得到位置敏感的预测,对每一个锚点,我们不仅使用中间的格子,也使用附近的格子。在本文中,为方便起见,中间的格子和周围的格子都称为附近格子。在得到结合的特征图之后,比如p3,对每个锚点,我们通过对多个格子的预测进行统计得到它的预测。如图2中所示,我们对每个特征图分别通过多区域预测模块,得到每个特征图对应的预测。在每个多区域预测模块中,我们对一个特征图,比如p3,进行k个偏移卷积得到k个相邻格子的预测输出。同时,我们使用格子预测模块得到每个格子的权重。然后,这些信息通过预测融合模块进行融合,得到最终的预测输出。每个格子的预测对应一个损失。同时,融合预测模块的输出也对应一个损失。这样可以减少过拟合。
259.在该示例中,定义类别数目为n,附近格子数为k。假定一个特征层有m个锚点。这样,一层内的预测输出的维度是(n+4)
×
m
×
k。此处位置使用一个4维的向量表示。在本文中,我们使用5个附近格子,但是也可以用其它数目的格子。不同区域有不同的可靠性。我们提供了两种推断格子可靠性的方式,并根据这种可靠性来将各种不同格子的预测结果结合起来。定义a
k
是格子k的权重,k=1,...k,p
k
为格子k对应的特征图,s.t.表示满足约束条件,s.t.为满足于satisfy to或者倾斜到straint to的简写,这个结合起来后的预测结果被定义为:
[0260][0261]
其中,0≤a
k
≤1,基于结合起来后的预测结果,一个图上的最终的物体的包围框可通过非极大值抑制得到。
[0262]
对与这k个附近格子的每一个,我们定义一个预测器。每个预测器仅解释它对应的格子的信息。例如,上面的格子的预测器只利用上面格子周围的特征信息。其它格子预测器以此类推。一般的,区域特征可以用来推断整体的信息。比如,给定头部的区域,我们可以推断整体物体在哪里。因此,附近格子的检测器可以推断中心格子处的物体的信息。此外,当一些区域遭受遮挡的时候,通过其它区域的预测,我们仍然可以得到鲁棒的预测。这k个格子对应同一个锚点。也就是说,它们有同样的锚点参数,包含位置(x,y),宽度和高度。
[0263]
锚点有不同的尺寸,对于大的锚点,附近格子倾向于落在物体区域内。然后,附近格子倾向于表示物体的部分信息。也就是说,我们的方法类似于将物体进行分割。在这种情况下,当物体的部分被遮挡时,通过其它的部分整个物体仍然可以被检测出来。对于小的锚点,附近格子倾向于既包含物体的部分表观又包含附近的环境信息。因为环境信息对于区别小物体很有用处,所以这种策略对检测小物体很有效。
[0264]
损失函数。在这个系统中,有两种损失函数,分类损失l
class
和定位损失l
loc
。整个损失函数定义为:
[0265]
l=l
loc
+l
conf
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0266]
这里,l
loc
表示所有锚点的位置损失,l
class
表示所有锚点的分类损失。对于l
class
,我们使用soft-max损失函数,对于l
loc
我们使用smooth l1损失。在训练阶段,对每一个附近格子预测器,我们定义一个独立的损失。因此,k个附近格子有k个损失。这个结合的预测也对应一个损失。对于第i个特征图,第k个附近格子预测器,定义和分别是它的分类以及位置的损失。定义和分别是第i个特征图的分类以及位置的损失。定义f是用于预测的特征图集合。分类损失以及位置损失定义为,
[0267][0268][0269]
通过定义多个损失,我们增加了更多的正则约束,这样可以减少过拟合。
[0270]
在本发明的方案中,我们提出了两种策略来推断格子的权重。一种是根据格子自身的信息,一种是根据格子之间的关系。
[0271]
第一种,根据格子自身的信息确定各子的权重。格子的权重受格子的特征的影响。例如,当一个格子的特征更加的有判别力,这个特征倾向于对预测提供更多的可靠性。相反,如果这个特征受到遮挡或者有很多的噪音,那么这个特征对于预测来说可靠性会更低一些。我们基于格子的特征采用学习的方式得到最优的格子权重。也就是说,我们可以卷积的方式得到格子权重。
[0272]
如图3所示,给定特征图,比如p3,其通过偏移卷积得到它的类别和位置预测,同时通过另一个偏移卷积和sigmoid得到它的权重。每个格子的预测和权重都输入到预测融合层中进行融合,得到最终的预测输出。
[0273]
其中,对于格子k,定义a
′
k
表示卷积之后的权重。然后,我们对它施加sigmoid函数得到a
′
k
,然后得到最终的权重a
k
为:
[0274][0275]
其中,i=1,...,k,通过这种方式,公式(1)中的约束可以得到满足。根据这种方法,更可靠的格子可以得到更大的权重。
[0276]
第二种,根据格子之间的关系推断格子的权重。在第一种策略中,我们没有用格子之间的信息,但这种信息很有用。有三种格子间的关系可以用来推断格子的权重。
[0277]
如图4a所示,对于格子a处的锚点,有5个附近格子。
[0278]
如图4b所示,以格子b为例,这三种关系包括,1)它的邻居格子的特征集合f
b
,2)在b处的锚点的预测3)b的邻居对与a处的锚点的预测根据这些关系,预测a处的锚点b的权重定义为:
[0279]
[0280]
这里,表示相邻格子的物体关系。例如,图像里面有个人在骑马。马和人同时出现。当一个格子被判断为马,那它上面的格子有很大的概率包含一个人。但是,如图4(b)所示,当我们要预测a处的锚点的类别信息时,需要知道而的推断依赖于因此,给定下面的特征图,这中关联关系在整个特征图上构成了一个图结构。这个图结构可以通过概率图模型解决。为了解决这个问题,需要采用信任传播的方式来推断格子权重。这导致模型很难端到端的训练。
[0281]
为了解决这个问题,本方案中不考虑如此我们定义:
[0282][0283]
通过这种方式,我们可以端到端的训练。这种新的关系如图4(c)表示,图4(c)表示中示出了当不考虑时,格子之间的关系。在此图中,圆圈表示格子,格子之间的联系表示两个格子之间在推断格子权重时是邻居。在这个图里面,每个格子有四条边和其它的格子相连,而不同的格子的权重通过不同的特征得到。为了简便起见,我们进一步简化这种关系(如图5所示的关系)。对于给定特征图,我们将其分别通过k个偏移卷积得到各个格子的预测。这些预测拼接起来得到一个特征图。同时将这个特征图通过偏移卷积和卷积得到一个特征图。这两个特征图拼接起来,表示格子之间的关系,将拼接后的特征图通过卷积以及sigmoid卷积,得到各个格子的权重。然后,这些信息通过预测融合层进行融合,得到最终的预测输出。也就是说,我们把k个相邻格子的类别预测和特征全都拼接在一块得到一个特征图,然后对这个特征图进行卷积以及sigmoid操作,得到各个格子的权重。
[0284]
其中,对于偏移卷积层,在我们的方法中,k个相邻格子使用共同的锚点来预测。为了计算效率,我们提出了一种新的层用于对不同的相邻格子做卷积。在这个层中,对一个具体的锚点,上面的格子的感受野沿着竖方向偏移-1。对于其它的相邻格子,感受野的偏移采用同样的方式。在第二种格子权重的推断方式中,我们选择五个格子作为感受野。通过这种方式,多个预测的结合和后面的损失函数的计算过程都可以更加的方便。
[0285]
约束卷积分支的梯度。当反传梯度时,k个相邻格子的梯度加在一起反传。这可以看作是把梯度乘以k倍。有的时候,这会导致梯度发散。为了解决这个问题,我们可以将梯度乘以一个小数。
[0286]
在本发明的可选方案中,基于各个子图像对应的子特征图,确定每个子图像的权重,可以包括以下任一种:
[0287]
第一种,对于每个子图像,确定该子图像中心位置处对应的第一特征向量,以及该子图像对应的子特征图对应的第二特征向量;基于各子图像对应的第一特征向量和第二特征向量,确定每个子图像的权重;
[0288]
其中,每个子图像中心位置处对应的特征属于某类物体的可能性最大,该中心位置处对应的特征可以通过一个特征向量(第一特征向量)表示,通过每个子图像对应的子特征图,可以确定出该子特征图属于某类物体的可能性,子特征图也可以通过一个特征向量(第二特征向量)表示,对于同一个子图像,基于第一特征向量和第二特征向量之间的内积作为该子图像的权重,通过该权重表示该子图像属于某类物体的可能性,可使得该子图像的权重确定的更加准确。其中,上述第二特征向量可以是通过上述神经网络模型确定得到
的。
[0289]
第二种,对于每个子图像对应的子特征图,该子特征图对应至少一个概率值,每个概率值表征该子特征图属于对应物体的概率;将至少一个概率值中的最大概率值作为该子图像的权重。
[0290]
其中,每个子图像对应一个子特征图,对于每个子特征图,属于各个物体的都有对应的一个概率值,则每个子特征图可以对应至少一个概率值,一个概率值表示该子特征图属于某类物体的概率,最大概率值表示该子特征图属于某类物体的可能性最大,则可以将该最大概率值作为该子特征图的权重。
[0291]
下面结合图6和图7,对上述基于深度图像和彩色图像得到物体的提案结果的方案进行进一步的说明:
[0292]
如图6所示,分为两个部分,模型预测和模型训练部分,模型训练部分主要描述的是基于待处理图像,确定待处理图像中物体的提案结果的方案,其中,待处理图像包括同一场景对应的深度图像和彩色图像。训练部分主要描述的是训练mlp编码器的方案,其中,基于训练得到的mlp编码器可用于提取三维点云数据(图6中所示的3d点云)。
[0293]
在本实施例中,首先要训练好mlp编码器和神经网络模型,其具体训练过程如前文所描述,在此不再赘述。在mlp编码器训练的过程中,如前文描述,可基于样本图像的三维检测结果调整mlp编码器的参数,具体过程为:将预测结果(样本图像的预测三维检测结果)与标注结果(样本图像的标注三维检测结果)进行比较,如果预测结果和标注结果之间的差异不满足收敛条件,则调整mlp编码器的参数,直至预测结果与标注结果之间的差异满足收敛条件,此时训练好的模型作为mlp编码器。
[0294]
上述预测结果可以包括三维物体框(图7中的三维方框检测)、三维关键点(图7中的3d关键点估计)、三维物体分割结果(图7中所示的三维形状分割)。可以理解的是,上述三维检测结果可在训练时组合使用。通过三维检测结果确定训练的mlp编码器所提取的特征是否准确。
[0295]
神经网络模型包括图6中所示的卷积神经元网络和物体提案神经元网络,基于训练好的神经网络模型,可以基于第三特征图,得到待处理图像中物体的提案结果(图6中所示的物体提案)。
[0296]
对于彩色图像,通过卷积神经元网络提取彩色图像的特征,得到第二特征图,第二特征图中是逐像素的图像特征,即二维特征。
[0297]
对于深度图像,先将深度图像转换为三维点云数据(图6中所示的3d点云),然后通过训练好的mlp编码器对3d点云进行特征提取,得到第一特征图,第一特征图中是逐点的三维特征,该三维特征可以描述物体在三维空间中的三维结构特征。
[0298]
对第一特征图和第二特征图进行融合,得到第三特征图,将第三特征图输入至卷积神经元网络,通过卷积神经元网络对该第三特征图进行进一步的处理,然后在将卷积神经元网络的输出输入至物体提案神经元网络,通过该网络得到物体提案。如图7所示,物体神经元网络的输出可以包括待处理图像的中物体对应的区域图像(图7中所示的物体区域提案)、包围框、二维图像区域分割结果或关键点(图7中所示的语义关键点估计)中的至少一项。基于物体神经元网络的输出可以确定得到物体提案。
[0299]
由于待处理图像包括深度图像和彩色图像,如果提案结果为带物体区域标识的图
像,深度图像和彩色图像分别对应一个提案结果,即深度图像对应的提案结果为一个带物体区域标识的深度图像,彩色图像对应的提案结果为一个带物体区域标识的彩色图像。
[0300]
本发明的可选方案中,该方法还可以包括:
[0301]
基于提案结果,确定待处理图像中物体的三维检测结果,三维检测结果中包括三维姿态结果和三维分割结果中的至少一项。
[0302]
其中,在确定出待处理图像中的物体的提案结果后,可以基于该提案结果进行进一步的处理,比如,基于该提案结果,确定待处理图像中物体的三维检测结果。其中,三维姿态结果表示的是物体在图像中的姿态,比如,物体在图像中的旋转角度,平移距离等。三维分割结果表示的是将无图从图像中分割出来,比如,图像中包括床和沙发,则将三维分割结果表示的是将图像中的床和沙发分别分割出来,且该分割结果是三维的,即可以显示出物体的三维几何特征。
[0303]
本发明的可选方案中,三维检测结果包括三维姿态结果和三维分割结果;基于提案结果,确定待处理图像中物体的三维检测结果可以包括:
[0304]
提取提案结果对应的三维点云特征和二维图像特征;
[0305]
将三维点云特征和二维图像特征进行拼接,得到第四特征图;
[0306]
基于第四特征图,确定待处理图像中物体的三维检测结果。
[0307]
在确定物体的三维检测结果时,可以对提案结果进行特征提取,由于提案结果是基于深度图像和彩色图像得到的,则从提案结果中可以提取得到三维点云特征(深度图像对应的特征)和二维图像特征(彩色图像对应的特征),则基于该三维点云特征和二维图像特征可以更加准确的确定物体的三维检测结果。
[0308]
本发明的可选方案中,若三维检测结果包括三维分割结果,待处理图像中包括不完整形状的物体,基于三维点云数据,得到场景中物体的提案结果,可以包括:
[0309]
基于不完整形状的物体,对不完整形状的物体对应的三维点云数据进行形状补全,得到补全后的三维点云数据;
[0310]
基于补全后的三维点云数据,得到场景中物体的提案结果。
[0311]
其中,在图像拍摄时,可能由于拍摄原因或其他原因,导致图像中的物体没有拍摄完整,比如,深度图像是基于深度传感器拍摄得到的,可能由于遮挡或物体表面反光使得拍摄的图像中某个物体的形状不完整,有缺失的部分。则为了物体的提案结果中对应的物体是完整形状的物体,可以对不完整形状的物体进行形状补全。
[0312]
在本发明的可选方案中,可基于mlp编码器和mlp解码器构成的物体的三维形状补全网络对不完整形状的物体对应的三维点云数据进行形状补全。物体三维形状补全网络的输入为不完整形状的物体对应的三维点云数据,输出为补全后的三维点云数据,物体三维形状补全网络是基于完整形状的物体对应的三维点云数据以及不完整形状的物体对应的三维点云数据对初始模型进行训练得到的,将预测结果与标注结果(完整形状的物体对应的三维点云数据)之间的差异作为损失函数,在损失函数收敛时,所对应的初始模型为物体三维形状补全网络。其中,可将预测结果对应的特征点与标注结果对应的特征点之间的emd距离(earth mover’s distance,搬土距离)表征预测结果与标注结果之间的差异,在emd距离小于设定距离时,表示损失函数收敛,相反,在emd距离不小于设定距离时,表示损失函数不收敛。
[0313]
上述三维形状补全网络的测试过程可如图8所示,在图8中,在三维形状补全网络的测试过程中,物体的提案结果为包括物体区域的图像,彩色图像中物体的提案结果为第一图像,深度图像中物体的提案结果为第二图像,基于第一图像和第二图像,将第二图像转换为三维点云数据(图8中所示的点云),然后对三维点云数据进行三维物体分割,分割出三维点云数据中属于物体的点,接着通过mlp编码器对三维物体分割处理后的三维点云数据进行特征提取,得到第二图像对应的特征图(三维点云特征);基于该特征图,通过mlp编码器和mlp解码器构成的三维形状补全网络对该特征图中具有不完整形状的物体进行形状补全,将补全后的特征图作为预测结果,确定该预测结果与该不完整形状的物体对应的标注结果之间的差异,该差异小于第一设定值,则表示损失函数(图8中所示的三维分割损失函数)收敛,如果该差异不小于第一设定值,则表示该三维分割损失函数不收敛,需要调整三维形状补全网络的参数,以使得该损失函数收敛。
[0314]
同样的,通过卷积神经元网络对第一图像进行特征提取,得到第一图像对应的特征图(二维图像特征),对第一图像对应的特征图和第二图像对应的特征图进行特征拼接,得到拼接后的特征图(第四特征图),该拼接后的特征图经过卷积神经元网络,得到不完整形状的物体的三维姿态结果,将该三维姿态结果作为预测结果,确定该预测结果与该不完整形状的物体对应的标注结果之间的差异,该差异小于第二设定值,则表示三维姿态估计损失函数收敛,如果该差异不小于第二设定值,则表示该三维姿态估计损失函数不收敛,需要调整三维形状补全网络的参数,以使得该损失函数收敛。
[0315]
在上述训练三维形状补全网络的过程中,不仅可以将物体的三维姿态结果作为预测结果,还可以将物体的三维关键点估计结果、形状补全结果、三维形状匹配结果中的至少一项作为预测结果,基于上述预测结果,以及对应的标注结果,通过对应的损失函数,调整三维形状补全网络的参数。
[0316]
如图9中采用其他的预测结果对三维形状补全网络进行训练的示意图,图9中的可选设计所对应的结果可作为预测结果,三维关键点估计结果(图9中所示的三维关键点估计)对应的损失函数为3d欧式距离损失函数,形状补全结果(图9中所示的补全)对应的损失函数也为3d欧式距离损失函数,三维形状匹配结果(图9中所示的三维形状匹配)对应的损失函数为形状匹配损失函数。基于上述预测结果中的任一个以及对应的损失函数,可以通过上述方式调整三维形状补全网络的参数。
[0317]
本发明的可选方案中,基于第一特征图,得到场景中物体的提案结果是通过神经网络模型的输出得到的,神经网络模型是通过以下方式训练得到的:
[0318]
获取样本图像,每个样本图像包括场景的深度图像,每个样本图像中标注有各物体的标注结果,标注结果表征了样本图像中每个物体的提案结果;
[0319]
基于各样本图像中对应的深度图像的特征图,对初始网络模型进行训练,直至初始网络模型的损失函数收敛,将训练结束时的模型作为神经网络模型;
[0320]
其中,损失函数的值表征了各样本图像的预测结果和标注结果的差异程度。
[0321]
其中,上述基于第一特征图,得到场景中物体的提案结果可以通过神经网络模型的输出得到的,即神经网络模型的输入为第一特征图,输出可以为前文描述的待处理图像的中物体对应的区域图像、包围框、二维图像区域分割结果或关键点中的至少一项。则可基于神经网络模型的输出得到待处理图像中物体的提案结果。
[0322]
可以理解的是,前文所描述的基于第三特征图得到场景中物体的提案结果也可以神经网络模型的输出得到,则神经网络模型的输入为第三特征图,输出上述输出一致。
[0323]
相应的,神经网络模型的训练也可以基于上述相同的方式训练得到,在此不再赘述。
[0324]
本发明的可选方案中,样本图像中包括至少两个物体,标注结果中还包括至少两个物体中各物体对中每对物体对之间的空间位置关系,预测结果为至少两个物体中的每个物体的提案结果,以及至少两个物体中各物体对中每对物体对之间的空间位置关系,每对物体对包括相邻两个物体;空间位置关系表征了相邻的两个物体之间的重叠体积;
[0325]
初始网络模型的损失函数包括第一损失函数和第二损失函数,第一损失函数的值表征了样本图像中的每个物体的预测结果与每个物体相对应的标注结果之间的差异程度,第二损失函数的值表征了至少两个物体中各物体对中每对物体对所对应的预测结果与相对应的标注结果之间的差异程度。
[0326]
其中,在场景中可能出现邻近的物体,相邻的两个物体之间可以重叠,也可以不重叠。两个物体之间的位置关系,可以影响物体的提案结果,比如,场景中,椅子的部分放在桌面下方,即椅子与桌子之间有重叠体积,在分别确定桌子和椅子的提案结果时,如果考虑到这两个物体之间的三维位置关系,可以使得得到的提案结果更加准确。
[0327]
基于此,在神经网络模型训练的过程中,损失函数不仅包括单独的每个物体的预测结果与每个物体相对应的标注结果之间的差异程度,还考虑到了各物体对中每对物体对所对应的预测结果与相对应的标注结果之间的差异程度。其中,空间位置关系可以基于物体对中每个物体的三维包围框确定,基于两个物体各自对应的三维包围框,可以确定出这两个物体之前是否存在重叠体积。
[0328]
在一个可选方案中,第二损失函数可通过以下公式(8)表示:
[0329]
loss_s=(1-s)overlap(3dbox_1,3dbox_2)+s*margin(1-t)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0330]
其中,loss_s为第二损失函数,3dbox_1表示一个物体的三维包围框,3dbox_2表示另一个物体的三维包围框,overlap(3dbox_1,3dbox_2)表示这两个物体之间的重叠体积,s为真实值ground truth(gt),即这两个物体对应的标注结果,其中,s∈{0,1},margin是一个大于0的常数,可基于实际需求配置,比如,为大于所有可能的重叠区域体积值的最大值。在第二损失函数等于margin时,表示第二损失函数未收敛,在第二损失函数等于0时,表示第二损失函数收敛。
[0331]
如果overlap(3dbox_1,3dbox_2)>0,t=1;如果overlap(3dbox_1,3dbox_2)=0,t=0。1表示两个物体之间存在重叠,0表示两个物体之间不存在重叠。
[0332]
基于上述第二损失函数的公式可知,在overlap(3dbox_1,3dbox_2)>0,t=1时,loss_s=(1-s)overlap(3dbox_1,3dbox_2),在overlap(3dbox_1,3dbox_2)=0,t=0时,loss_s=s*margin(1-t)。s=1时,表示两个物体之间存在重叠,此时,如果预测结果是overlap(3dbox_1,3dbox_2)>0,t=1所对应的损失函数,loss_s=(1-s)overlap(3dbox_1,3dbox_2)=0,loss_s=0表示预测结果与标注结果之间没有差异,第二损失函数收敛,否则,如果预测结果对应的是verlap(3dbox_1,3dbox_2)=0所对应的损失函数,loss_s=s*margin(1-t)=margin,loss_s=margin,此时,第二损失函数未收敛。
[0333]
同理,s=0时,表示两个物体之间不存在重叠,此时,如果预测结果是overlap
(3dbox_1,3dbox_2)=0,t=0所对应的损失函数,loss_s=s*margin(1-t)=0,loss_s=0表示预测结果与标注结果之间没有差异,第二损失函数收敛。如果预测结果是overlap(3dbox_1,3dbox_2)>0,t=1所对应的损失函数,loss_s=(1-s)overlap(3dbox_1,3dbox_2)=overlap(3dbox_1,3dbox_2)>0,表示第二损失函数未收敛。
[0334]
在模型的训练过程中,对应于从相邻的物体的提案结果中得到的一对物体三维姿态结果,可以基于上述方法计算第二损失函数,如图10所示,第二损失函数通过训练过程中的反向传播,对模型的参数进行更新,从而使模型学习到使用三维空间中相邻物体的空间关系的能力。具体如图10中所示的基于第二损失函数进行模型训练的示意图,基于两个相邻的物体的提案结果,分别为图10中所示的物体提案1和物体提案2,基于这两个物体提案,分别确定对应物体的三维姿态,三维姿态的确定过程如前文图8中确定三维姿态的过程相同,在此不再赘述。将得到的两个三维姿态作为预测结果,确定物体提案1对应的预测结果与对应的标注结果之间的差异程度,以及物体提案2对应的预测结果与对应的标注结果之间的差异程度,基于这两个差异程度与第二损失函数(图10中所示的空间损失函数),对模型的参数进行更新,使得模型学习到使用三维空间中相邻物体的空间关系的能力。
[0335]
作为一个示例,如图11所示的两个图像之间的空间位置关系,情况1表示的是3dbox_1所对应的物体与3dbox_2所对应的物体之间存在重叠体积,此时,s=1;情况2表示的是3dbox_1所对应的物体与3dbox_2所对应的物体之间不存在重叠体积,此时,s=0。图12中示出了物体对应的三维包围框之间的空间位置关系,如图12中所示,图12中示出了三个物体对应的三维包围框,该三个包围框可分别对应三个不同的物体,三个包围框相互之间没有重叠,对应于上述情况2。
[0336]
可以理解的是,在训练神经网络模型的过程中,如果第一损失函数为三维姿态估计损失函数,则该初始模型的损失函数为图9中所示的三维姿态估计损失函数和空间损失函数。
[0337]
本发明的可选方案中,基于提案结果,确定待处理图像中物体的三维检测结果,可以包括:
[0338]
基于提案结果,确定待处理图像中物体的初始三维检测结果;
[0339]
确定待处理图像中物体对应的原始图像,原始图像是物体处于基准姿态时所对应的图像;
[0340]
基于各物体的初始三维检测结果以及对应的原始图像,确定每个物体的初始三维检测结果对应的差异信息;
[0341]
基于每个物体的初始三维检测结果对应的差异信息,对对应的物体的初始三维检测结果进行更新,得到待处理图像中每个物体的三维检测结果。
[0342]
其中,在基于提案结果确定待处理图像中每个物体的三维检测结果过程中,为了提高三维检测结果的准确性,可基于每个物体对应的原始图像对初始三维检测结果进行调整,即基于原始图像,对初始三维检测结果进行细化,使其更加准确。通过初始三维检测结果对应的差异信息来表示初始三维检测结果是否准确,如果初始三维检测结果对应的差异信息满足设定条件,表示该初始三维检测结果相对准确,不需进行更新,如果该初始三维检测结果对应的差异信息不满足设定条件,表示该初始三维检测结果不够准确,需要进行更新。其中,设定条件可以基于实际需求配置。
[0343]
其中,原始图像可以为物体cad模型中的图像,基准姿态可以为物体的任意姿态,在本发明的可选方案中,基准姿态可以为正面姿态。
[0344]
可以理解的是,上述基于提案结果确定待处理图像中物体的三维检测结果也可以通过神经网络模型实现,则在神经网络模型训练的过程中,可按照上述基于初始三维检测结果对应的差异信息,对对应的物体的初始三维检测结果进行更新的方式,对神经网络模型的参数进行更新,即在差异信息不满足设定条件时,对模型参数进行更新,直到更新后的初始三维检测结果对应的差异信息满足设定条件,停止对模型参数的更新,基于此时得到的神经网络模型,可以得到更加准确的三维检测结果。
[0345]
在一可选的方案中,初始三维检测结果中包括初始三维分割结果,确定待处理图像中物体对应的原始图像,可以包括:
[0346]
基于各物体的初始三维分割结果,确定各物体的物体类别;
[0347]
基于各物体的物体类别,确定每个物体对应的原始图像。
[0348]
其中,不同的物体具有不同的物体类别,通过物体类别可以更加准确的确定出物体对应的原始图像。原始图像可以为三维计算机辅助设计cad图像。
[0349]
本发明的可选方案中,初始三维检测结果中包括初始三维姿态结果,基于各物体的初始三维检测结果以及对应的原始图像,确定每个物体的初始三维检测结果对应的差异信息,可以包括:
[0350]
基于各物体的初始三维姿态结果,对对应的原始图像进行姿态变换,得到每个物体对应的变换后的图像;
[0351]
基于各物体的初始三维检测结果以及对应的变换后的图像,确定每个物体的初始三维检测结果对应的差异信息。
[0352]
其中,基于各物体的初始三维检测结果以及对应的原始图像,可采用对齐估计的方式确定每个物体的初始三维检测结果对应的差异信息。具体的,各物体的初始三维检测结果中包括每个物体对应的姿态信息,即初始三维姿态结果,基于每个物体的姿态信息,对对应的原始图像进行姿态变换,使得变换后的图像中的物体与初始三维姿态结果对应的物体具有相同的姿态,则基于变换后的图像和对应的初始三维检测结果,可以确定出每个物体与变换后的图像之间的差异信息,即每个物体的初始三维检测结果对应的差异信息,该差异信息中可以包括初始三维姿态结果对应的差异信息或初始三维分割结果对应的差异信息中的至少一项。也就是说,如果确定出的差异信息是初始三维姿态结果对应的差异信息,则基于该差异信息,可以对对应的初始三维姿态结果进行更新,如果确定出的差异信息是初始三维分割结果对应的差异信息,则基于该差异信息,可以对对应的初始三维分割结果进行更新。
[0353]
其中,差异信息可以包括初始三维分割结果中所缺失的点、误差点等,以及初始三维姿态结果对应的三维姿态误差点。
[0354]
在一可选方案中,在基于各物体的初始三维检测结果以及对应的原始图像,确定每个物体的初始三维检测结果对应的差异信息的过程中,可基于各物体的初始三维检测结果对应的三维点云数据,以及对应的原始图像对应的三维点云数据,确定每个物体的初始三维检测结果对应的差异信息。
[0355]
在一个可选的方案中,在上述基于各物体的初始三维检测结果对应的三维点云数
据,以及对应的原始图像对应的三维点云数据,确定每个物体的初始三维检测结果对应的差异信息的过程中,为了便于处理,可先对初始三维检测结果对应的三维点云数据和对应的原始图像对应的三维点云数据进行归一化处理,再基于归一化处理后的原始图像所对应的三维点云数据,以及归一化后的初始三维检测结果所对应的三维点云数据,确定每个物体的初始三维检测结果对应的差异信息。
[0356]
在一个可选的方案中,一种归一化处理的方式为:对原始图像对应的三维点云数据进行采样,使得原始图像对应的三维点云数据与初始三维检测结果对应的三维点云数据具有同样的点云密度。
[0357]
作为一个示例,如图13中所示的一种三维分割结果与三维姿态结果的细化方法示意图,在图13中,基于彩色图像和深度图像(图13中所示的彩色深度输入),基于前文所描述的确定图像中物体的提案结果的方案,确定物体提案,物体提案包括深度图像中物体的提案结果以及彩色图像中物体的提案结果,基于物体提案,确定三维检测结果(初始三维检测结果),该初始三维检测结果包括三维分割结果和三维姿态结果(图13中所示的三维分割与姿态估计);基于初始三维分割结果,确定出图像中物体的物体类别以及物体对应的点云数据(对应图13中的分割的物体点云),基于初始三维姿态结果,确定物体的三维姿态。
[0358]
基于物体类别,从cad数据库中检索到与该物体类别对应的原始图像(对应图13中所示的物体cad模型<检索>),基于物体的三维姿态,对原始图像进行姿态变换,使得原始图像中物体的姿态与三维姿态一致,得到变换后的图像,分别对变换后的图像的三维点云数据和三维分割结果对应的物体的三维点云数据进行对齐估计(对应图13中的cad-点云姿态对齐估计),得到对齐误差(差异信息),在本示例中,设定条件为设定阈值,差异信息满足设定条件指的是对齐误差小于设定阈值,相应的,差异信息不满足设定条件指的是对齐误差不小于设定阈值。
[0359]
基于此,将该对齐误差与设定阈值进行比较,如果该对齐误差小于设定阈值,表示该对齐误差足够小,则不需要对初始三维检测结果进行更新,将初始三维检测结果作为最终的三维检测结果,最终的三维检测结果包括最终三维姿态和最终三维分割。相反,如果该对齐误差不小于设定阈值,表示该对齐误差不够小,则需要对上述初始三维检测结果进行更新,如果对齐误差是误差点和缺失点对应的误差,则可只对初始三维分割结果进行更新,直到更新后的三维分割结果对应的对齐误差小于设定阈值,将此时的三维分割结果作为最终的三维分割结果。如果对齐误差是姿态误差,则可只对初始三维姿态结果进行更新,直到更新后的三维姿态结果对应的对齐误差小于设定阈值,将此时的三维姿态结果作为最终的三维姿态结果。
[0360]
在一个可选的方案中,可通过两支mlp网络,确定每个物体的初始三维检测结果对应的差异信息。
[0361]
作为一个示例,如图14中所示的基于cad图像与点云对齐的三维检测结果细化方案示意图,在图14中,初始三维检测结果包括初始三维分割结果和初始三维姿态结果,对初始三维分割结果对应的三维点云数据进行点云归一化,然后通过mlp编码器对归一化处理后的三维点云数据进行特征提取,得到第一特征,从cad模型中确定物体对应的原始图像,基于初始三维姿态结果(图13中所示的三维姿态),对该原始图像进行姿态变换,得到变换后的图像,对变换后的图像中物体对应的三维点云数据进行点云归一化,然后同样通过mlp
编码器对该归一化处理后的三维点云数据进行特征提取,得到第二特征,基于第一特征和第二特征,再通过mlp编码器确定第一特征中物体的初始三维检测结果对应的差异信息,该差异信息包括初始三维分割结果对应的误差点和缺失点,以及初始三维姿态结果对应的姿态误差,最后基于上述误差点和缺失点可以对初始三维分割结果进行更新(对应图14中所示的三维分割更新),基于上述姿态误差可对初始三维姿态结果进行更新(对应图14中所示的三维姿态更新),直至更新后的每个物体的三维检测结果对应的差异信息满足设定条件,停止更新,得到最终的三维检测结果。
[0362]
其中,图14中包括两支mlp网络,一支mlp网络用于处理三维分割结果对应的三维点云数据,另一支mlp网络用于处理变换后的图像对应的三维点云数据。
[0363]
基于前文所描述的方案,结合图15对上述方案进行进一步的说明:
[0364]
如图15中所示的基于彩色图像和深度图像得到物体的三维检测结果的流程示意图,在图15中,首先,基于深度图像和彩色图像,确定图像中物体的提案结果(对应图15中所示的基于彩色和深度特征的物体提案),然后基于该提案结果,确定物体的三维检测结果,三维检测结果中包括三维分割结果和三维姿态结果(对应图15中所示的联合的三维分割与姿态估计)。接着,基于该三维检测结果,可基于物体对应的原始图像(对应
[0365]
图15中所示的物体三维形状信息),对该三维检测结果进行细化,包括对三维分割结果和三维姿态结果的细化(对应图15中所示的三维分割与姿态估计细化),得到细化后的三维检测结果(对应图15中所示的物体三维分割和物体三维姿态)。
[0366]
图16示出了本发明提供的一种图像处理方法的流程示意图,如图16所示,该方法包括步骤s210和步骤s220,其中:
[0367]
步骤s210,获取虚拟物体对待处理图像中真实物体(也可称之为待变形物体)的变形信息。
[0368]
步骤s220基于变形信息,对真实物体进行变形,得到变形后的待处理图像。
[0369]
基于变形信息,可以使得待处理图像中的真实物体发生形变,以使得虚拟物体与真实物体之间发生交互。
[0370]
本发明的可选方案中,基于变形信息,对真实物体进行变形,得到变形后的待处理图像,包括:
[0371]
确定待变形物体对应的原始图像,原始图像是待变形物体处于基准姿态时所对应的图像;
[0372]
基于待变形物体对应的三维姿态结果,变形信息,以及与待变形物体对应的原始图像,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系,变形前的图像为待处理图像中待变形物体对应的图像;
[0373]
基于变换关系以及待变形物体对应的图像,确定待变形物体所对应的变形后的图像;
[0374]
基于待变形物体所对应的变形后的图像,确定变形后的待处理图像。
[0375]
其中,待变形物体指的是可以形变的物体,比如,床、沙发等。变形请求指的是想要对待变形物体进行变形的请求,该请求可以由用户在用户界面通过指定的标识触发,在本发明的可选方案中,如果待处理图像中包括虚拟物体,该虚拟物体可以是由增强现实技术实现的虚拟物体,还可基于该虚拟物体对待变形物体的运动信息,触发变形请求,其中,可
基于运动信息确定变形信息,变形信息中包括物体的变形方向,以及变形位移。
[0376]
每次变形请求中的变形信息可以是不同的,也可以是相同的。该变形信息可以是预先配置的,比如,基于待变形物体的物体类别,不同物体类别的物体对应的变形信息不同。
[0377]
为了使待变形物体基于变形信息进行相应的变形,可以先基于变形信息确定一个变换关系,该变换关系表征了待变形物体对应的变形后的图像与变形前的图像之间的对应关系,即该待变形物体在待处理图像中对应的图像为变形前的图像,在基于变形信息进行变形得到的图像为变形后的图像,基于该变换关系,可基于变形前的图像,得到变形后的图像。由于待变形物体在待处理图像中有对应的姿态(三维姿态结果对应的姿态),因此,在确定变换关系时,还可以结合待变形物体的三维姿态结果,使得确定的变换关系更准确。
[0378]
可以理解的是,上述待处理图像可以为图1中所示的方案中的待处理图像,三维姿态结果也可以是基于前文所描述的方案中的三维姿态结果。
[0379]
本发明的可选方案中,待变形物体为基于待处理图像的三维分割结果确定的。
[0380]
其中,待处理图像中每个物体都有对应的三维分割结果,待变形物体为待处理图像中的任一个物体,基于三维分割结果可以区分出待处理图像中的各个物体,则基于三维分割结果可以准确的确定出待处理图像中的待变形物体。由于待处理图像包括深度图像和彩色图像,则该待变形物体在待处理图像中对应的图像可以是彩色图像,也可以是深度图像。
[0381]
在本发明的可选方案中,三维检测结果包括三维分割结果,确定待变形物体对应的原始图像,可以包括:
[0382]
基于待变形物体的三维分割结果,确定待变形物体的物体类别;
[0383]
基于待变形物体的物体类别,确定待变形物体对应的原始图像。
[0384]
其中,不同物理类别的物体对应不同的原始图像,通过物体类别可以更加准确的确定出物体对应的原始图像。
[0385]
本发明的可选方案中,基于待变形物体对应的三维姿态结果,变形信息,以及与待变形物体对应的原始图像,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系,可以包括:
[0386]
基于待变形物体的原始图像,变形信息,以及对应关系,确定原始图像中待变形物体对应的变形后的变形点,对应关系是基于样本图像中物体在不同变形信息下、变形前后对应的变形点建立的对应关系;
[0387]
基于待变形物体对应的变形后的变形点,待变形物体变形前的变形点,以及待变形物体对应的三维姿态结果,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系。
[0388]
其中,对应关系可以是预先基于样本图像建立的,样本图像中的物体也是可以形变的物体,样本图像可以为原始图像。对于原始图像中的物体,可以基于不同的变形信息,确定出不同物体变形前后的变形点之间的对应关系。基于该对应关系,可以确定在不同的变形信息下,待变形物体变形后的变形点。在确定了原始图像中待变形物体对应的变形后的变形点后,结合待变形物体变形前的变形点以及待变形物体对应的三维姿态结果,可以确定出上述变换关系。
[0389]
在本发明的一可选方案中,在确定了原始图像中待变形物体对应的变形后的变形点后,由于原始图像为三维图像,三维姿态结果为三维数据,在确定变换关系之前,可将上述三维数据转换为二维数据,则得到的变换关系也是基于二维数据得到的。其中,将三维数据转换为二维数据可基于三维数据和二维数据之间的投影关系进行转换。
[0390]
本发明的可选方案中,基于待变形物体对应的变形后的变形点,待变形物体变形前的变形点,以及待变形物体对应的三维姿态结果,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系,可以包括:
[0391]
确定待变形物体所对应的各变形点中每个变形点的权重;
[0392]
基于各变形点的权重,待变形物体对应的变形后的变形点,待变形物体变形前的变形点,以及待变形物体对应的三维姿态结果,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系。
[0393]
其中,对于待变形物体对应的变形点,待变形物体的变形效果对应于每个变形点的变形效果,对于各个变形点的变形效果,在实际应用中,由于待变形物体的受力点或者施力物体(比如,虚拟物体),可使得待变形物体的每个变形点对应不同变形强度的变形效果。比如,物体受力点对应的变形强度要大于受力点周围其他点对应的变形强度,由此,可使得待变形物体的变形效果更加真实。
[0394]
为了使待变形物体的变形效果更加真实,在对待变形物体进行变形之前,可以确定待变形物体所对应的各变形点中每个变形点的权重,权重的大小表示了变形点的变形强度,权重越大,表示变形强度越大,由此,基于各变形点对应的不同权重,可以在对待变形物体进行变形时,得到更加真实的变形效果。
[0395]
本发明的可选方案中,基于待变形物体所对应的变形后的图像,确定变形后的待处理图像,包括以下至少一项:
[0396]
将待变形物体对应的变形后的图像替换待处理图像中变形前的图像,得到变形后的待处理图像;
[0397]
基于待变形物体对应的变形后的图像以及待变形物体对应的变形前的图像,确定差分图像,基于差分图像,确定变形后的待处理图像。
[0398]
其中,在基于待变形物体所对应的变形后的图像,确定变形后的待处理图像时,可以通过以下至少一种方式实现:
[0399]
第一种,采用图像替换的方式,将变形后的图像替换变形前的图像,即将图像中变形后的待变形物体替换图像中变形前的待变形物体。
[0400]
第二种,采用图像融合的方式,基于变形前的图像和变形后的图像确定差分图像,通过差分图像可以反应出待处理图像变形前后对应的变化,则基于该差分图像,对变形前的待处理图像进行处理即可得到变形后的待处理图像。
[0401]
在本发明的可选方案中,待处理图像可以为视频中的图像,则基于对待处理图像中待变形物体的处理方式,可以对该待变形物体在视频中涉及到的关联帧图像作相同的处理,以使得关联帧图像中的该待变形物体也有对应的变形效果,基于上述处理,可以得到待变形物体在视频中的变形效果。
[0402]
在本发明的可选方案中,待处理图像为视频中的图像,获取针对待处理图像中待变形物体的变形请求,可以包括:
[0403]
基于视频中虚拟物体对待变形物体的运动信息,确定与运动信息对应的图像和变形信息;
[0404]
基于运动信息对应的图像和变形信息,生成针对运动信息对应的图像的变形请求。
[0405]
其中,运动信息对应的图像可以包括视频中连续的多帧图像,运动信息为虚拟物体的运动方向、运动强度等信息,基于虚拟物体的运动信息,可以确定待变形物体的变形信息。虚拟物体的体积越大,对应的运动强度越大,虚拟物体距离待变形物体的距离越大,对应的运动强度也越大。运动强度越大,则对应的变形强度也越大。
[0406]
为了更好的理解上述方案,下面结合具体应用场景的示例对本发明实施例的方案进行进一步的详细说明。
[0407]
如图17中所示的使虚拟物体和真实的可变形物体进行交互的方法的流程示意图,在图17中,首先基于待处理图像,待处理图像包括彩色图像和深度图像,基于前文所描述的方法,确定待处理图像中物体的三维检测结果,三维检测结果中包括三维分割结果和三维姿态结果(对应图17中所示的物体三维姿态估计)。
[0408]
用户通过增强现实ar(augmented reality)控制器触发对待处理图像中待变形物体的变形请求,具体可以是基于待处理图像对应场景中的虚拟物体触发变形请求,该变形请求中包括变形信息。
[0409]
基于待变形物体的三维分割结果(对应图17中所示的通过物体检测),确定该待变形物体的物体类别,基于待变形物体的物体类别,从三维cad模型中检索得到该待变形物体的对应的原始图像;基于变形信息、待变形物体的对应的原始图像,以及对应关系,确定原始图像中该待变形物体变形后的变形点。其中,对应关系是基于样本图像中物体在不同变形信息下、变形前后对应的变形点建立的对应关系,t0时刻的物体可变形表面控制点为变形前的变形点,t1时刻的物体可变形表面控制点为变形后的变形点,基于变形前后的变形点,可以建立上述对应关系(对应图17中所示的可变形模型网格生成)。
[0410]
由于原始图像为三维图像,三维姿态结果为三维数据,将上述三维数据以及三维图像通过三维数据和二维数据之间的投影关系(图17中所示的3d-2d投影),转换为二维数据。转换后,基于待变形物体的三维姿态结果,对原始图像中该待变形物体变形后的变形点进行姿态变换,使得变换后的原始图像中的待变形物体与三维姿态结果中对应的姿态相同。然后再基于姿态变换后的原始图像中该待变形物体变形后的变形点,以及待变形物体变形前的变形点,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系(对应图17中所示的生成图像变形映射)。
[0411]
基于该变换关系,可以基于待变形物体变形前的图像,确定出该待变形物体变形后的图像。则对于待处理图像,可先基于待变形物体,从彩色图像中截取该待变形物体对应的图像(对应图17中所示的彩色图像截取);然后基于上述建立好的变换关系,对待变形物体对应的图像进行图像变形,得到变形后的图像(对应图17中所示的变形后的彩色图像)。
[0412]
基于待变形物体所对应的变形后的图像,确定变形后的待处理图像可以包括两种方式,第一种为:基于变形后的图像,通过视频透射的原理(该原理应用在ar系统中),将待处理图像中的变形前的待变形物体替换为变形后的物体(对应图17中所示的替代视频中的物体),此处,待处理图像可以为视频中的图像。第二种为:基于变形后的图像和变形前的图
像(彩色图像中待变形物体对应的图像),确定差分图像(对应图17中所示的变形前后图像的差分图像);基于光学透射原理(该原理应用在ar系统中),基于差分图像,确定变形后的待处理图像,具体可在增强现实光路中增加差分图像,使得待处理图像中待变形物体具有变形效果。
[0413]
具体结合图18中所示的虚拟物体使图像中的真实物体变形的变形过程示意图,在图18中,待处理图像中的彩色图像和深度图像对应的场景为卧室,卧室中的物体有床(bed)、沙发(sofa)、枕头(pillow)、窗帘(curtain)等,其中,床、沙发、枕头和窗帘是可变形的物体,可以作为待变形物体。
[0414]
基于深度图像和彩色图像,基于前文所描述的方案可以确定得到待处理图像中各物体的三维检测结果,三维检测结果包括三维分割结果(对应图18中所示的三维物体分割)和三维姿态结果(三维物体姿态);由图18中三维物体分割对应的示意图可以看出,待处理图像中的床、沙发、枕头和窗帘均有对应的分割结果,由三维物体姿态对应的示意图可以看出,待处理图像中的床、沙发、枕头和窗帘均有对应的姿态结果。待变形物体具有可变形的表面控制点,即物体表面可以发生形变的变形点,如分割结果的示意图,每个待变形物体对应的网格可以为表面可变形点,比如,床的表面可变形点可以床的上表面上的网格。
[0415]
在虚拟物体要与待处理图像中的床进行交互时,先基于床的三维分割结果,从物体cad模型中确定床对应的原始图像,由图18中所示的物体cad模型可知,该模型中包括不同物体类别的物体对应的原始图像,其中包括床的原始图像,沙发的原始图像,以及其他无图(other)的原始图像。
[0416]
基于该虚拟物体对床的变形信息,以及床对应的原始图像,通过前文所描述的方式对床对应的图像进行变形处理,即对床对应的三维网格进行变形处理(对应图18中所示的三维网格变形),得到原始图像中该床变形后的变形点,由于该床变形后的变形点为三维数据,通过3d-2d投影,将床变形后的三维数据转换为二维数据(对应图18中所示的二维图像变形),转换之后,基于床的三维姿态结果,对原始图像中该床变形后的变形点进行姿态变换,使得变换后的原始图像中的床与三维姿态结果中对应床的姿态相同。
[0417]
基于姿态变换后的原始图像中该床变形前的变形点、变形后的变形点确定床对应的变形后的图像与变形前的图像之间的变换关系,基于该变换关系对二维图像(待处理图像中床对应的图像)进行图像变形,得到床对应的变形后的图像,最后基于床对应的变形后的图像,确定变形后的待处理图像。如图18中所示的ar效果,在待处理图像中,虚拟物体使得图像中的床发生形变,从而实现了虚拟物体与待处理图像中待变形物体之间的交互。
[0418]
基于上述的方案,同样可以对场景中的沙发、窗帘等可变形物体进行相同的变形处理。图19a示出了沙发变形前的效果示意图,图中的带有sait字样的球体表示虚拟物体,由图19a可以看出,沙发的表面处于平整状态,并未发生变形,即虚拟物体未与沙发进行交互。图19b示出了沙发变形后的效果示意图,图中的sait表示虚拟物体,由图19b可以看出,沙发的表面上有一处发生形变,处于凹陷状态,即虚拟物体与沙发进行交互。
[0419]
基于与图1中所示的方法相同的原理,本发明实施例还提供了一种图像处理装置20,如图20中所示,该图像处理装置20可以包括图像获取模块210,三维点云数据确定模块220和提案结果确定模块230,其中:
[0420]
图像获取模块210,用于获取待处理图像,待处理图像包括场景的深度图像;
[0421]
三维点云数据确定模块220,用于基于深度图像,确定深度图像对应的三维点云数据;
[0422]
提案结果确定模块230,用于基于三维点云数据,得到场景中物体的提案结果。
[0423]
可选的,提案结果确定模块230在基于三维点云数据,得到场景中物体的提案结果时,具体用于:
[0424]
基于三维点云数据,将三维点云数据转换为矩阵;
[0425]
基于矩阵,确定第一特征图;
[0426]
基于第一特征图,得到场景中物体的提案结果。
[0427]
可选的,提案结果确定模块230在基于三维点云数据,确定三维点云数据对应的矩阵时,具体用于:
[0428]
确定三维点云数据中属于物体的点云数据;
[0429]
基于三维点云数据中属于物体的点云数据,确定三维点云数据对应的矩阵。
[0430]
可选的,待处理图像中还包括场景的彩色图像,该装置还包括:
[0431]
特征提取模块,用于对彩色图像进行特征提取,得到第二特征图;
[0432]
提案结果确定模块在基于第一特征图,得到场景中物体的提案结果时,具体用于:
[0433]
基于第一特征图和第二特征图,得到场景中物体的提案结果。
[0434]
可选的,提案结果确定模块230在基于第一特征图和第二特征图,得到场景中物体的提案结果时,具体用于:
[0435]
对第一特征图和第二特征图进行融合,得到待处理图像所对应的第三特征图;
[0436]
基于第三特征图,得到场景中物体的提案结果。
[0437]
可选的,提案结果确定模块230在基于第三特征图,得到场景中物体的提案结果时,具体用于:
[0438]
切分待处理图像,得到至少两个子图像;
[0439]
基于每个子图像对应的第三特征图和/或每个子图像的邻近子图像对应的第三特征图,确定每个子图像对应的提案结果;
[0440]
对各子图像对应的提案结果进行融合,得到场景中物体的提案结果。
[0441]
可选的,提案结果确定模块230在基于每个子图像对应的第三特征图和/或每个子图像的邻近子图像对应的第三特征图,确定每个子图像对应的提案结果时,具体用于:
[0442]
确定每个子图像的权重;
[0443]
基于每个子图像对应的第三特征图和/或每个子图像的邻近子图像对应的第三特征图,以及各个子图像所对应的权重,确定每个子图像对应的提案结果。
[0444]
可选的,提案结果确定模块230在确定每个子图像的权重时,通过以下任一种方式:
[0445]
基于各个子图像对应的子特征图,确定每个子图像的权重;
[0446]
确定待处理图像的候选点,基于各个子图像对应的候选点,或各个子图像对应的候选点对应的子特征图,确定每个子图像所对应的权重。
[0447]
可选的,提案结果确定模块230在基于各个子图像对应的候选点,确定每个子图像所对应的权重时,具体用于:
[0448]
对于每个子图像对应的候选点,确定该候选点与其相邻的子图像的候选点之间的
相似关系;基于各候选点与其相邻的子图像的候选点之间的相似关系,确定每个子图像所对应的权重;
[0449]
提案结果确定模块230在基于各个子图像对应的子特征图,确定每个子图像的权重时,通过以下任一种方式:
[0450]
对于每个子图像,确定该子图像中心位置处对应的第一特征向量,以及该子图像对应的子特征图对应的第二特征向量;基于各子图像对应的第一特征向量和第二特征向量,确定每个子图像的权重;
[0451]
对于每个子图像对应的子特征图,该子特征图对应至少一个概率值,每个概率值表征该子特征图属于对应物体的概率;将至少一个概率值中的最大概率值作为该子图像的权重。
[0452]
可选的,该装置还包括:
[0453]
三维检测结果确定模块,用于基于提案结果,确定待处理图像中物体的三维检测结果,三维检测结果中包括三维姿态结果和三维分割结果中的至少一项。
[0454]
可选的,三维检测结果包括三维姿态结果和三维分割结果;
[0455]
三维检测结果确定模块在基于提案结果,确定待处理图像中物体的三维检测结果时,具体用于:
[0456]
提取提案结果对应的三维点云特征和二维图像特征;
[0457]
将三维点云特征和二维图像特征进行拼接,得到第四特征图;
[0458]
基于第四特征图,确定待处理图像中物体的三维检测结果。
[0459]
可选的,三维检测结果确定模块在基于提案结果,确定待处理图像中物体的三维检测结果时,具体用于:
[0460]
基于提案结果,确定待处理图像中物体的初始三维检测结果;
[0461]
确定待处理图像中物体对应的原始图像;
[0462]
基于各物体的初始三维检测结果以及对应的原始图像,确定每个物体的初始三维检测结果对应的差异信息;
[0463]
基于每个物体的初始三维检测结果对应的差异信息,对对应的物体的初始三维检测结果进行更新,得到待处理图像中每个物体的三维检测结果。
[0464]
基于与图16中所示的方法相同的原理,本发明实施例还提供了一种图像处理装置30,如图21中所示,该图像处理装置30可以包括变形信息获取模块310和图像变形模块320,其中:
[0465]
变形信息获取模块310,用于获取虚拟物体对待处理图像中真实物体的变形信息;
[0466]
图像变形模块320,用于基于变形信息,对真实物体进行变形,得到变形后的待处理图像。
[0467]
可选的,图像变形模块320在基于变形信息,对真实物体进行变形,得到变形后的待处理图像时,具体用于:
[0468]
确定真实物体对应的原始图像;
[0469]
基于真实物体对应的三维姿态结果,变形信息,以及与真实物体对应的原始图像,确定真实物体对应的变形后的图像与变形前的图像之间的变换关系,变形前的图像为待处理图像中真实物体对应的图像;
[0470]
基于变换关系以及真实物体对应的图像,确定真实物体所对应的变形后的图像;
[0471]
基于真实物体所对应的变形后的图像,确定变形后的待处理图像。
[0472]
可选的,图像变形模块320在基于待变形物体对应的三维姿态结果,变形信息,以及与待变形物体对应的原始图像,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系时,具体用于:
[0473]
基于待变形物体的原始图像,变形信息,以及对应关系,确定原始图像中待变形物体对应的变形后的变形点,对应关系是基于样本图像中物体在不同变形信息下、变形前后对应的变形点建立的;
[0474]
基于待变形物体对应的变形后的变形点,待变形物体变形前的变形点,以及待变形物体对应的三维姿态结果,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系。
[0475]
可选的,图像变形模块320在基于待变形物体对应的变形后的变形点,待变形物体变形前的变形点,以及待变形物体对应的三维姿态结果,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系时,具体用于:
[0476]
确定待变形物体所对应的各变形点中每个变形点的权重;
[0477]
基于各变形点的权重,待变形物体对应的变形后的变形点,待变形物体变形前的变形点,以及待变形物体对应的三维姿态结果,确定待变形物体对应的变形后的图像与变形前的图像之间的变换关系。
[0478]
可选的,图像变形模块320在基于待变形物体所对应的变形后的图像,确定变形后的待处理图像时,通过以下至少一种方式确定:
[0479]
将待变形物体对应的变形后的图像替换待处理图像中变形前的图像,得到变形后的待处理图像;
[0480]
基于待变形物体对应的变形后的图像以及待变形物体对应的变形前的图像,确定差分图像,基于差分图像,确定变形后的待处理图像。
[0481]
由于本发明实施例所提供的图像处理装置为可以执行本发明实施例中的图像处理方法的装置,故而基于本发明实施例中所提供的图像处理方法,本领域所属技术人员能够了解本发明实施例的图像处理装置的具体实施方式以及其各种变化形式,所以在此对于该图像处理装置如何实现本发明实施例中的图像处理方法不再详细介绍。只要本领域所属技术人员实施本发明实施例中的图像处理方法所采用的图像处理装置,都属于本申请所欲保护的范围。
[0482]
基于与本发明实施例所提供的图像处理方法和图像处理装置相同的原理,本发明实施例还提供了一种电子设备,该电子设备可以包括处理器和存储器。其中,存储器中存储有可读指令,可读指令由处理器加载并执行时,可以实现本发明任一实施例中所示的方法。
[0483]
作为一个示例,图22中示出了本申请实施例的方案所适用的一种电子设备4000的结构示意图,如图22中所示,该电子设备4000可以包括处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
[0484]
处理器4001可以是cpu(central processing unit,中央处理器),通用处理器,
dsp(digital signal processor,数据信号处理器),asic(application specific integrated circuit,专用集成电路),fpga(field programmable gate array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
[0485]
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图22中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0486]
存储器4003可以是rom(read only memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,ram(random access memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom(electrically erasable programmable read only memory,电可擦可编程只读存储器)、cd-rom(compact disc read only memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
[0487]
存储器4003用于存储执行本申请方案的应用程序代码,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述任一方法实施例所示的方案。
[0488]
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0489]
以上仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。