首页> 中国专利> 基于2D拍摄图像实现3D模型生成的方法、介质及系统

基于2D拍摄图像实现3D模型生成的方法、介质及系统

摘要

本发明提供一种基于2D拍摄图像实现3D模型生成的方法、介质以及系统。所述建模方法通过检测图像内的边缘来识别所述图像内的物体;基于识别出的物体相对于所述图像的限定的表面的表面方向来确定识别出的物体的复杂度;基于确定的复杂度,通过识别分别用于识别的物体的一个或多个对应表面的一个或多个没影点,并分别针对识别出的一个或多个没影点分析所述图像的一个或多个对应表面的各个确定的点来生成用于3D模型的一个或多个表面;在3D空间中通过组合所述一个或多个表面来生成3D模型。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2012-11-07

    授权

    授权

  • 2010-04-28

    实质审查的生效 IPC(主分类):G06T17/30 申请日:20080215

    实质审查的生效

  • 2008-08-20

    公开

    公开

说明书

                        技术领域

本发明的一个或多个实施例涉及例如在计算机视觉领域中的图像处理,更具体地讲,涉及一种从2维(2D)拍摄图像实现3维(3D)模型生成的方法、介质以及系统。

                        背景技术

关于3D建模,通常,研究者集中于计算机图形或计算机视觉领域。例如,在计算机图形领域中,已经开展了目的在于开发用于在3D空间中对物体的几何信息和材质信息进行建模的精确计算机辅助设计(CAD)系统的研究。然而,这里,因为真实世界中的几何信息非常复杂并且难以准确地对照明效果进行建模,所以传统技术的问题在于生成拍摄图像。

在计算机视觉领域中,已经开展了例如如下的研究,即,通过使用计算了在真实世界的照明条件下的物体的纹理信息的实际的图像从2D图像来计算3D几何信息。作为示例,这样的从2D图像计算3D几何信息的传统技术包括“Single view metrology(单幅图像测量)”(Criminisi,1999)、“Image-basedmodeling and photo editing(图像式建模和照片编辑)”(Byong Mok Oh,2001)和“Using Geometric Constraints Through Parallelepipeds for Calibration and 3DModelling(通过平行六面体使用几何约束来标定和3D建模)”(Wilczkowiak,2005)。然而,这些技术仍存在获得3D几何信息的计算非常复杂的问题。

Derek Hoeim于2002年提出了“automatic photo pop-up(自动照片弹出)”技术,与上面的技术相比,该技术需要的计算非常简单。Hoeim技术基于一种用于儿童的立体书,如果打开这种书,则会弹出图片。即,根据该技术,2D拍摄图像被分为地面区域、垂直区域和天空区域,并估计出图像中的地面区域和垂直区域之间的边界。然后,以估计出的边界为基准,形成2D拍摄图像的物体被切出并被折叠,从而生成3D模型。然而,这种技术也具有如下问题,即,如果没有正确地设置地面和垂直物体之间的边界,则不能获得准确的3D模型。例如,如果物体是建筑物,则汽车可能存在于该建筑物和地面之间,并且由于该建筑物和地面之间汽车的存在,可能错误地设置地面区域和垂直区域之间的边界。

                        发明内容

本发明的一个或多个实施例提供一种系统、方法和介质,所述系统、方法和介质实现了在生成3D模型的过程中用于获得3D几何信息的简单的计算,例如,即使当汽车存在于建筑物和地面之间时,也可以准确的生成3D模型。

将在下面的描述中部分地阐述本发明的另外的方面和/或优点,并且本发明的另外的方面和/或优点将部分地通过描述变得明了,或可以通过实施本发明而获知。

为了实现上述和/或其它的方面和优点,本发明的实施例包括一种建模方法,包括:通过检测图像内的边缘来识别所述图像内的物体;基于检测到的识别出的物体相对于所述图像的限定的表面的表面方向来确定识别出的物体的复杂度;基于确定的复杂度,选择性地通过识别分别用于识别的物体的一个或多个对应表面的一个或多个没影点,并分别针对识别出的一个或多个没影点分析所述图像的一个或多个对应表面的各个确定的点来生成用于3D模型的一个或多个表面;在3D空间中通过组合所述一个或多个表面来生成3D模型。

