一种平面检测方法、计算设备以及电路系统技术方案

技术编号:22566304 阅读:39 留言:0更新日期:2019-11-16 12:33
本申请公开了一种平面检测方法、计算设备以及电路系统,该方法包括:计算设备获取待处理图像数据,然后对待处理图像数据进行分割,得到N个子图像数据,其中,N为大于1的整数。之后,确定N个子图像数据中的至少一个子图像数据对应的点云信息,根据N个子图像数据中的至少一个子图像数据对应的点云信息,对N个子图像数据对应的点云进行聚类处理,得到K个粗提取平面,对K个粗提取平面进行优化处理,得到L个优化后平面,其中K为不大于N的正整数,L为不大于K的正整数。这样可以使得计算设备能够检测到图像数据中的不止一个平面。

A plane detection method, computing equipment and circuit system

The application discloses a plane detection method, a computing device and a circuit system, the method includes: the computing device obtains the image data to be processed, and then the image data to be processed is segmented to obtain n sub image data, wherein n is an integer greater than 1. Then, the point cloud information corresponding to at least one sub image data in n sub image data is determined. According to the point cloud information corresponding to at least one sub image data in n sub image data, the point cloud corresponding to n sub image data is clustered to get k rough extraction planes, and K rough extraction planes are optimized to get l optimized planes, where k is not more than Positive integer of N, l is a positive integer not greater than k. This enables the computing device to detect more than one plane in the image data.

