一种图像处理方法及电子设备的制作方法

文档序号:6547106阅读:160来源:国知局
一种图像处理方法及电子设备的制作方法
【专利摘要】本发明公开了一种图像处理方法,用于解决现有技术中没有较好的三维渲染方法的技术问题。所述方法包括:获取点集;所述点集针对至少一个对象;取i为从1至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数;根据确定出的三角形进行渲染,获得所述至少一个对象的三维图像。本发明还公开了相应的电子设备。
【专利说明】一种图像处理方法及电子设备
【技术领域】
[0001]本发明涉及计算机【技术领域】,特别涉及一种图像处理方法及电子设备。
【背景技术】
[0002]目前,三维场景的实时渲染在虚拟现实、工程计算、飞行模拟、城市规划、地理信息系统等领域中具有非常广泛的应用,因此,三维渲染技术也一直是人们研究的热点。现有的对三维场景的渲染方法有很多,具有代表性的有octomap ( 一种三维渲染技术)渲染方法、基于三维Delaunay (—种三角剖分算法)算法的渲染方法及点集渲染方法,以下分别介绍。
[0003]1、Octomap渲染方法是将点集利用八叉树的形式表示,为其中的每个点虚拟出一个立方体(包括12个三角形),之后根据虚拟出的所有立方体进行渲染。该方法的缺陷是,三角形数量较多,渲染过程较为复杂。
[0004]2、基于三维Delaunay算法的渲染方法,是对点集中的所有点进行三角剖分,之后对得到的三角形进行渲染。该方法中,三角剖分的计算复杂度为n2,显然,该方法的计算复杂度较高,不利于实现。
[0005]3、点集渲染方法,即无需得到三角形等中间图形,直接针对点集中的每个点进行渲染。该方法需要点集中的点分布非常密集才能较好地渲染出三维图像,需要较大的存储空间。
[0006]可见,现有技术中尚无较好的三维渲染方法。

【发明内容】

[0007]本发明实施例提供一种图像处理方法,用于解决现有技术中没有较好的三维渲染方法的技术问题。
[0008]一种图像处理方法,包括以下步骤:
[0009]获取点集;所述点集针对至少一个对象;
[0010]取i为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数;
[0011]根据确定出的三角形进行渲染,获得所述至少一个对象的三维图像。
[0012]可选的,还包括:根据所述至少一个对象设定M个层级,其中每个对象对应至少一个层级,且每个层级对应有特定步长;M为正整数。
[0013]可选的,根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中,包括:
[0014]确定所述第i个点的层级;
[0015]以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型;[0016]确定所述正方体模型中,除所述第i个点之外的其余7个顶点是否存在于所述点集中。
[0017]可选的,以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型,包括:以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型。
[0018]可选的,以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型,包括:
[0019]根据在所述点集中确定的坐标原点,确定所述第i个点的坐标;
[0020]以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,根据所述第i个点的坐标,按照所述特定方向确定所述正方体模型中除所述第i个点之外的其余7个顶点的坐标;
[0021]根据所述第i个点的坐标及其余7个顶点的坐标确定所述正方体模型。
[0022]可选的,根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形,包括:
[0023]根据所述检测结果,确定所述正方体模型中实际存在的外表面;
[0024]在所述实际存在的外表面中确定以所述第i个点为一个顶点的三角形。
[0025]一种电子设备,包括:
[0026]获取模块,用于获取点集;所述点集针对至少一个对象;
[0027]确定模块,用于取i为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数;
[0028]渲染模块,根据确定出的三角形进行渲染,获得所述至少一个对象的三维图像。
[0029]可选的,所述电子设备还包括设定模块,具体用于:根据所述至少一个对象设定M个层级,其中每个对象对应至少一个层级,且每个层级对应有特定步长;M为正整数。
[0030]可选的,所述确定模块用于根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中,具体为:确定所述第i个点的层级;以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型;确定所述正方体模型中,除所述第i个点之外的其余7个顶点是否存在于所述点集中。
[0031]可选的,所述确定模块用于以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型,具体为:以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型。
[0032]可选的,所述确定模块用于以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型,具体为:根据在所述点集中确定的坐标原点,确定所述第i个点的坐标;以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,根据所述第i个点的坐标,按照所述特定方向确定所述正方体中除所述第i个点之外的其余7个顶点的坐标;根据所述第i个点的坐标及其余7个顶点的坐标确定所述正方体模型。[0033]可选的,所述确定模块用于根据所述检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形,具体为:根据所述检测结果,确定所述正方体模型中实际存在的外表面;在所述实际存在的外表面中确定以所述第i个点为一个顶点的三角形。
[0034]本发明实施例中,将点集用八叉树结构表示,确定点集中的每个点对应的正方体模型中实际存在的顶点,从而从所述正方体模型的外表面中确定出三角形,即本发明实施例中确定出的点都是实际存在于点集中的点,相对于Octomap渲染方法来说,本发明需要剖分的三角形数量较少,工作量明显减少,且准确度也有所增加。而且,如果根据每个点都虚拟出一个正方体,则即使是噪点也会虚拟出正方体,之后进行渲染,显然去噪能力较差,而本发明实施例中由于正方体数量比该现有技术有所减少,在一定程度上也减弱了噪点的影响。之后,本发明实施例根据确定出的三角形进行渲染,获得点集对应的对象的三维图像。本发明实施例中,三角形的剖分复杂度为n,相当于复杂程度为一维,而基于三维Delaunay算法的渲染方法的剖分方法,三角形的剖分复杂度为n2,可见,本发明实施例相对于现有技术中的渲染方法,既减少了剖分出的三角形的数量,增强了去噪能力,也降低了三角形的剖分复杂度,提高了对三维对象渲染的效率。并且,相对于点集渲染方法,本发明实施例对点集中的点的数量及密集程度没有较高的要求,显然节省了存储空间。
【专利附图】