为了实现上述和/或其它的方面和优点,本发明的实施例包括一种建模方法,包括:通过检测图像内的边缘来识别所述图像内的物体;通过识别分别用于识别处的物体的一个或多个对应表面的一个或多个没影点,并分别针对识别出的一个或多个没影点分析所述图像的一个或多个对应表面的各个确定的点以及在所述一个或多个对应表面中的每个表面内的对应的确定的线来分别生成用于识别出的物体的3D模型的一个或多个表面,每个对应表面内的每一对应的确定的线是穿过两个边缘之间的对应表面的中部线,所述两个边缘基本垂直于与图像的识别的底面基本平行的线;在3D空间中通过组合所述一个或多个表面来生成3D模型。

为了实现上述和/或其它的方面和优点,本发明的实施例包括一种建模系统,包括:物体识别单元,通过对图像内的边缘的控制检测来识别所述图像内的物体;物体分类单元,基于检测到的识别出的物体相对于所述图像的限定的表面的表面方向来确定识别出的物体的复杂度;模型生成器,选择性地基于确定的复杂度,通过识别分别用于识别的物体的一个或多个对应表面的一个或多个没影点,并分别针对识别出的一个或多个没影点分析所述图像的一个或多个对应表面的各个确定的点来生成用于3D模型的一个或多个表面,并在3D空间中通过组合所述一个或多个表面来生成3D模型。

为了实现上述和/或其它的方面和优点,本发明的实施例包括一种建模系统,包括:物体识别单元,通过对图像内的边缘的控制检测来识别所述图像内的物体;模型生成器,通过识别分别用于识别处的物体的一个或多个对应表面的一个或多个没影点,并分别针对识别出的一个或多个没影点分析所述图像的一个或多个对应表面的各个确定的点以及在所述一个或多个对应表面中的每个表面内的对应的确定的线来分别生成用于识别出的物体的3D模型的一个或多个表面,每个对应表面内的每一对应的确定的线是穿过两个边缘之间的对应表面的中部线,所述两个边缘基本垂直于与图像的识别的底面基本平行的线并在3D空间中通过组合所述一个或多个表面来生成3D模型。

                        附图说明

通过下面结合附图对实施例的描述,这些和/或其它的方面和优点将变得明显和更容易理解,附图中:

图1示出了根据本发明实施例的实现3维(3D)模型生成的系统;

图2通过示图(a)-(c)示出了根据本发明实施例的诸如由图1中示出的物体识别单元进行的物体的自动识别;

图3通过示图(a)-(e)示出了根据本发明实施例的诸如由图1中示出的物体识别单元通过用户搜索区域选择进行的物体的半自动识别;

图4A至图4C示出了根据本发明实施例的诸如由图1中示出的物体分类单元对物体进行分类的过程;

图5是3D空间中的立方体的2-点透视图;

图6和图7示出了用于说明根据本发明实施例的诸如由图1中示出的表面信息计算单元计算表面几何信息的方法的建筑物;

图8和图9是说明根据本发明实施例的诸如由图1中示出的表面信息计算单元计算任一表面的平面方程的方法的示图;

图10是说明根据本发明实施例的由图1中示出的第一3D模型生成单元映射纹理的方法的示图;

图11示出了根据本发明实施例的生成3D模型的方法;

图12示出了根据本发明实施例的作为诸如图1中示出的生成3D模型的系统的导航系统;

图13示出了根据本发明实施例的导航方法。

                        具体实施方式

现在,将对实施例做出详细的说明,附图中示出了实施例的示例,在附图中,相同的标号始终表示相同的元件。因此,本发明的实施例可以以许多不同形式来实施,并且不应该被理解为限于这里阐述的实施例。因此,下面仅通过参照附图来描述实施例以说明本发明的各方面。

图1示出了根据本发明实施例的实现3维(3D)模型的系统。

参照图1,生成3D模型的系统可以包括例如物体识别单元11、用户界面12、边缘检测单元13、物体分类单元14、表面信息计算单元15、第一3D模型生成单元16和第二3D模型生成单元17。

物体识别单元11可以基于2D拍摄图像中的图像特性的改变和例如通过用户界面12输入的用户输入信息中的至少一个来识别包括在2D拍摄图像中的至少一个物体。即,物体识别单元11可以基于2D拍摄图像中的图像特性的改变来自动识别物体,和/或可以基于用户输入信息来手动识别物体;术语“半自动”表示自动识别物体和输入信息来识别物体的结合使用。