【技术实现步骤摘要】
一种平面检测方法、计算设备以及电路系统本申请要求在2019年03月26日提交中国专利局、申请号为201910234537.7、申请名称为“一种平面检测方法及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及计算机视觉
,尤其涉及一种平面检测方法、计算设备以及电路系统。
技术介绍
目前,基于手机的物体三维重建和增强现实(augmentedreality,AR)游戏已经成为现实,而且备受各大手机厂商和广大用户的青睐。在物体三维重建和增强现实游戏的计算过程中,三维空间平面检测是一项重要、并且基础的功能,因为在检测到平面之后,才能进一步确定物体的锚点,从而在确定出的锚点处渲染出物体。目前,三维平面检测功能正在被加入至各种小型设备中,但是这些设备的计算能力有限,不能够处理复杂度较高的算法。现代的AR应用程序,如AR游戏,物体、人物建模程序,如基于复杂场景的互动程序、混合现实应用等对后端程序的场景理解能力提出非常高的要求,其中一项就是基于图像传感器或深度传感器信息理解场景的三维结构。从目前的移动端计算能力来看,当前后端程序对场景的理解算法的处理能力非常有限。在此之前,都只能确定场景中的主要平面结构,即场景中最大的平面在三维空间中的位置。现在商用的AR解决方案也基本上是基于场景中的主平面(即单一平面)进行后期的工作,包括建模、渲染等。随着消费者对人工智能应用的喜爱程度日渐增长,用户对应用程序功能的需求也逐渐增加,增强现实应用程序对后端场景理解能力的要求也随之提高,单一的平面检测已经无法满足用户的使用需求。
技术实现思路
本申请提供一种平面检测方法、计算设备以及电路系统,用以使得计算设备能够检测到图像数据中的不止一个平面。第一方面,本申请实施例提供了一种平面检测方法,该方法应用于计算设备,该方法包括:计算设备获取待处理图像数据,然后对待处理图像数据进行分割,得到N个子图像数据,其中,N为大于1的整数。之后,计算设备确定N个子图像数据中的至少一个子图像数据对应的点云信息,然后根据N个子图像数据中的至少一个子图像数据对应的点云信息,对N个子图像数据对应的点云进行聚类处理,得到K个粗提取平面,对K个粗提取平面进行优化处理,得到L个优化后平面,其中K为不大于N的正整数,L为不大于K的正整数。本申请实施例中,通过对待处理图像数据进行分割,得到N个子图像数据,之后对N个子图像数据对应的点云进行聚类处理,相较于现有技术中从中心开始遍历待处理图像直到检测到一个平面就停止检测,只能检测到一个平面的方案,本申请提供的方案可以对待处理图像分割得到的N个子图像数据进行聚类处理,这样可以使得计算设备能够检测到图像数据中的不止一个平面。在一种可能的设计中,该待处理图像数据为深度图像,该深度图像中包括每个像素点的图像坐标和深度值。计算设备获取到深度图像,之后对深度图像进行分割,得到N个子深度图像,然后,计算设备确定出N个子深度图像中的至少一个子深度图像对应的点云信息,并根据N个子深度图像中的每个子图像数据对应的点云信息,确定至少一个子深度图像对应的点云的拟合后平面的均方误差。之后,计算设备从N个子深度图像中确定出满足第一条件的子深度图像,组成待处理子图像集,对待处理子图像集中包括的子深度图像对应的点云进行聚类,得到K个粗提取平面。其中,第一条件包括子深度图像对应的点云的拟合后平面的均方误差小于或等于第一阈值。在该设计中,通过对深度图像进行分割,得到N个子深度图像,然后对N个子深度图像中的满足第一条件的子深度图像对应的点云进行聚类处理,而满足第一条件的子深度图像对应的点云的拟合后平面的均方误差小于或等于第一阈值,说明满足该第一条件的子深度图像对应的点云中的点在一个平面上,也就是说,对N个子深度图像中对应的点云可能是平面的子深度图像筛选出来进行聚类,对于点云不是一个平面的子深度图像不进行聚类,所以不需要对N个子深度图像中的所有子深度图像进行聚类,从而不仅可以检测到子深度图像中的不止一个平面,而且可以节省平面检测过程的时间。在一种可能的设计中,待处理图像数据为深度图像。计算设备获取深度图像,对深度图像进行分割,得到N个子深度图像。然后确定出N个子深度图像中的至少一个子深度图像对应的点云信息,将N个子深度图像中每个子深度图像对应的点云作为一个节点,构建图结构,该图结构中的每个节点存储有该节点对应的点云信息。计算设备遍历图结构中的每个节点,确定出图结构中的满足第二条件的两个节点,则在满足第二条件的两个节点之间构建边;其中,第二条件包括两个节点中任一节点对应的点云的深度值连续、且两个节点对应点云的法向量之间的夹角小于夹角阈值。之后,计算设备确定出N个子深度图像中与图结构中具有至少一条边的节点对应的子深度图像,组成待处理子图像集,对待处理子图像集中包括的子深度图像对应的点云进行聚类,得到K个粗提取平面。在该设计中,通过对深度图像进行分割,得到N个子深度图像,然后根据N个子深度图像对应的点云信息构建图结构,之后对图结构中满足第二条件的两个节点之间构建边,也就是说,在可能拟合成平面的两个节点之间构造一个边,之后针对有边的节点进行后续的聚类处理,这样就不需要针对拟合成平面的可能性较低的子深度图像进行后续处理,从而可以节省整个检测平面过程的时间。在一种可能的设计中,该待处理图像数据包括由双目相机拍摄的第一RGB图像和第二RGB图像。计算设备获取到第一RGB图像和第二RGB图像之后,对所述第一RGB图像进行图像预分割,得到N个第一面块,并对所述第二RGB图像进行图像预分割,得到N个第二面块,其中第一面块与第二面块具有位置对应关系。针对N个第一面块中每个第一面块,计算设备执行:从N个第二面块中确定出与第一面块具有位置对应关系的第二面块,根据第一面块、以及与第一面块具有位置对应关系的第二面块,确定出视差图,根据视差图确定出子深度图像。从而可以确定从N个子深度图像。然后,计算设备可以根据确定出的N个子深度图像组成待处理子图像集,确定出N个子深度图像中的至少一个子深度图像对应的点云信息,之后,计算设备根据N个子图像数据中的至少一个子图像数据对应的点云信息,对待处理子图像集中包括的N个子深度图像对应的点云进行聚类,得到K个粗提取平面。在该设计中,通过对双目相机拍摄的第一RGB图像和第二RGB图像分别进行分割,得到可能为平面的N个第一面块和N个第二面块确定出N个视差图,然后可以确定出N个可能为平面的子深度图像。然后可以对N个可能为平面的子深度图像对应的点云进行聚类,而不需要对第一RGB图像和第二RGB图像中的整个图像进行聚类处理,从而可以减少处理量,如此,不仅能够检测到图像数据中的不止一个平面,而且可以加快检测到平面的速度。在一种可能的设计中,以下提供一种可以实现对待处理子图像集中包括的子深度图像对应的点云进行聚类,得到K个粗提取平面的方式,在该方式中,计算设备可以根据待处理子图像集中包括的每个子深度图像对应的点云信息,建立最小堆数据结构,其中,最小堆数据结构用于根据每个子深度图本文档来自技高网
...

【技术保护点】
1.一种平面检测方法,应用于计算设备,其特征在于,所述方法包括:/n获取待处理图像数据;/n对所述待处理图像数据进行分割,得到N个子图像数据,所述N为大于1的整数;/n确定所述N个子图像数据中的至少一个子图像数据对应的点云信息;/n根据所述N个子图像数据中的所述至少一个子图像数据对应的点云信息,对所述N个子图像数据对应的点云进行聚类处理,得到K个粗提取平面;所述K为不大于所述N的正整数;/n对所述K个粗提取平面进行优化处理,得到L个优化后平面;所述L为不大于所述K的正整数。/n