【附图说明】
[0035]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0036]图1为本发明实施例中图像处理方法的主要流程图;
[0037]图2A为本发明实施例中在正方体模型中确定三角形的第一种方式的示意图;
[0038]图2B为本发明实施例中在正方体模型中确定三角形的第二种方式的示意图;
[0039]图3为本发明实施例中同时考虑第一种方式和第二种方式在正方体模型中确定三角形的示意图;
[0040]图4为本发明实施例中电子设备的主要结构框图。
【具体实施方式】
[0041]本发明实施例中的图像处理方法可以包括:获取点集,所述点集针对至少一个对象;取i为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数;根据确定出的三角形进行渲染,获得所述至少一个对象的三维图像。
[0042]本发明实施例中,将点集用八叉树结构表示,确定点集中的每个点对应的正方体模型中实际存在的顶点,从而从所述正方体模型的外表面中确定出三角形,即本发明实施例中确定出的点都是实际存在于点集中的点,相对于Octomap渲染方法来说,本发明需要剖分的三角形数量较少,工作量明显减少,且准确度也有所增加。而且,如果根据每个点都虚拟出一个正方体,则即使是噪点也会虚拟出正方体,之后进行渲染,显然去噪能力较差,而本发明实施例中由于正方体数量比该现有技术有所减少,在一定程度上也减弱了噪点的影响。之后,本发明实施例根据确定出的三角形进行渲染,获得点集对应的对象的三维图像。本发明实施例中,三角形的剖分复杂度为n,相当于复杂程度为一维,而基于三维Delaunay算法的渲染方法的剖分方法,三角形的剖分复杂度为n2,可见,本发明实施例相对于现有技术中的渲染方法,既减少了剖分出的三角形的数量,增加了去噪能力,也降低了三角形的剖分复杂度,提高了对三维对象渲染的效率。并且,相对于点集渲染方法,本发明实施例对点集中的点的数量及密集程度没有较高的要求,显然节省了存储空间。
[0043]为使本申请的目的、技术方案和优点更加清楚明白,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。在附图的流程图示出的步骤可以在描述诸如一栋大楼的三维图像时执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0044]另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,在不做特别说明的情况下,一般表示前后关联对象是一种“或”的关系。
[0045]下面结合附图对本发明优选的实施方式进行详细说明。
[0046]请参见图1,本发明实施例提供一种图像处理方法,所述方法的主要流程描述如下。
[0047]步骤101:获取点集;所述点集针对至少一个对象。
[0048]本发明实施例中,所述对象可以是指三维对象。首先,获取需要描述的三维对象的点集,其中,所述点集可以为三维点云或点集合。所述三维对象例如可以为一本书、一幅画、一台电脑、一个人等等,只要是利用现有技术能够获取到所述点集的三维对象都可以。获取点集的方法可以是利用现有技术采集所述三维对象的所有点。
[0049]本发明实施例中,每个对象可以对应一个三维点云,即三维点云的数量与对象的数量相等。因此本发明实施例中如果对象的数量大于1,则采集的三维点云的数量也大于
1
[0050]本发明实施例中,可以将采集的针对每个对象的三维点云均用八叉树的形式进行表示。其中,八叉树是一种描述三维空间的树状数据结构,是一种基础算法。八叉树相对于其他三维形体的表示方法,具有以下优点:任何物体都可以在最小立方体代表的精度范围内用八叉树表示;八叉树结构使三维空间中的集合运算,如物体的交、并、差等运算简单易行;八叉树结构使三维形体的几何变换操作,如平移、旋转、缩放等较易实现;八叉树上不同的层级对应不同的分辨率,根据具体任务可以选择不同分辨率进行算法设计。结合以上八叉树的优点,八叉树能够方便地实现集合运算,其有序性和分层性的特点,便于对场景精度和运算效率进行控制,达到两全其美的效果。[0051]步骤102:取i为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数。
[0052]本发明实施例中,可以在所述点集对应的空间范围内建立所述正方体模型,其中,所述正方体模型是模拟出来的,即所述正方体模型对应的正方体不一定是真实存在的,建立所述正方体模型的目的是为了确定所述正方体模型的顶点,即确定在所述正方体模型中除了所述第i个点之外的7个顶点是否真实存在于所述点集中。
[0053]可选的,本发明实施例中,在步骤101之前,或者在步骤102之前,还可以包括:根据所述至少一个对象设定M个层级,其中每个对象对应至少一个层级,且每个层级对应有特定步长;M为正整数。
[0054]本发明实施例中,每个层级可以对应一个清晰度,即可以针对于每个层级设定一个步长,该步长在每个层级中的值是固定的,即,每个层级有一个对应的特定步长。
[0055]在获取所述点集之后可以为所述点集选择层级,在选择层级时,可以根据所述点集的分辨率来确定所需的特定步长,进而可以将确定的特定步长对应的层级确定为所要选择的层级。例如,所述点集的分辨率确定,在所述点集中两个点之间的距离为Si,则在选择特定步长时,所选的特定步长需要大于等于sl,S卩,可以在大于等于Si的特定步长中选择一个或多个,所选的特定步长对应的层级就是所选的层级。
[0056]例如,所述M个层级中,第一层级对应的步长为0.5米,第二层级对应的步长为I米,等等。设置多个层级,以便于用户根据最终得到的三维图像中的不同区域需要呈现的不同视觉效果选择不同的层级,更符合用户的需求,也会在一定程度上简化操作步骤,提高渲染效率。
[0057]本发明实施例中,每个层级对应一种剖分精度。例如,对应的特定步长越短的层级,其剖分精度越高,最终渲染出的三维图像也越清晰。则可以根据不同的对象选择不同的剖分精度,即选择不同的层级,针对同一个对象,也可以根据其不同的部分选择不同的层级。
[0058]例如,所述对象为一个人,因为用户在观看三维图像时,可能最想看到这个人的脸部区域,则可以为其脸部区域选择剖分精度较高的层级,而对于身体的其他区域,例如手部区域等,则可以选择剖分精度较低的层级,等等。
[0059]例如,所述对象为一盆花。这盆花包括了红花、绿叶、花盆和泥土,这4种元素在特定的环境中呈现出的视觉强弱程度可能会不同,且不同用户期望描述出的三维图像的效果也可能不同。在设定该对象的层级时,就可以针对4种不同的元素设定4个层级,以使描述后的三维图像更接近原始对象,也更符合用户的观看需求。
[0060]例如,所述对象为一面纯白色的墙,则针对该对象就可以只设定I个层级,操作步骤较为简单。
[0061]可选的,本发明实施例中,根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中,可以包括:确定所述第i个点的层级;以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型;确定所述正方体模型中,除所述第i个点之外的其余7个顶点是否存在于所述点集中。
[0062]本发明实施例中,所述点集中共可以包括N个点,N为正整数,i可以分别取从I至N的整数。即,针对所述点集中的每个点,都检测以该点作为一个顶点的正方体模型的其余七个顶点是否存在于所述点集中。
[0063]可选的,本发明实施例中,以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型,可以包括:以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型。
[0064]本发明实施例中,在确定所述正方体模型时,需要以所述第i个点的层级对应的特定步长为所述正方体模型的边长,以所述第i个点为起点,按照所述特定方向确定所述正方体模型,其中,所述特定方向可以是预先设定的方向。
[0065]可选的,本发明实施例中,以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型,可以包括:根据在所述点集中确定的坐标原点,确定所述第i个点的坐标;以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,根据所述第i个点的坐标,按照所述特定方向确定所述正方体模型中除所述第i个点之外的其余7个顶点的坐标;根据所述第i个点的坐标及其余7个顶点的坐标确定所述正方体模型。
[0066]在确定层级之后,也就相应知晓确定的层级对应的特定步长。确定出的层级可能不只一个,则对于第i个点,会有与其对应的层级,也就相应有与其对应的特定步长。
[0067]本发明实施例中,针对获取的点集,可以规定一个坐标原点,例如可以将所述点集中的任一个点规定为坐标原点,依据该坐标原点建立坐标系,则对于所述点集中的每个点,都可以确定其坐标。针对所述第i个点,在所述坐标系中,可以确定其坐标,在确定所述第i个点对应的特定步长后,也就能相应确定以所述第i个点作为一个顶点的正方体模型的其余七个顶点对应的坐标。可以根据确定出的七个坐标来检测,所述点集中在所述七个坐标相应的坐标位置处是否真实存在有点,如果在其中一个坐标位置处有点存在,则确定在所述坐标位置处有所述正方体模型的一个顶点存在,否则,确定在所述坐标位置处所述正方体模型的一个顶点不存在。
[0068]在确定所述正方体模型中实际存在的顶点之后,可以确定在所述正方体模型的外表面中存在的、以所述第i个点作为一个顶点的三角形。确定的三角形为在所述正方体模型的外表面中存在的三角形,且所述三角形的其中一个顶点为所述第i个点、所述三角形的另外两个顶点为所述实际存在的顶点中的任意两个点。即,确定的三角形的三个顶点也是所述正方体模型的三个顶点,且所述三角形的三个顶点均存在于所述正方体模型的一个外表面中。假设所述正方体模型中除所述第i个点之外的其余七个顶点均真实存在,确定三角形的方式可以有多种,以下举例说明:
[0069]第一种方式:请参见图2A,假设PO为所述第i个点,按照所述三角形的一个顶点为PO点、所述三角形的一条边为所述正方体模型的外表面中以PO作为一个端点的对角线的确定方式,确定出的三角形分别为P0P2P6、P0P4P6、P0P2P3、P0P1P3、P0P4P5及POP 1P5。
[0070]第二种方式:请参见图2B,假设PO为所述第i个点,按照所述三角形的一个顶点为PO点、所述三角形的其中两条边均为所述正方体模型的外表面中以PO作为一个端点的边的确定方式,确定出的三角形分别为P0P2P4、P0P1P2及P0P1P4。[0071]本发明实施例中,也可以将如图2A中的三角形确定方式及如图2B中的三角形确定方式组合进行,以确定所述正方体模型的外表面中存在的、以所述第i个点作为一个顶点的三角形。
[0072]例如,可以先按照图2A中的方式来确定,这样确定出的三角形可以尽量涵盖到整个正方体模型的外表面,最终得到的渲染结果也会较为准确。若根据图2A中的方式,在一个外表面中无法确定出三角形,则可以再按照图2B中的方式来确定,保证能够得到渲染结
果O
[0073]较佳的,为了使渲染效果达到最佳,同时尽量避免重复渲染,节省存储资源,则,确定在所述正方体模型的外表面中存在的、以所述第i个点作为一个顶点的三角形的个数最多可以为六个。
[0074]可选的,本发明实施例中,根据所述检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形,可以包括:根据所述检测结果,确定所述正方体模型中实际存在的外表面;在所述实际存在的外表面中确定以所述第i个点为一个顶点的三角形。
[0075]本发明实施例中,根据检测的所述正方体模型中各顶点的存在情况,可以确定在所述正方体模型中实际存在的外表面。即,根据检测出的所述正方体模型中实际存在的顶点,可以确定所述正方体模型对应的六个外表面中实际存在的外表面。一个正方体中最多有6个外表面,即,能确定出的所述正方体模型中存在的外表面的数量不大于6。
[0076]在确定所述正方体模型中实际存在的外表面后,可以确定在所述正方体模型的外表面中存在的、以所述第i个点作为一个顶点的三角形。确定方式可以为所述第一种方式和所述第二种方式中的一种或两种的任意组合。在确定所述正方体模型中实际存在的外表面后,再根据所述外表面的实际存在情况确定三角形,相对于直接根据所述正方体模型中实际存在的顶点的情况确定三角形的方式,该实施例中确定三角形的方式更为简单,对于渲染对象比较简单或用户对渲染效果要求不高的渲染对象来说,可以大幅提高渲染效率、节省存储空间。
[0077]本发明实施例中,针对所述点集中的每个点均进行如上的类似处理,得到本发明实施例中所述点集中的所有点对应的三角形。
[0078]步骤103:根据确定出的三角形进行渲染,获得所述至少一个对象的三维图像。
[0079]在得到所述点集中的所有点对应的三角形后,可以根据确定出的所有三角形进行渲染,得到所述至少一个对象对应的三维图像。
[0080]以下通过一个具体的例子来说明本发明中的图像处理方法。
[0081]针对一个对象,采集其对应的点集,将采集的点集利用八叉树形式进行表示。
[0082]例如针对该对象确定了一个层级,该层级对应有特定步长,例如该特定步长为I米。
[0083]例如规定所述点集中的一个点作为坐标原点,建立坐标系。
[0084]以所述点集中的第i个点为一个顶点,确定一正方体模型。具体方式可以是,根据所述点集中的坐标原点确定所述第i个点的坐标,根据特定步长按照特定方向确定一个正方体模型,再根据所述正方体模型确定除第i个点之外的其余七个顶点的坐标,其中,所述特定步长就是所述正方体模型的边长。在确定所述正方体模型的八个顶点的坐标后,相当于确定了所述正方体模型。
[0085]例如,如图3所示,其中的PO表示所述第i个点,P1、P2、P3、P4、P5、P6和P7表示所述正方体模型中的其余七个点。例如PO的坐标为(0,0,I),所述步长为I米,则可以确定Pl坐标为(1,0,1),P2坐标为(0,1,1),P3坐标为(1,1,1),P4坐标为(0,0,O),P5坐标为(1,0,0),P6 坐标为(0,1,0),P7 坐标为(1,1,0) ο
[0086]在所述点集中进行检测,确定PU P2、P3、P4、P5、P6和P7是否均存在于所述点集中。例如检测确定PU P2、P3、P4、P5存在于所述点集中,而P6和P7没有存在于所述点集中。
[0087]根据所述检测结果,可以确定所述正方体模型中实际存在的顶点为P0、P1、P2、P3、P4和P5,则可以确定所述正方体模型中实际存在的外表面,所述正方体模型中实际存在的外表面为 P0P2P3P1、P0P1P5P4。
[0088]继续确定,例如先采用如图2A中的方式确定在P0P2P3P1和P0P1P5P4这两个外表面中存在的、以PO为一个顶点的三角形为P0P2P3、POP 1P3、P0P4P5和P0P1P5,再采用如图2B中的方式确定在P0P2P3P1和P0P1P5P4这两个外表面中存在的、以PO为一个顶点的三角形为P0P1P2和P0P1P4。其中,根据如图2B中的方式确定出的三角形与根据如图2A中的方式确定出的三角形存在重叠,即根据如图2B中的方式确定出的三角形完全包含于根据如图2A中的方式确定出的三角形中。为了使渲染效果达到最佳,同时尽量避免重复渲染,节省存储资源,最终确定出的三角形可以为P0P2P3、P0P1P3、P0P4P5和P0P1P5。
[0089]针对所述点集中的每个点都进行类似的处理过程,则针对所述点集中的每个点都可以确定出对应的三角形。
[0090]之后,根据确定出的所有三角形进行三维渲染,得到所述对象的三维图像。
[0091]请参见图4,基于同一发明构思,本发明实施例提供一种电子设备。所述电子设备可以包括获取模块401、确定模块402和渲染模块403。
[0092]获取模块401可以用于获取点集;所述点集针对至少一个对象。
[0093]确定模块402可以用于取i为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数。
[0094]渲染模块403可以用于根据确定出的三角形进行渲染,获得所述至少一个对象的
三维图像。
[0095]可选的,本发明实施例中,所述电子设备还可以包括设定模块,具体可以用于根据所述至少一个对象设定M个层级,其中每个对象对应至少一个层级,且每个层级对应有特定步长;M为正整数。
[0096]可选的,本发明实施例中,所述确定模块402用于根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中,具体可以为:确定所述第i个点的层级;以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型;确定所述正方体模型中,除所述第i个点之外的其余7个顶点是否存在于所述点集中。
[0097]可选的,本发明实施例中,所述确定模块402用于以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型,具体可以为:以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型。
[0098]可选的,本发明实施例中,所述确定模块402用于以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型,具体可以为:根据在所述点集中确定的坐标原点,确定所述第i个点的坐标;以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,根据所述第i个点的坐标,按照所述特定方向确定所述正方体中除所述第i个点之外的其余7个顶点的坐标;根据所述第i个点的坐标及其余7个顶点的坐标确定所述正方体模型。
[0099]可选的,所述确定模块402用于根据所述检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形,具体可以为:根据所述检测结果,确定所述正方体模型中实际存在的外表面;在所述实际存在的外表面中确定以所述第i个点为一个顶点的三角形。
[0100]本发明实施例中的图像处理可以包括以下步骤:获取点集;所述点集针对至少一个对象;取1为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数;根据确定出的三角形进行渲染,获得所述至少一个对象的三维图像。
[0101 ] 本发明实施例中,将点集用八叉树结构表示,确定点集中的每个点对应的正方体模型中实际存在的顶点,从而从所述正方体模型的外表面中确定出三角形,即本发明实施例中确定出的点都是实际存在于点集中的点,相对于Octomap渲染方法来说,本发明需要剖分的三角形数量较少,工作量明显减少,且准确度也有所增加。而且,如果根据每个点都虚拟出一个正方体,则即使是噪点也会虚拟出正方体,之后进行渲染,显然去噪能力较差,而本发明实施例中由于正方体数量比该现有技术有所减少,在一定程度上也减弱了噪点的影响。之后,本发明实施例根据确定出的三角形进行渲染,获得点集对应的对象的三维图像。本发明实施例中,三角形的剖分复杂度为n,相当于复杂程度为一维,而基于三维Delaunay算法的渲染方法的剖分方法,三角形的剖分复杂度为n2,可见,本发明实施例相对于现有技术中的渲染方法,既减少了剖分出的三角形的数量,增强了去噪能力,也降低了三角形的剖分复杂度,提高了对三维对象渲染的效率。并且,相对于点集渲染方法,本发明实施例对点集中的点的数量及密集程度没有较高的要求,显然节省了存储空间。
[0102]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将装置的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0103]在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0104]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0105]另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0106]所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM, Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0107]具体来讲,本申请实施例中的一种图像处理方法对应的计算机程序指令可以被存储在光盘,硬盘,U盘等存储介质上,当存储介质中的与一种图像处理方法对应的计算机程序指令被一电子设备读取或被执行时,包括如下步骤:
[0108]获取点集;所述点集针对至少一个对象;
[0109]取i为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的外表面中的三角形;所述点集中共包括N个点,N为正整数;
[0110]根据确定出的三角形进行渲染,获得所述至少一个对象的三维图像。
[0111]可选的,所述存储介质中存储的与步骤:获取点集;所述点集针对至少一个对象,对应的计算机指令在具体被执行之前,或者,所述存储介质中存储的与步骤:取i为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型中实际存在的外表面,及确定在所述实际存在的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数,对应的计算机指令在具体被执行之前,还包括:
[0112]根据所述至少一个对象设定M个层级,其中每个对象对应至少一个层级,且每个层级对应有特定步长;M为正整数。
[0113]可选的,所述存储介质中存储的与步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中,对应的计算机指令在被执行的过程中,具体包括:[0114]确定所述第i个点的层级;
[0115]以所述第i个点的层级对应的步长为边长,以所述第i个点为一个顶点,确定所述正方体模型;
[0116]确定所述正方体模型中,除所述第i个点之外的其余7个顶点是否存在于所述点集中。
[0117]可选的,所述存储介质中存储的与步骤:以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型,对应的计算机指令在被执行的过程中,具体包括:以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型。
[0118]可选的,所述存储介质中存储的与步骤:以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型,对应的计算机指令在被执行的过程中,具体包括:
[0119]根据在所述点集中确定的坐标原点,确定所述第i个点的坐标;
[0120]以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,根据所述第i个点的坐标,按照所述确定方向确定所述正方体模型中除所述第i个点之外的其余7个顶点的坐标;
[0121]根据所述第i个点的坐标及其余7个顶点的坐标确定所述正方体模型。
[0122]可选的,所述存储介质中存储的与步骤:根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形,对应的计算机指令在被执行的过程中,具体包括:根据所述检测结果,确定所述正方体模型中实际存在的外表面;在所述实际存在的外表面中确定以所述第i个点为一个顶点的三角形。
[0123]以上所述,以上实施例仅用以对本申请的技术方案进行了详细介绍,但以上实施例的说明只是用于帮助理解本发明的方法及其核心思想,不应理解为对本发明的限制。本【技术领域】的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
【权利要求】
1.一种图像处理方法,包括以下步骤: 获取点集;所述点集针对至少一个对象; 取i为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数; 根据确定出的三角形进行渲染,获得所述至少一个对象的三维图像。
2.如权利要求1所述的方法,其特征在于,还包括:根据所述至少一个对象设定M个层级,其中每个对象对应至少一个层级,且每个层级对应有特定步长;M为正整数。
3.如权利要求2所述的方法,其特征在于,根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中,包括: 确定所述第i个点的层级; 以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型; 确定所述正方体模型中,除所述第i个点之外的其余7个顶点是否存在于所述点集中。
4.如权利要求3所述的方法,其特征在于,以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型,包括:以所述第i个点的层级对应的特定步长为边长,以 所述第i个点为起点,按照特定方向确定所述正方体模型。
5.如权利要求4所述的方法,其特征在于,以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型,包括: 根据在所述点集中确定的坐标原点,确定所述第i个点的坐标; 以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,根据所述第i个点的坐标,按照所述特定方向确定所述正方体模型中除所述第i个点之外的其余7个顶点的坐标; 根据所述第i个点的坐标及其余7个顶点的坐标确定所述正方体模型。
6.如权利要求1所述的方法,其特征在于,根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形,包括: 根据所述检测结果,确定所述正方体模型中实际存在的外表面; 在所述实际存在的外表面中确定以所述第i个点为一个顶点的三角形。
7.—种电子设备,包括: 获取模块,用于获取点集;所述点集针对至少一个对象; 确定模块,用于取i为从I至N的整数,分别执行以下步骤:根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中;根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形;所述点集中共包括N个点,N为正整数; 渲染模块,根据确定出的三角形进行渲染,获得所述至少一个对象的三维图像。
8.如权利要求7所述的电子设备,其特征在于,所述电子设备还包括设定模块,具体用于:根据所述至少一个对象设定M个层级,其中每个对象对应至少一个层级,且每个层级对应有特定步长;M为正整数。
9.如权利要求8所述的电子设备,其特征在于,所述确定模块用于根据确定的层级,检测以所述点集中的第i个点作为一个顶点的正方体模型的其余7个顶点是否存在于所述点集中,具体为:确定所述第i个点的层级;以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型;确定所述正方体模型中,除所述第i个点之外的其余7个顶点是否存在于所述点集中。
10.如权利要求9所述的电子设备,其特征在于,所述确定模块用于以所述第i个点的层级对应的特定步长为边长,以所述第i个点为一个顶点,确定所述正方体模型,具体为:以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型。
11.如权利要求10所述的电子设备,其特征在于,所述确定模块用于以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,按照特定方向确定所述正方体模型,具体为:根据在所述点集中确定的坐标原点,确定所述第i个点的坐标;以所述第i个点的层级对应的特定步长为边长,以所述第i个点为起点,根据所述第i个点的坐标,按照所述特定方向确定所述正方体中除所述第i个点之外的其余7个顶点的坐标;根据所述第i个点的坐标及其余7个顶点的坐标确定所述正方体模型。
12.如权利要求7所述的电子设备,其特征在于,所述确定模块用于根据检测结果,确定在所述正方体模型的外表面中存在的、以所述第i个点为一个顶点的三角形,具体为:根据所述检测结果,确定所述正方体模型中实际存在的外表面;在所述实际存在的外表面中确定以所述第i个点为一个顶点的三角形。
【文档编号】G06T15/00GK103985150SQ201410216043
【公开日】2014年8月13日 申请日期:2014年5月21日 优先权日:2014年5月21日
【发明者】林 源, 宋爽 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1