具体地讲,这里,为了识别物体,可以使用各种2D拍摄图像特性中的纹理(texture)。在这方面,纹理信息可以包括用于表现3D模型的信息项中除几何信息之外的所有的信息项。即,物体识别单元11可以检测物体的边界,然后基于检测结果来识别物体,其中,物体的边界与其中形成2D拍摄图像的像素的纹理不同的不同区域的边界对应。

图2在示图(a)-(c)中示出了根据本发明实施例的物体的自动识别。

图2的示图(a)是通过使用数码相机拍摄的市中心的2D拍摄图像。该2D拍摄图像捕捉了地面、建筑物和天空。参照图2的示图(a),可以确定的是,地面、建筑物和天空的纹理彼此间有很大的不同。因此,例如,物体识别单元11可以对应于其中2D拍摄图像中的像素的纹理彼此不同的区域的边界检测到地面、建筑物和天空的边界。

图2的示图(b)示出了例如由物体识别单元11检测到的地面的边界21、建筑物的边界22和天空的边界23。另外,在实施例中,如图2的示图(c)中所示,通过将建筑物的边界延长到地面,物体识别单元11可以识别建筑物的边界24。

此外,物体识别单元11可以基于输入到用户界面12的用户输入信息来执行物体的手动识别。这与用户通过使用例如触摸屏输入装置的用户界面12来绘制物体的所有边界的情况对应。因此,在实施例中,物体识别单元11可以基于2D拍摄图像的图像特性的改变和输入到用户界面12的用户输入信息来识别包括在2D拍摄图像中的至少一个物体。这里,这种自动识别物体的方法可以更便于用户,但所得的识别速度会是缓慢的,或会出现误差。此外,仅执行物体的手动识别的方法给用户施加了沉重的负担。

图3在示图(a)-(e)中示出了根据本发明实施例的这种物体的半自动识别。

参照图3的示图(a),用户可以诸如通过使用用户界面12来在2D拍摄图像中指定用于识别物体的搜索区域31。因此,物体识别单元11可以仅在由用户输入信息指定的搜索区域内识别物体,从而比全自动方法更快地识别物体。图3的示图(b)示出了基于由用户指定的搜索区域识别的物体的示例左右边界32。

参照图3的示图(c),用户还可以例如通过使用用户界面12来绘制2D拍摄图像中的物体的顶部线33。因此,与全自动方法相比,物体识别单元11可以通过基于由输入到用户界面12的用户输入信息指示的物体的顶部线33和2D拍摄图像中的纹理的改变来更准确地识别物体。图3的示图(d)还示出了基于由用户绘制的物体的顶部线识别出的物体的边界34。图3的示图(e)还进一步示出了由用户绘制的物体的大致边界35。这样,通过用户交互,可以半自动地识别物体的边界。

边缘检测单元13可以用来为由物体识别单元11识别出的至少一个或多个物体中的当前期望进行3D建模的物体(下文中称为“当前物体”)检测边缘,所述边缘指示图像信息的改变等于或大于阈值的点。在这种情况下,例如,在执行这种边缘检测操作若干次后,可以由用户或设计器基于这种操作的结果来适当地确定阈值。具体地讲,在实施例中,为了检测当前物体中的边缘,各种图像信息项中的发光强度(luminous intensity)被使用。即,边缘检测单元13可以检测指示光亮度(luminance)的改变等于或大于阈值的点的边缘。例如,建筑物包括许多窗户。因此,例如,对于这样的建筑物,边缘检测单元13可以对应于光亮度的改变等于或大于阈值的点来检测建筑物的混凝土表面和窗户之间的边界。

例如,物体分类单元14可以基于由边缘检测单元13检测到的边缘的延长线的形状来确定当前物体的复杂度,并且例如,根据因此确定的复杂度,物体分类单元14可以将当前物体分类为简单物体和复杂物体中的一种。通常,可以基于三个表面点来限定3D空间中的任一表面。由于两点与一条直线对应,所以可以由存在于该表面上的一点和一条直线来限定3D空间中的任一表面。因此,如果由边缘检测单元13检测到的边缘的每条延长线的形状均为直线,并且可以确定存在于包含所述直线的表面上的点,则可以限定与所述边缘延长线对应的建筑物的表面。即,如果由边缘检测单元13检测到的边缘的延长线为直线,并且包含所述边缘的延长直线的表面与2D拍摄图像的地面垂直,则物体分类单元14可以将当前物体分类为简单物体。选择性地,例如,如果物体没有被分类为简单物体,则该物体会被分类为复杂物体。