【技术特征摘要】
20190326 CN 20191023453771.一种平面检测方法,应用于计算设备,其特征在于,所述方法包括:
获取待处理图像数据;
对所述待处理图像数据进行分割,得到N个子图像数据,所述N为大于1的整数;
确定所述N个子图像数据中的至少一个子图像数据对应的点云信息;
根据所述N个子图像数据中的所述至少一个子图像数据对应的点云信息,对所述N个子图像数据对应的点云进行聚类处理,得到K个粗提取平面;所述K为不大于所述N的正整数;
对所述K个粗提取平面进行优化处理,得到L个优化后平面;所述L为不大于所述K的正整数。


2.如权利要求1所述的方法,其特征在于,所述待处理图像数据为深度图像;所述深度图像中包括每个像素点的图像坐标和深度值;
所述对所述待处理图像数据进行分割,得到N个子图像数据,包括:
对所述深度图像进行分割,得到N个子深度图像;
所述确定所述N个子图像数据中的至少一个子图像数据对应的点云信息,包括:
确定出所述N个子深度图像中的至少一个子深度图像对应的点云信息;
所述根据所述N个子图像数据中的至少一个子图像数据对应的点云信息,对所述N个子图像数据对应的点云进行聚类处理,得到K个粗提取平面,包括:
根据所述N个子深度图像中的每个子深度图像对应的点云信息,确定每个子深度图像对应的点云的拟合后平面的均方误差;
从所述N个子深度图像中确定出满足第一条件的子深度图像,组成待处理子图像集;所述第一条件包括所述子深度图像对应的点云的拟合后平面的均方误差小于或等于第一阈值;
对所述待处理子图像集中包括的子深度图像对应的点云进行聚类,得到K个粗提取平面。


3.如权利要求1所述的方法,其特征在于,所述待处理图像数据为深度图像;
所述对所述待处理图像数据进行分割,得到N个子图像数据,包括:
对所述深度图像进行分割,得到N个子深度图像;
所述确定所述N个子图像数据中的至少一个子图像数据对应的点云信息,包括:
确定出所述N个子深度图像中的至少一个子深度图像对应的点云信息;
所述根据所述N个子图像数据中的至少一个子图像数据对应的点云信息,对所述N个子图像数据对应的点云进行聚类处理,得到K个粗提取平面,包括:
将所述N个子深度图像中每个子深度图像对应的点云作为一个节点,构建图结构;所述图结构中的每个节点存储有所述节点对应的点云信息;
遍历所述图结构中的每个节点,确定出所述图结构中的满足第二条件的两个节点,则在满足所述第二条件的两个节点之间构建边;所述第二条件包括两个节点中任一节点对应的点云的深度值连续、且两个节点对应点云的法向量之间的夹角小于夹角阈值;
确定出所述N个子深度图像中与所述图结构中具有至少一条边的节点对应的子深度图像,组成待处理子图像集;
对所述待处理子图像集中包括的子深度图像对应的点云进行聚类,得到K个粗提取平面。


4.如权利要求1所述的方法,其特征在于,所述待处理图像数据包括由双目相机拍摄的第一RGB图像和第二RGB图像;
所述对所述待处理图像数据进行分割,得到N个子图像数据,包括:
对所述第一RGB图像进行图像预分割,得到N个第一面块;并对所述第二RGB图像进行图像预分割,得到N个第二面块;所述第一面块与所述第二面块具有位置对应关系;
针对所述N个第一面块中每个第一面块,执行:
从所述N个第二面块中确定出与所述第一面块具有位置对应关系的所述第二面块;
根据所述第一面块、以及与所述第一面块具有位置对应关系的所述第二面块,确定出视差图;根据所述视差图确定出子深度图像;
根据确定出的所述N个子深度图像组成待处理子图像集;
所述确定所述N个子图像数据中的至少一个子图像数据对应的点云信息,包括:
确定出所述N个子深度图像中的至少一个子深度图像对应的点云信息;
所述根据所述N个子图像数据中的所述至少一个子图像数据对应的点云信息,对所述N个子图像数据对应的点云进行聚类处理,得到K个粗提取平面,包括:
根据所述N个子图像数据中的所述至少一个子图像数据对应的点云信息,对所述待处理子图像集中包括的N个子深度图像对应的点云进行聚类,得到K个粗提取平面。