图4A至图4C示出了根据本发明实施例的例如由物体分类单元14进行的物体的不同分类。

参照图4A,图4A的示图(a)中示出的当前物体包括与2D拍摄图像的地面垂直的一个表面。图4A的示图(b)中示出的当前物体包括与2D拍摄图像的地面垂直的两个表面。此外,图4A的示图(c)和示图(d)中示出的当前物体包括与2D拍摄图像的地面垂直的四个表面。在图4A中示出的物体中,由边缘检测单元13检测到的边缘的延长线的形状为直线,并且每个包含所述边缘的延长直线的表面与2D拍摄图像的地面垂直。因此,例如,物体分类单元14可将图4A中的物体分类为简单物体。

参照图4B,图4B的示图(a)中示出的当前物体包括与2D拍摄图像的地面垂直的一个表面和不与2D拍摄图像的地面垂直的另一表面。此外,图4B的示图(b)中的当前物体包括与2D拍摄图像的地面垂直的表面,但是由边缘检测单元13检测到的边缘的延长线的形状不是直线。参照图4C,在图4A至图4C中示出的当前物体的表面中,一些表面与2D拍摄图像的地面垂直,而其它表面不与2D拍摄图像的地面垂直。此外,在由边缘检测单元13从图4C中示出的当前物体检测到的边缘的延长线中,一些边缘延长线是直线,而其它边缘延长线不是直线。

在图4B和图4C中示出的物体中,由边缘检测单元13检测到的边缘的延长线的形状为直线,并且包含所述边缘延长直线的表面不与2D拍摄图像的地面垂直。因此,在这里,例如,物体分类单元14将所述物体分类为复杂物体。然而,在实施例中,如上所述的物体分类标准考虑是否可以计算建筑物的平面方程,所述平面方程将随后描述。因此,本发明所属领域的普通技术人员应该进一步理解的是,如果根据附加的或不同的技术来计算建筑物的表面方程,则物体分类标准会相应地有所不同。

这里,例如,如果当前物体被分类为简单物体,则表面信息计算单元15可以检测至少一个没影点,所述没影点是由边缘检测单元13检测到的边缘的延长线最终将会在该处彼此相交的点。

例如,图5示出了根据本发明实施例的3D空间中的立方体的2-点透视图。

参照图5,通过使用以2D空间中的两个没影点作为基准的透视方法来示出3D空间中的立方体。

因为将人眼如何看到物体的原理应用到透视图,所以透视图可以表现立体效果。具体地讲,可以确定的是,如果3D空间中的立方体被投影到2D平面上,则立方体的表面的边界中的平行的边界被投影为在任一公共点处彼此相交的线。该公共点被称为没影点。没影点可以是2D空间中的有限远点或无限远点。如图5中所示,在立方体的表面的边界中的彼此平行的水平的边界具有有限远没影点,图5中示出了来自于从立方体的右竖直壁的顶点的延伸的没影点和位于示出的立方体的背后的来自于从立方体的背竖直壁的顶点的延伸的另一没影点。然而,彼此平行的竖直边界具有无限远没影点。在实施例中,没影点表示有限远没影点。

如所示出的,可以从图5确定的是,一个没影点与一个表面对应。即,通过使用在检测到的没影点处会聚的边缘延长线的几何信息,表面信息计算单元15可以计算与检测到的没影点对应的物体的几何信息。

这里,在这个实施例中,边缘延长线的几何信息是指边缘延长线的直线方程,物体的表面的几何信息是指物体的表面的平面方程。然而,本发明所属领域的普通技术人员应该理解的是,在不同的实施例中,边缘延长线或物体的表面的几何信息可以是与上述方程的类型不同类型的几何信息。

更具体地讲,通过使用在这样检测到的没影点处会聚的边缘延长线中最接近于当前物体边界的中心的边缘延长线(下文中称为“中部线”)的直线方程以及边界(下文中称为“当前物体的底部线”)上的任意点的坐标,表面信息计算单元15可以计算与检测到的没影点对应的物体的表面的平面方程。

具体地讲,如果有多个没影点,则表面信息计算单元15可以通过使用在多个没影点中的第一没影点处会聚的边缘延长线中的中部线的直线方程和与第一没影点对应的第一表面的底部线上的任意点的坐标来计算与第一没影点对应的第一表面的平面方程。另外,表面信息计算单元15可以通过使用在多个没影点中的第二没影点处会聚的边缘延长线中的中部线的直线方程和与第二没影点对应的第二表面的底部线上的任意点的坐标来计算与第二没影点对应的第二表面的平面方程。针对多个没影点中的剩余的没影点,可以再次执行相同的处理。

图6和图7示出了用于解释根据本发明实施例的诸如由图1中示出的表面信息计算单元15计算表面几何信息的方法的建筑物。

在图6的示出部分(a)中,示出了例如由物体识别单元11识别出的当前物体61的边界。如上所述,由于3D空间中的一个表面通过存在于该表面上的一个点和一条直线来限定,所以可以确定当前物体的底部线上的一个点。因此,表面信息计算单元15可以确定图6的示出部分(a)中示出的当前物体的底部线上的一个点62。具体地讲,当例如由于当前物体和地面之间的边界上的诸如汽车的障碍物导致不易于检测到当前物体的正确的底部线时,用户可以指定该点62。在这种情况下,表面信息计算单元15可以基于例如输入到用户界面12的用户输入信息来确定图6的示出部分(a)中示出的当前物体的底部线上的一个点62。此外,图6的示出部分(b)示出了由边缘检测单元13检测到的边缘的延长线。在边缘的延长线中,在右没影点(未示出)处会聚的边缘延长线63存在于当前物体61的包含上面确定的点62的表面上。

例如,图7的示出部分(a)示出了由边缘检测单元13检测到的边缘的延长线。边缘延长线中的在左没影点71处会聚的边缘延长线72与当前物体的左表面对应,在右没影点(未示出)处会聚的边缘延长线63与当前物体的右表面对应。图7的示出部分(b)示出了计算与右没影点对应的当前物体的右表面的平面方程的过程。即,例如,表面信息计算单元15可以确定在右没影点处会聚的边缘延长线中位于当前物体边界的中间的中部线73以及中部线73的直线方程和当前物体的右表面的底部线上的任意点。然后,通过使用确定的中部线73的直线方程和底部线的3D坐标,可以计算物体的右表面的平面方程。

图8和图9是说明根据本发明的实施例的例如由图1中示出的表面信息计算单元15来计算任一表面的平面方程的方法的示图。

参照图8,图8中示出的建筑物由三个表面形成。

三个表面的边界与三个表面的中部线相交处的点由A、B、C和D表示。例如,可以由线段AB和三个表面中的左表面的底部线上的点G来确定左表面。现在将另外参照图9来更详细地说明根据实施例的一种方法,例如表面计算单元15通过该方法使用线段AB的直线方程和点G的3D坐标来计算左表面的平面方程。

参照图9,3D空间中的相机的位置为O。

这里,可以假设3D空间为拍摄2D拍摄图像的真实世界空间,相机的位置是从其拍摄2D拍摄图像的相机的位置,并且可以是2D拍摄图像的正中心。具体地讲,可以进一步假设相机是针孔相机并能够完美地投影。因为实际的相机不是针孔相机,所以会出现微小的误差。包含线段A′B′的表面是3D空间中的实际建筑物的表面,并且在相机的焦距中被投影为包含线段AB的建筑物的表面,即,2D拍摄图像中的建筑物的表面。

线段OA和OB的延长线分别通过3D空间中的建筑物的表面的A′和B′。由于线段C′A′和D′B′相对地面的高度相同,所以D′B′∶OO′=C′A′∶OO′,OB′∶OB″=OA′∶OA″。因此,可以确定的是,线段A′B′与线段A″B″平行。由于建筑物的表面C′A′B′D′与地面垂直,所以建筑物的表面的法线与地面平行。因此,可知与线段A″B″垂直的向量是与建筑物的表面垂直的向量。