5.如权利要求2-4任一项所述的方法,其特征在于,所述对所述待处理子图像集中包括的子深度图像对应的点云进行聚类,得到K个粗提取平面,包括:
根据所述待处理子图像集中包括的每个子深度图像对应的点云信息,建立最小堆数据结构;所述最小堆数据结构用于根据每个子深度图像对应的点云的均方误差对所述待处理子图像集中的子深度图像进行排序,且位于堆顶的子深度图像对应的点云的均方误差最小;
针对所述最小堆数据结构,执行预设操作,直至所述最小堆数据结构中的任意两个节点对应的点云的拟合后平面的均方误差大于所述第一阈值,得到所述K个粗提取平面;
其中,所述预设操作包括:从所述最小堆数据结构中堆顶中取出子深度图像,若从与所述子深度图像相邻的子深度图像中确定出满足第三条件的子深度图像,则将所述子深度图像与所述满足第三条件的子深度图像进行融合,得到融合后子深度图像,所述第三条件包括与所述子深度图像对应的点云拟合平面后的均方误差小于第一阈值、且所述均方误差最小;将所述融合后子深度图像加入至所述最小堆数据结构中。


6.如权利要求1所述的方法,其特征在于,所述待处理图像数据为三维空间中包括的点云;
所述对所述待处理图像数据进行分割,得到N个子图像数据,包括:
将所述三维空间作为八叉树结构的第一层级的节点;
对于所述八叉树结构中的第一层级以及第i层级包括的每个子节点,执行:若所述子节点满足第四条件,则对所述子节点进行八等份分割,得到第i+1层级的八个子节点;其中所述第四条件包括子节点对应的点云的均方误差大于所述第一阈值;所述i为大于1的整数,所述第i层级包括8i个子节点;
直至所述最后一层级中包括的所有子节点满足第五条件,构建得到包括M个层级的子节点的八叉树结构;所述第五条件包括子节点对应的点云的均方误差不大于所述第一阈值,或者,子节点对应的点云包括点数量小于数量阈值;
确定出所述八叉树结构中N个未分割的子节点;
所述确定所述N个子图像数据中的至少一个子图像数据对应的点云信息,包括:
确定所述N个未分割的子节点中的至少一个未分割的子节点对应的点云信息;
所述根据所述N个子图像数据中的所述至少一个子图像数据对应的点云信息,所述对所述N个子图像数据对应的点云进行聚类处理,得到K个粗提取平面,包括:
根据所述N个未分割的子节点中的至少一个未分割的子节点对应的点云信息,对所述八叉树结构中所述N个未分割的子节点对应的点云进行聚类处理,得到K个粗提取平面。


7.如权利要求6所述的方法,其特征在于,所述根据所述N个未分割的子节点中的至少一个未分割的子节点对应的点云信息,对所述八叉树结构中所述N个未分割的子节点对应的点云进行聚类处理,得到K个粗提取平面,包括:
根据所述N个未分割的子节点中的至少一个未分割的子节点对应的点云信息,确定所述N个未分割的子节点中每个未分割的子节点对应的点云的法向量,并将所述法向量经过霍夫变换成在参数空间中的点;
确定出所述N个未分割的子节点对应的点云的法向量在参数空间中形成的K个点集,每个点集具有一个聚集中心;
针对每个点集,确定出落在所述点集的聚集中心周围的预设范围内的点;
将所述落在预设范围内的点对应的未分割的子节点对应的点云融合为一个粗提取平面。


8.如权利要求1-7任一项所述的方法,其特征在于,所述对所述K个粗提取平面进行优化处理,得到L个优化后平面,包括:
确定所述K个粗提取平面中每个粗提取平面的法向量;
遍历所述K个粗提取平面中的任一粗提取平面,若存在满足第六条件的粗提取平面,则将所述粗提取平面与满足所述第六条件的粗提取平面融合为一个平面,得到L个优化后平面;
其中,所述第六条件包括:法向量与所述粗提取平面的法向量平行、且与所述粗提取平面拟合平面后的方差小于方差阈值。


9.一种平面检测方法,应用于计算设备,其特征在于,所述方法包括:
获取待处理图像数据;
对所述待处理图像数据进行语义分割,得到N个具有标注信息的子图像数据,所述N为大于1的整数;所述标注信息用于标注所述子图像数据中的目标对象;
根据每个子图像数据的标注信息,从所述N个具有标注信息的子图像数据中确定出Q个具有平面的子图像数据;所述Q为大于0、且小于或等于所述N的整数;
确定出所述Q个具有平面的子图像数据中每个具有平面的子图像数据对应的点云信息;
根据所述Q个具有平面的子图像数据中每个具有平面的子图像数据对应的点云信息,从所述Q个具有平面的子图像数据中确定出K个粗提取平面;所述K为大于或等于所述Q的整数;
对所述K个粗提取平面进行优化处理,得到L个优化后平面;所述L为不大于所述K的正整数。