例如,表面信息计算单元15可以从相机的位置O的3D坐标和建筑物的边界与中部线的交点A的3D坐标来计算直线OA的方程。

另外,在这个实施例中,表面信息计算单元15可以从相机的位置O的3D坐标和建筑物的边界与中部线的交点B的3D坐标来计算直线OB的方程。在这种情况下,可以从2D拍摄图像中的点的2D坐标和相机的焦距来估计相机的位置O以及交点A和B的3D坐标。

此外,通过使用这样计算出的直线OA的方程,表面信息计算单元15可以计算直线OA与地面的交点A″和直线OB与地面的交点B″的3D坐标,并从这样计算出的交点A″和B″的3D坐标来计算直线A″B″的方程。通过使用这样计算出的直线A″B″的方程,表面信息计算单元15可以因此计算与存在于地面上的直线A″B″垂直的向量N。

表面信息计算单元15还可以进一步从相机的位置O的3D坐标和建筑物的底部线上的任意点G的3D坐标来计算直线OG的方程。通过使用这样计算出的直线OG的方程,表面信息计算单元15可以计算直线OG与3D空间地面的交点G′的3D坐标。然后,如果存在于该表面上的任一点的3D坐标和与该表面垂直的向量值被给出,则可以计算该表面的方程。即,例如,假设存在于表面上的点为(x0,y0,z0)并且与该表面垂直的向量N为N=ai+bj+ck,则由下面的方程1来表示该表面。

方程1:

            a(x-x0)+b(y-y0)+c(z-z0)=0

因此,通过使用这样计算出的向量N和交点G的3D坐标,表面信息计算单元15可以计算包含中部线AB的建筑物的左表面的平面方程。

第一3D模型生成单元16可以进一步通过使用2D拍摄图像数据和诸如由表面信息计算单元15计算的表面几何信息来生成当前物体的3D模型。这里,2D拍摄图像数据是指形成2D拍摄图像的像素的2D坐标和纹理,由表面信息计算单元15计算出的表面几何信息是指表面的平面方程。更具体地讲,第一3D模型生成单元16可以将形成2D拍摄图像的当前物体的像素的2D坐标带入由表面信息计算单元15计算出的每个表面的平面方程中,从而计算形成当前物体的每个表面的像素的3D坐标,例如,x、y和z坐标。第一3D模型生成单元16还可以通过将与形成当前物体的每个表面的每个像素对应的2D拍摄图像的纹理映射在像素的3D坐标上来生成3D物体的3D模型。

图10是根据说明本发明实施例的诸如通过图1中示出的第一3D模型生成单元16映射纹理的方法的示图。

参照图10的示出部分(a)和(b),第一3D模型生成单元16可以将由面对当前物体的每个表面的相机拍摄的纹理映射在形成当前物体的每个表面的每个像素的3D坐标上。更具体地讲,针对当前物体101的左表面102,第一3D模型生成单元16可以设置相机的位置,使得相机可以面对左表面102,然后,第一3D模型生成单元16可以将由这样设置的位置处的相机所拍摄的2D拍摄图像的纹理映射到左表面102上。针对当前物体101的右表面103,第一3D模型生成单元16可以设置相机的位置,使得相机可以面对当前物体101的右表面103,然后,第一3D模型生成单元16可以将由这样设置的位置处的相机所拍摄的2D拍摄图像的纹理映射到右表面103上。

如果例如由物体分类单元14将当前物体确定地分类为复杂物体,则第二3D模型生成单元17可以通过使用传统3D建模方法来代替上面描述的当前实施例的3D建模方法来选择性地生成当前物体的3D模型。例如,针对由物体分类单元14分类为复杂物体的物体,第二3D模型生成单元17可以使用上面针对传统技术所描述的自动弹出算法来生成物体的3D模型。

图11示出了根据本发明实施例的生成3D模型的方法。

参照图11,在一个实施例中,生成3D模型的方法可以包括例如在图1中示出的用于生成3D模型的系统中顺序执行的操作。因此,上面针对图1中示出的用于生成3D模型的系统所描述的内容也可以同样地包含在根据该实施例的生成3D模型的方法中,请注意:上面没有具体描述的其它实施例也适用。

在操作111中,可以基于2D拍摄图像中的纹理的改变和例如输入到用户界面12的用户输入信息中的至少一个来识别形成2D拍摄图像的至少一个或多个物体。