10.如权利要求9所述的方法,其特征在于,所述待处理图像数据包括由双目相机拍摄的第一RGB图像和第二RGB图像;
所述对所述待处理图像数据进行语义分割,得到N个具有标注信息的子图像数据,包括:
对所述第一RGB图像进行语义分割,得到N个具有标注信息的第一子图像;并对所述第二RGB图像进行语义分割,得到N个具有标注信息的第二子图像;其中,每个所述具有标注信息的第一子图像、以及与所述第一子图像具有位置对应关系的具有标注信息的第二子图像组成一个具有标注信息的子图像数据;
所述确定出所述Q个具有平面的子图像数据中每个具有平面的子图像数据对应的点云信息,包括:
针对所述Q个具有平面的子图像数据中的每个具有平面的子图像数据,执行:
根据所述具有平面的子图像数据中包括的具有标注信息的第一子图像、以及与所述第一子图像具有位置对应关系的具有标注信息的第二子图像,确定出视差图;
根据所述视差图确定出子深度图像;
根据所述子深度图像,确定出所述具有平面的子图像数据对应的点云信息;
所述根据所述Q个具有平面的子图像数据中每个具有平面的子图像数据对应的点云信息,从所述Q个具有平面的子图像数据中确定出K个粗提取平面,包括:
根据所述具有平面的子图像数据对应的点云信息,从Q个子深度图像中确定K个粗提取平面。


11.如权利要求9或10所述的方法,其特征在于,所述根据所述具有平面的子图像数据对应的点云信息,从Q个子深度图像中确定K个粗提取平面,包括:
将所述Q个子深度图像中每个子深度图像对应的点云作为一个节点,构建图结构;所述图结构中的每个节点存储有所述节点对应的点云信息;
遍历所述图结构中的每个节点,确定出所述图结构中的满足第二条件的两个节点,则在满足所述第二条件的两个节点之间构建边;所述第二条件包括两个节点中任一节点对应的点云的深度值连续、且两个节点对应点云的法向量之间的夹角小于夹角阈值;
确定出所述Q个子深度图像中与所述图结构中具有至少一条边的节点对应的子深度图像,组成待处理子图像集;
对所述待处理子图像集中包括的子深度图像对应的点云进行聚类处理,得到K个粗提取平面。


12.如权利要求11所述的方法,其特征在于,所述对所述待处理子图像集中包括的子深度图像对应的点云进行聚类,得到K个粗提取平面,包括:
根据所述待处理子图像集中包括的每个子深度图像对应的点云信息,建立最小堆数据结构;所述最小堆数据结构用于根据每个子深度图像对应的点云的均方误差对所述待处理子图像集中的子深度图像进行排序,且位于堆顶的子深度图像对应的点云的均方误差最小;
针对所述最小堆数据结构,执行预设操作,直至所述最小堆数据结构中的任意两个节点对应的点云的拟合后平面的均方误差大于所述第一阈值,得到所述K个粗提取平面;
其中,所述预设操作包括:从所述最小堆数据结构中堆顶中取出子深度图像,若从与所述子深度图像相邻的子深度图像中确定出满足第三条件的子深度图像,则将所述子深度图像与所述满足第三条件的子深度图像进行融合,得到融合后子深度图像;所述第三条件包括与所述子深度图像对应的点云拟合平面后的均方误差小于第一阈值、且所述均方误差最小;将所述融合后子深度图像加入至所述最小堆数据结构中。


13.如权利要求9-12任一项所述的方法,其特征在于,所述对所述K个粗提取平面进行优化处理,得到L个优化后平面,包括:
确定所述K个粗提取平面中每个粗提取平面的法向量;
遍历所述K个粗提取平面中的任一粗提取平面,若存在满足第六条件的粗提取平面,则将所述粗提取平面与满足所述第六条件的粗提取平面融合为一个平面;
其中,所述第六条件包括:法向量与所述粗提取平面的法向量平行、且与所述粗提取平面拟合平面后的方差小于方差阈值。


14.一种计算设备,其特征在于,包括至少一个处理器;
所述至少一个处理器,被配置为执行如下操作:
获取待处理图像数据;
对所述待处理图像数据进行分割,得到N个子图像数据,所述N为大于1的整数;
确定所述N个子图像数据中的至少一个子图像数据对应的...

【专利技术属性】
技术研发人员:何凯文李阳刘昆
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1