在操作112中,例如,可以在诸如那些在操作111中识别出的至少一个或多个识别出的物体中的当前物体中检测指示发光强度的改变等于或大于阈值的点的边缘。

在操作113中,可以基于在操作112中检测到的边缘的延长线的形状来确定当前物体的复杂度,然后,可以将当前物体分类为简单物体和复杂物体中的一种。

在操作114中,如果当前物体被分类为简单物体,则可以执行操作115,如果当前物体被分类为复杂物体,则可以执行操作118。

在操作115中,可以检测在操作112中检测到的边缘的延长线的彼此相交处的至少一个没影点,并且可以通过使用在检测到的没影点处会聚的边缘延长线中的中部线的直线方程和与该没影点对应的表面的底部线上的任意点的坐标来计算与该没影点对应的表面的平面方程。

然后,在操作116中,可以将形成2D拍摄图像的当前物体的像素的2D坐标,例如,x和y坐标带入操作115中计算出的每个表面的平面方程中,从而计算形成当前物体的每个表面的像素的3D坐标,例如,x、y和z坐标。

然后,在操作117中,可以通过将与形成当前物体的每个表面的每个像素对应的2D拍摄图像的纹理映射到所述像素的3D坐标上来生成3D物体的3D模型。

在操作118中,可以通过使用传统3D建模方法代替根据本发明实施例的3D建模方法来选择性地生成当前物体的3D模型。

图12示出了根据本发明实施例的作为图1中示出的用于生成3D模型的系统的导航系统,简单地讲,虽然这里作为导航系统进行描述,但是本系统的实施例可以被实施为具有或不具有这种导航能力的其它系统。

例如,参照图12,导航系统可以包括相机121、3D模型生成设备122、存储器123、全球定位系统(GPS)124、渲染(rendering)设备125和显示设备126。与其它元件结合,3D模型生成设备122可以实现图1中示出的用于生成3D模型的前述系统的各方面,上面详细地描述了该系统,因此这里将省略对该系统的描述,再次提请注意:图12的导航系统可以仅为图1中示出的用于生成3D模型的系统的另一实施例。

因此,如上所述,相机121可以捕捉例如真实世界中的场景,从而生成2D拍摄图像。导航系统也可以进一步为移动系统,这样相机121被潜在地(potentially)安装在例如汽车的移动体的前部,从而可以拍摄与移动体的运动方向对应的场景。

例如,基于边缘的延长线彼此相交处的点,3D模型生成设备122可以计算形成例如由相机121生成的2D拍摄图像的物体中的一个物体的表面的几何信息,从而生成物体的3D模型,其中,所述边缘对应于物体中的图像信息的改变等于或大于阈值的点。

存储器123可以进一步存储由3D模型生成设备122生成的3D模型。因此,在存储器123中,可以将通过使用相机121拍摄的2D拍摄图像的3D模型潜在地与其它3D模型一起存储。

然而,请注意:本领域的普通技术人员应该理解,根据当前实施例的这种导航系统可以仅包括只存储预生成的(例如,预先由另一设备而不是所述导航系统生成的)3D模型的存储器123。然而,由于对于根据本实施例的3D模型生成设备122而言,用于获得3D几何信息的计算很简单,所以3D模式生成设备122可以不需要用于存储可以被移动体访问的所有区域的3D模型的大容量存储器。在这种情况下,在实施例中,例如,3D模型生成设备122可以直接执行移动体当前所处的位置的2D拍摄图像的3D建模,并从存储在存储器123中的3D模型中删除远离移动体的区域的3D模型,从而仅通过小容量的存储器来运行,请注意:可选的实施例同样适用。

例如,GPS 124可以被用来从至少一个或多个GPS卫星接收安装在这样的移动体上/中的导航系统的当前位置信息,还请注意:可选定位系统同样适用。

渲染系统125可以进一步从存储在存储器123中的3D模型中提取与由GPS 124接收的导航系统的当前位置信息对应的3D模型,并在与安装有该导航系统的移动体的运动方向对应的2D平面上渲染这样提取的3D模型。这里,例如,图1中示出的用于生成3D模型的系统可以仅为渲染或渲染并显示这样生成的3D模型的不具有相机的甚至没有GPS 124的系统。

然后,显示系统125可以显示这种由渲染系统125执行的渲染的结果。

因此,至少根据上面的描述,图13示出了根据本发明实施例的导航方法。

参照图13,导航方法可以包括在例如图12中示出的导航系统中按时序执行的操作。因此,虽然下面省略了上面针对图12中示出的导航系统描述的各方面,所述方面也可以同样地被应用到根据当前实施例的导航方法,再次提请注意:可选的实施例也适用。

在操作131中,可以通过拍摄真实世界中的场景来生成2D拍摄图像。

在操作132中,基于物体中的边缘的延长线彼此相交处的点,可以计算形成在操作131中生成的2D拍摄图像的物体中的一个物体的表面的几何信息,从而生成物体的3D模型,其中,所述边缘对应于物体中的图像信息的改变等于或大于阈值的点。

在操作133中,可以存储在操作132中生成的3D模型。

在操作134中,可以从至少一个或多个GPS卫星接收例如安装在移动体上的导航系统的当前位置信息。

在操作135中,可以从包括在操作133中存储的3D模型的多个3D模型中提取与接收的当前位置信息对应的3D模型,并可以在与安装有导航系统的示例移动体的运动方向对应的2D平面上渲染提取的3D模型。

在操作136中,可以显示渲染的结果。

根据本发明的一个或多个实施例,通过使用2D拍摄图像中的任一物体的至少一个或多个在没影点处会聚的边缘延长线的线性方程,可以计算与没影点对应的表面的平面方程,并且通过使用计算出的平面方程,可以生成物体的3D模型。这样,可以简化在生成3D模型的过程中的3D几何信息的计算。

此外,根据本发明的一个或多个实施例,即使当示例汽车存在于建筑物和地面之间时,通过使用在没影点处会聚的边缘延长线中最接近于物体的中心部分的边缘延长线的直线方程,也可以计算这种物体的表面的平面方程,从而准确地生成3D模型,请注意:除了这种存在于建筑物和地面之间的车之外,本发明的实施例克服了进一步潜在地分散因素的缺点。

另外,根据本发明的一个或多个实施例,可以基于物体中的边缘的形状来确定物体的复杂度,并且根据复杂度,本发明的一方面选择性地采用根据本发明的一个或多个实施例的几何信息计算方法或传统3D建模方法或可选的未来开发的3D建模方法,从而提供最佳的3D建模处理。

此外,如上所述,根据本发明的一个或多个实施例,3D建模方法中的计算是简单并准确的,因此,当该方法直接应用于导航系统时,可以减小存储3D模型的存储器的容量,并可以将更精确的导航屏幕提供给用户。

除了上面描述的实施例之外,本发明的实施例还可以通过例如计算机可读介质的介质中/上的计算机可读代码/指令来实现,以控制至少一个处理元件来实现上面描述的任意实施例。该介质可以对应于允许计算机可读代码的存储和/或传输的任何介质。

可以以各种方式来在介质上记录/传输计算机可读代码,例如,所述介质的示例包括比如磁性存储介质(例如,ROM、软盘、硬盘等)和光学记录介质(例如,CD-ROM和DVD)的记录介质以及诸如携带或包含载波的介质的传输介质以及互联网的元素。因此,例如,根据本发明实施例,所述介质可以为这种包括或携带信号或信息的被限定和可测量的结构,如携带比特流的装置。所述介质也可以为分布式网络,从而以分布方式来存储/传输并执行计算机可读代码。此外,仅作为示例,处理元件可以包括处理器或计算机处理器,并且处理元件可以被分布和/或包括在单一装置中。

虽然已经参考本发明的不同的实施例具体示出并描述了本发明的各方面,但是应该理解的是,这些示例性实施例应该被视为仅为描述性的示例,并不意在限制。一个实施例中的一个方面的功能或能力的任何变窄或变宽不应该被视为不同实施例中的相似特征的相应变宽或变窄,即,每个实施例内的特征或方面的描述通常应该被视为适用于在其它的实施例中的其它类似的特征或方面。

因此,虽然已经示出并描述的一些实施例,但是,本领域技术人员应该理解的是,在不脱离本发明的原理和精神的情况下,可以对这些实施例做出改变,在权利要求及其等同物中限定了本发明的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号