CN112055192A - 图像处理方法、图像处理装置、电子设备及存储介质 - Google Patents
图像处理方法、图像处理装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112055192A CN112055192A CN202010774831.XA CN202010774831A CN112055192A CN 112055192 A CN112055192 A CN 112055192A CN 202010774831 A CN202010774831 A CN 202010774831A CN 112055192 A CN112055192 A CN 112055192A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- contour
- panoramic
- panoramic image
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/275—Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了图像处理方法、图像处理装置、电子设备及存储介质,涉及图数据处理技术领域。所述方法包括:获取对于至少一个三维对象中每个三维子对象拍摄的至少一幅全景图像对应的视频流以及时间戳;根据视频流中视频帧之间的几何关系,获取视频流中每个视频帧的位置;将每个视频帧的位置中与时间戳相对应的位置,作为拍摄每个三维子对象的至少一幅全景图像时的全景相机的位置,其中,每幅全景图像是对于一个三维子对象拍摄的;基于全景相机的位置将每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行拼接,得到至少一个三维对象的多对象平面轮廓。本发明实施例可以高效地对采集到的数据进行处理为对象建模提供准备数据。
Description
技术领域
本发明涉及数据处理领域,尤其涉及图像处理方法、图像处理装置、电子设备及存储介质。
背景技术
在对象建模领域,如何使得生成的对象模型具有高分辨率和/或高准确度是业界极力追求的目标。
对象建模可以实现用户足不出户(例如通过网络)即可浏览三维对象的2D和/或3D结构,并且,对象的3D建模可实现如同身临其境的效果,这在虚拟现实领域是一项非常重要的应用。
在对象建模领域,尤其是2D和3D建模领域,国内外的技术方案主要分为两大类:手动制作和自动化建模。
对于手动制作的方法,需要依赖大量的人工操作,对于对象的三维结构进行标识,并手动进行多个对象模型之间的拼接。手动制作一套三维对象的3D模型需要较长时间,因此大量的三维对象数据需要众多的人员来手动制作,人员成本过高,很难实际应用。
对于自动化3D建模的方法,目前大多数采用专业的3D扫描设备,可以直接获取单个对象的三维点云,然后进行三维点云的拼接,生成3D模型。但是,这种专业的3D扫描设备的图像采集设备精度不高,导致捕获的图像分辨率不高,致使生成的三维模型的分辨率不够高。而且,这种3D扫描设备通常价格昂贵,很难满足消费级应用的需求。
因此,如何得到高分辨率的采集图像,如何高效地处理采集的图像以便为对象建模提供建模准备数据是本发明考虑要解决的技术问题。
发明内容
为了解决以上问题之一,本发明提供了一种图像处理方法、装置、电子设备及存储介质。
根据本发明的一个实施例,提供一种图像处理方法,所述方法包括:
获取对于至少一个三维对象中每个三维子对象拍摄的至少一幅全景图像对应的视频流以及时间戳;
根据所述视频流中视频帧之间的几何关系,获取所述视频流中每个视频帧的位置;
将所述每个视频帧的位置中与所述时间戳相对应的位置,作为拍摄所述每个三维子对象的至少一幅全景图像时的全景相机的位置,其中,每幅全景图像是对于一个三维子对象拍摄的;
基于所述全景相机的位置将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓。
根据本发明的另一个实施例,提供一种图像处理装置,包括:处理器;以及存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行上面描述的图像处理方法之一。
根据本发明的再一个实施例,提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上面描述的图像处理方法之一。
根据本发明的又一个实施例,提供一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被处理器执行时,使所述处理器执行上面描述的图像处理方法之一。
本发明提供的一种图像处理方法、图像处理装置、电子设备及存储介质,通过根据对三维对象拍摄的视频流以及拍摄全景图像的时间戳来获取拍摄全景图像时全景相机的位置,从而将从全景图像中提取到的三维子对对象的平面轮廓依据全景相机的位置进行拼接得到三维对象的多对象平面轮廓以供后续对象建模使用,从而高效地对采集到的数据进行处理为对象建模提供准备数据。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的附图标记通常代表相同部件。
图1给出了本发明实施例提供的一种图像处理方法的步骤流程图;
图2给出了本发明实施例提供的另一种图像处理方法的步骤流程图;
图3给出了本发明实施例提供的三维对象的多个全景图像在三维空间中的平面轮廓的示意图;
图4给出了本发明实施例提供的三维对象在三维空间中的平面轮廓的示意图;
图5给出了本发明实施例提供的一种平面轮廓提取方法的步骤流程图;
图6给出了本发明实施例提供的另一种平面轮廓提取方法的步骤流程图;
图7给出了本发明实施例提供的一种平面轮廓获取方法的步骤流程图;
图8给出了本发明实施例提供的一种三维点坐标获取方法的步骤流程图;
图9给出了本发明实施例提供的一种三维对象确定确定方法的步骤流程图;
图10给出了本发明实施例提供的一种对象建模方法的步骤流程图;
图11给出了本发明实施例提供的一种图像处理装置的结构框图;
图12给出了本发明实施例提供的一种电子设备的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。这里需要说明的是,本申请中的数字、序号以及附图标记仅是为了方便描述而出现的,对于本发明的步骤、顺序等等均不构成任何限制,除非在说明书中明确指出了步骤的执行有特定的先后顺序。
在对象建模领域,尤其是2D和3D建模领域,国内外的技术方案主要分为两大类:手动制作和自动化建模。
对于手动制作的方法,需要依赖大量的人工操作,对于对象的三维结构进行标识,并手动进行多个对象模型之间的拼接。手动制作一套三维对象的3D模型需要较长时间,因此大量的三维对象数据需要众多的人员来手动制作,人员成本过高,很难实际应用。
对于自动化3D建模的方法,目前大多数采用专业的3D扫描设备,可以直接获取单个对象的三维点云,然后进行三维点云的拼接,生成3D模型。但是,这种专业的3D扫描设备的图像采集设备精度不高,导致捕获的图像分辨率不高,致使生成的三维模型的分辨率不够高。而且,这种3D扫描设备通常价格昂贵,很难满足消费级应用的需求。
本发明提供了图像处理方法、图像处理装置、电子设备及存储介质。
首先,在本发明中,采用普通的全景相机来拍摄三维对象中每个三维子对象的高分辨率全景图像以及视频流,克服了背景技术中描述的3D扫描相机捕获的图像分辨率不高的缺陷。
然后,利用拍摄的多幅全景图像,可以提取单个全景图像的在三维空间中的平面轮廓(可称为“单图像平面轮廓”),并且根据视频流中各视频帧之间的几何关系,获取每个视频帧的位置,以及将拍摄三维子对象的时间戳所对应的视频帧的位置作为全景相机的位置。
进一步地,通过尺度归一化,可以实现单图像平面轮廓的尺度与全景全景相机的位置的尺度之间的统一,生成经过归一化的各单图像平面轮廓,为后续进行对象建模提供高分辨率的并且充分的数据准备,减少后续处理工作的难度。
再进一步地,可以通过对属于同一个三维子对象的各的各单图像平面轮廓的单对象融合,获得准确的单对象平面轮廓。
再进一步地,可以在三维空间中将三维对象的每个三维子对象拼接各单图像平面轮廓进行拼接,得到多对象模型(此时为2D模型)。
另外,可以对多对象模型进行修正,以得到更准确的模型,使得模型展示效果更好。
最后,通过3D模型生成,得到完整的、高分辨率的并且准确的3D模型。
下面,为了便于理解和描述,将以房屋建模为例,来详细描述本发明的各个处理过程。
图1给出了根据本发明的一个示例性实施例的图像处理方法的示意性步骤流程图。
步骤101,获取对于至少一个三维对象中每个三维子对象拍摄的至少一幅全景图像对应的视频流以及时间戳。
在本发明实施例中,三维对象是需要进行图像处理的空间物体,三维子对象是指包含与三维对象中的空间物体,例如:房屋中包含有房间,房屋为三维对象,则房间为三维子对象。视频流包含有三维对象中每个三维子对象的视频数据,时间戳是指拍摄每个三维子对象的全景图像的时间标识。
步骤102,根据所述视频流中视频帧之间的几何关系,获取所述视频流中每个视频帧的位置。
在本发明实施例中,根据视频流中视频帧之间的几何关系可以确定全景相机的移动拍摄轨迹,从而可以确定视频流中各视频帧在移动拍摄轨迹中所在的位置,可以理解,视频帧的位置主要是为了反映拍摄各视频帧时全景相机所处位置之间的相对关系。
步骤103,将所述每个视频帧的位置中与所述时间戳相对应的位置,作为拍摄所述每个三维子对象的至少一幅全景图像时的全景相机的位置,其中,每幅全景图像是对于一个三维子对象拍摄的。
在本发明实施例中,在确定每个视频帧的位置后,可以根据全景相对应的时间戳中视频帧的位置中获取拍摄该全景图像时,全景相机所处的位置。此处三维对象中的每个三维子对象需要拍摄至少一幅全景图像,拍摄的全景图像的幅数具体可以根据实际需求确定,此处不做限定。
步骤104,基于所述全景相机的位置将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓。
在本发明实施例中,通过从每个三维子对象的至少一幅全景图像中提取每个三维子对象的单对象平面轮廓,然后根据将该拍摄各全景图像时全景相机的位置将每个三维子对象的单对象平面轮廓进行尺度归一化后,将每个三维子对象的单对象平面轮廓统一到三维坐标系中,最后即可将尺度归一化后的每个三维子对象的单对象平面轮廓进行拼接,得到三维对象的多对象平面轮廓,以供后续三维建模使用。
在实际应用中,可以从对于房屋中每个房间的全景图像中提取每个房间的单对象平面轮廓后,然后根据拍摄每个房间的全景图像时的全景相机的位置可以将每个房间的单对象平面轮廓进行归一化后拼接,得到包括有房屋中每个房间的多对象平面轮廓。
本发明提供的一种图像处理方法,通过根据对三维对象拍摄的视频流以及拍摄全景图像的时间戳来获取拍摄全景图像时全景相机的位置,从而将从全景图像中提取到的三维子对对象的平面轮廓依据全景相机的位置进行拼接得到三维对象的多对象平面轮廓以供后续对象建模使用,从而高效地对采集到的数据进行处理为对象建模提供准备数据。
图2给出了根据本发明的另一个示例性实施例的图像处理方法的步骤流程图。
在根据本发明的一个示例性实施例的三维对象建模方法中,基于针对一个三维子对象(例如在一个房间内)拍摄的至少一幅全景图像(一个全景图像只对应一个房间(三维对象),但是一个房间内可能拍摄多个全景图像,即一个房间可能对应多个全景图像),提取该三维子对象的每幅全景图像的在三维空间中的平面轮廓,然后对提取的平面轮廓进行归一化,以得到建模所需平面轮廓,然后,通过坐标变换,来实现多平面轮廓的拼接,由此得到多对象平面轮廓(2D模型),接着,可以再从该多对象平面轮廓生成三维对象的3D模型。
步骤201,对待处理的至少一个三维对象中每个三维子对象进行拍摄,获取所述每个三维子对象至少一幅全景图像以及所述全景图像相对应的视频流,其中,所述全景图像是在对所述每个三维子对象的视频流的拍摄过程中拍摄的。
在本发明实施例中,在对三维对象进行拍摄的过程中,可以首先对三维对象中的每个三维子对象进行连续拍摄或者间断性拍摄,只要拍摄所得到的视频流可以反映每个三维子对象之间的几何关系即可。例如:对于房间A拍摄的视频流中包括有与其相邻的房间B、C的视频帧即反映该房间A与房间B、C之间的几何关系。可以在对房屋的每个房间进行拍摄的同时,通过全景相机拍摄每个房间的全景图像。
步骤202,记录拍摄所述每个三维子对象的至少一幅全景图像的时间戳。
在本发明实施例中,拍摄全景图像的时间戳需要与视频流的时间戳相对应,若全景图像是在对三维子对象进行视频拍摄的过程中拍摄的,则可将拍摄该三维子对象的时间点对应视频戳进行记录,若全景图像是在对三维子对象进行视频拍摄后拍摄的,则需要对全景图像对应的三维子对象进行视频拍摄的时间戳进行记录。
在实际应用中,可以通过全景相机在房屋中的每个房间依次进行移动视频拍摄,每当拍摄到一个房间时,可以拍摄该房间的全景图像,此时视频拍摄仍在继续,因此可以记录下拍摄全景图像时视频流的时间戳,以使得视频流的时间戳可以反映拍摄全景图像的时间点。
本发明实施例通过在对三维对象中的每个三维子对象进行全景拍摄的过程中拍摄视频流并记录每个全景图像对应的时间戳,时候后续所确定的全景相机的位置更加准确,提高了三维对象建模的准确性。
步骤203,根据所述视频流中视频帧之间的几何关系,获取所述视频流中每个视频帧的位置。
该步骤可参照步骤102的详细描述,此处不再赘述。
步骤204,将所述每个视频帧的位置中与所述时间戳相对应的位置,作为拍摄所述每个三维子对象的至少一幅全景图像时的全景相机的位置,其中,每幅全景图像是对于一个三维子对象拍摄的。
该步骤可参照步骤103的详细描述,此处不再赘述。
步骤205,针对每个三维子对象的至少一幅全景图像,提取所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓。
在本发明实施例中,三维子对象(比如室内场景的某个房间)可以对应多张全景图像,该三维子对象可以认为由底面(即底部)、顶面(即顶部)和墙面(即支撑部)构成。那么,该全景图像在三维空间中的平面轮廓指的是该全景图像对应的三维子对象的底面的轮廓,即全景图像在三维空间中的平面轮廓为二维轮廓。如图3所示,在不同位置(即A位置、B位置和C位置)针对某个三维子对象拍摄了三张全景图像,每张全景图像的平面轮廓对应不同的矩形框(也可以是其他样式的轮廓),例如,在A位置拍摄得到的全景图像所对应的矩形的平面轮廓最大,在C位置拍摄得到的全景图像所对应的矩形的平面轮廓最小。需要说明的是,图4中的三张全景图像中的三个黑点表示拍摄全景图像时的全景相机的位置。
需要说明的是,在每个全景相机的位置,可以为同一个三维子对象拍摄至少一幅全景图像。
可选地,参照图5,所述步骤205,包括:
子步骤2051,利用针对为所述待处理的至少一个三维对象中的每个三维子对象拍摄的至少两幅全景图像的几何关系,获取每幅全景图像上的匹配特征点的三维点坐标。
子步骤2052,对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,基于所述全景图像上的、轮廓特征属于特定类别的像素点中的边缘像素点所围成的轮廓,生成所述全景图像的在所述三维空间中的平面轮廓,其中,所述特定类别至少包括所述全景图像中的三维物体的顶部、底部、支撑部。
在本发明实施例中,平面轮廓的提取可以通过多种方式来实现。以下将简要地给出一个例子来说明平面轮廓的提取方法。
以至少一个三维对象为室内房屋为例,则每个房间可以看作一个三维子对象,为每个房间拍摄至少一幅全景图像,所以一幅全景图像对应于一个房间,但每个房间可能对应于多个全景图像。
在这种情况下,由于天花板一定是在相机的上方,所以,在拍摄的全景图像中,最上方的像素点一定是属于天花板。再次,由于属于天花板上的像素点大多数具有相似特征,因此,可以根据像素点的特征相似度,最终得到属于天花板的所有像素点。
例如,首先将全景图像第一行的所有像素点均看作是属于天花板的像素点;对于第二行的每个像素点,计算其与第一行中属于同一列的像素点的特征相似度(这里的特征可采用颜色、灰度等特征;两个像素点的特征相似度例如可以为两个像素点的特征之差(例如灰度之差或颜色之差等)的绝对值等)。如果特征相似度在某个阈值之内(若采用0-255灰度值,阈值例如可设置为10),则该像素也属于天花板,再继续计算该列上第三行与第二行的相似度、第四行与第三行的相似度...,直到特征相似度超过该阈值,此时的像素点位置即是天花板的边缘像素点。
这些天花板的边缘像素点形成了天花板的边缘,因此,将这些边缘像素点投影到三维空间可形成天花板的平面轮廓。
下面将描述像素点到三维空间的投影。
假定一个全景图像的宽为W,高为H,并且假定得到的天花板的边缘像素点c在图像坐标系下的坐标为(pc,qc)。由于全景图像是由球面投影得到的,因此,在球面坐标系下将其表示为(θc,φc),其中θc∈[-π,π]为经度,φc∈[-π/2,π/2]为维度。
其中球面坐标系与图像坐标系的关系可通过如下公式1得到:
由于天花板可认为是平面,因此可以认为天花板边缘的像素点距离相机具有统一的高度hc(这里的hc可以假定为任意一个值,比如100),可以称为“天花板距离相机的假定高度”hc。为了避免误解,这里需要说明的是,天花板距离相机的假定高度hc不是图像坐标系下的纵坐标,而是三维坐标系下的高度(即,三维坐标系下y轴的值)。
如下公式2是用于将天花板边缘的像素点c在球面坐标系下的坐标(θc,φc)投影到三维平面上的三维点坐标(xc,yc,zc):
在本文中,术语“图像坐标系”指图像像素点所在的坐标系,主要用来描述图像中像素点所在的位置。由此,全景图像坐标系指全景图像的像素点所在的坐标系,主要用来描述全景图像中像素点所在的位置。
请注意,上面仅给出了基于全景图像上的天花板特征点的相似性来生成该全景图像的三维空间中的平面轮廓的一种例子,本发明可以使用的方法不限于该例子。
由于天花板可认为是平面,而且,由于全景相机一般使用三角架支撑,在拍摄房屋时,其高度一般为固定的,因此可以认为由所处理的全景图像得到的天花板边缘的各像素点距离相机具有统一的高度,可称为“相机距离天花板的高度”。
这里,由于全景相机一般使用三角架支撑,其高度为固定的,所以也可认为相机距离天花板的高度、相机距离地板的高度是固定的。
对于本步骤得到的三维空间中的平面轮廓(天花板平面轮廓),可以给该轮廓上的各三维点假定一个高度值,比如假定相机距离天花板的高度为hc(可称为“相机距离天花板的假定高度”hc),并且该假定的高度可以为任意的值,比如100(可以通过后续的处理来求出真实的相机距离天花板的实际高度,后续所获取的该高度可称为“相机距离天花板的提取高度”)。为了避免混淆,下文将这里假定的相机距离天花板的高度hc称为“相机距离天花板的假定高度”hc。
在上面的实施例中,可以基于全景图像,自动化地到该图像的平面轮廓,而无需人工参与制作,并且无需使用昂贵的3D扫描设备。
可选地,所述子步骤2052,包括:基于所述每个三维子对象的至少两幅全景图像上的像素点之间的特征相似度,确定所述每个三维子对象的至少两幅全景图像上的、轮廓特征属于所述特定类别的像素点中的所述边缘像素点;其中,两个像素点的特征相似度为所述两个像素点的特征之差的绝对值,每个所述像素点的特征包括灰度、颜色。
可选地,参照图6,所述步骤205,可以包括:
子步骤2053,利用针对为所述待处理的至少一个三维对象中的每个三维子对象拍摄的至少两幅全景图像的几何关系,获取每幅全景图像上的匹配特征点的三维点坐标。
子步骤2054,对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,通过用于提取图像轮廓的深度学***面轮廓。
在发明实施例中,将所述每一个三维子对象的至少两幅全景图像输入到经过训练的所述深度学***面上,得到与所述每幅全景图像对应的特定类别三维点,然后基于与所述每幅全景图像对应的所述特定类别三维点,形成各全景图像的在所述三维空间中的平面轮廓。
可选地,所述深度学习模型通过以下步骤获得:
步骤S1,通过人工标注作为训练图像的多个全景图像上的被关注类型的三维对象的轮廓特征,生成所述被关注类型的三维对象的轮廓特征训练数据集;
步骤S2,利用所述被关注类型的三维对象的所述轮廓特征训练数据集来训练所述深度学习模型,由此得到经过训练的深度学习模型,其中,所述深度学习模型的输出包含所述被关注类型的三维对象的轮廓特征的类别。
在本发明实施例中,将以室内房屋为例,详细描述本步骤的具体内容。
例如,对于绝大多数场景来说,房间的天花板都是平面,可以用来表示该房间的平面图,因此本发明中采用通过作为语义分割模型的深度学***面轮廓。
这里,语义分割指的是对于一幅图像,对其中的每个像素点进行类别的划分。因此,本发明的语义分割模型可以被看作用来对图像上的像素点进行类别划分的深度学习模型。
本领域技术人员可知,机器学习可分为浅层学习(Shallow Learning)和深度学习(Deep Learning)。其中,浅层学习的隐层节点的层次通常较少,深度学习的隐层节点的层次通常多一些,比如,深度学习模型通常有5层、6层,甚至可以有10多层或者更多层的隐层节点。
在语义分割模型中,通常需要事先定义像素点的类别。比如,举例来说,对于室内房屋场景,一般可将像素点的类别定义为天花板、地板、墙面、门、柜子、沙发等等。对于室外场景,例如可以将像素点的类别定义为例如天空、路面、树木、建筑等等。
传统的语义分割技术大多采用分类器加图模型的方法。常用的传统分类器包括支持向量机(SVM)、随机森林(Random Forest)等分类算法。分类器的输入通常为人工设计的局部特征,常用的特征有RGB、灰度、SIFT等。分类器对图像中的每个像素点逐一进行类别判断。常用的图模型技术包括马尔可夫随机场(Markov random fields)、条件随机场(Conditional random fields),其作用在于加强相邻像素点类别的一致性。
随着深度学习技术在语义分割中的应用,深度学习的方法已经大大超越传统的语义分割技术。
常用的语义分割的深度学习模型主要是基于CNN(卷积神经网络)的框架。由于语义分割需要输出每个像素点的类别(如果输入图像大小为H*W,则输出也为H*W),因此在传统CNN基础上,需要引入上采样的方法来增大最终输出的分辨率(最简单的上采样方式为最近邻采样)。由此,根据不同的上采样方式,常见的语义分割模型有DeepLab、UperNet、PSPNet等等。
这些技术通过采集大量普通相机拍摄的图像,对其中的每个像素点进行人工的语义标注,比如室外场景标注为天空、路面、树木、建筑等。在训练深度网络时,将这些样本送入深度语义分割模型,输出得到估计的概率矩阵,并采用交叉熵损失(Cross EntropyLoss)的目标函数减小估计值与真实标注值之间的误差,直到最终误差不再变化,则模型训练完成。
对于输入的待处理图像,将其输入到训练好的深度学习模型,得到输出的概率矩阵,计算每个位置上的最大概率输出值所对应的维度,以此作为该像素对应的类别值。比如,输入的图像大小为H*W,模型输出的概率矩阵的大小为H*W*C,其中C表示类别的个数。图像中每个像素点都对应一个C维的概率向量(概率向量之和为1),其最大值的位置即为该像素点对应的类别标签。
在本发明中,通过对全景数据的标注,来实现全景图像的语义分割,这不同于传统的利用普通图像进行语义分割的方法。
在本发明中,具体地,例如,首先可以在室内房屋的全景图像上,通过人工标注天花板与墙面的边界线以及地板与墙面的边界线的方法,来生成包含天花板、墙面和地板的训练数据(由于在后续的模型生成过程中,将自动生成天花板的边界线、墙面的边界线、地板的边界线,所以在此不需要人工标注这些信息)。
然后,利用这些训练数据来训练其输出包含天花板、地板、墙面这三个类别的深度学习模型。即,对于每幅全景图像,输入到经过训练的该深度学习模型中,即可从其输出全景图像中每个像素点对应的类别,其类别即上述的天花板、地板、墙面这三个类别中的一种。
接着,提取出其类别属于“天花板”的像素点中处于边缘的那些像素点(可称为“天花板边缘的像素点”)。
假定天花板边缘的这些像素点具有同一高度信息(由于同属于天花板),然后,将这些像素点投影到三维平面上,得到对应的三维点,基于这些三维点形成天花板在三维空间中的平面轮廓。
具体地,本步骤中将像素点(即,天花板边缘的像素点)投影到三维平面上的方法例如可以参考上述像素点到三维空间的投影的相关描述。
请注意,上面仅给出了通过深度学***面轮廓的一种例子,本发明可以使用的方法不限于该例子。
可选地,参照图7,所述子步骤2054,包括:
子步骤20541,将所述每个三维子对象的至少两幅全景图像输入到经过训练的所述深度学习模型中,得到所述每个三维子对象的至少两幅全景图像中每个像素点对应的轮廓特征的类别。
子步骤20542,提取出所述每个三维子对象的至少两幅全景图像的每幅全景图像中,轮廓特征的类别属于特定类别的像素点中的处于边缘的边缘像素点作为特定类别边缘像素点。
子步骤20543,假定所述每个三维子对象的至少两幅全景图像的每幅全景图像上的所有特定类别边缘像素点具有同一高度hc,作为特定类别的轮廓的假定轮廓高度,并将所述每幅全景图像上的所述特定类别边缘像素点投影到三维平面上,得到与所述每幅全景图像对应的特定类别三维点,然后基于与所述每幅全景图像对应的所述特定类别三维点,形成各全景图像的在所述三维空间中的平面轮廓,其中,所述特定类别包括所述全景图像中三维对象的顶部。
可选地,参照图8,所述子步骤2051或2053,包括:
子步骤20501,利用针对为所述待处理的至少一个三维对象的每个三维子对象拍摄的至少两幅全景图像的几何关系,进行所述每个三维子对象的至少两幅全景图像之间的特征点匹配,并记录所述每个三维子对象的至少两幅全景图像中互相匹配的特征点作为匹配特征点。
在本发明实施例中,在图像处理技术中,图像特征点指的是图像灰度值发生剧烈变化的点或者在图像边缘上曲率较大的点(即两个边缘的交点)。图像特征点能够反映图像本质特征,能够标识图像中的目标物体。
如何高效且准确地匹配出两个不同视角的图像中的同一个物体,是许多计算机视觉应用中的第一步。虽然图像在计算机中是以灰度矩阵的形式存在的,但是利用图像的灰度并不能准确地找出两幅图像中的同一个物体。这是由于灰度受光照的影响,并且当图像视角变化后,同一个物体的灰度值也会随之变化。所以,需要找出一种能够在相机进行移动和旋转(视角发生变化)时,仍然能够保持不变的特征,利用这些不变的特征来找出不同视角的图像中的同一个物体。
因此,为了能够更好地进行图像匹配,需要在图像中选择具有代表性的区域,例如:图像中的角点、边缘和一些区块。其中,角点的辨识度最高。在很多计算机视觉处理中,通常提取角点作为特征点,对图像进行匹配,可以使用的方法例如有SFM(Structure FormMotion,运动恢复结构)、SLAM(Simultaneous Localization and Mapping,视觉即时定位与地图构建)等。
但是,单纯的角点并不能很好地满足需求,例如:相机从远处得到的是角点,但是在近处就可能不是角点;或者,当相机旋转后,角点就发生了变化。为此,计算机视觉的研究者们设计了许多更为稳定的特征点,这些特征点不会随着相机的移动、旋转或者光照的变化而变化,可以使用的方法例如有SIFT(Scale-Invariant Feature Transform,尺度不变特征变换)、SURF(Speed Up Robust Features,加速稳健特征)等。
一个图像的特征点由两部分构成:关键点(Keypoint)和描述子(Descriptor)。关键点指的是该特征点在图像中的位置,有些还具有方向、尺度信息;描述子通常是一个向量,描述关键点周围像素的信息。通常,在匹配时,只要两个特征点的描述子在向量空间的距离相近,就可以认为它们是同一个特征点。
特征点的匹配通常需要以下三个步骤:1)提取图像中的关键点;2)根据得到的关键点位置,计算特征点的描述子;3)根据特征点的描述子,进行匹配。
可选地,本步骤中的特征点匹配的相关处理可以使用例如开源计算机视觉库OpenCV来实现。为了简洁和不模糊本发明的主题,本文对于这部分的更详细的处理过程不再赘述。
在进行这些全景图像之间的特征点匹配之后,要记录这些全景图像中互相匹配的特征点(也称为“匹配特征点”),可以例如按照如下的方式进行匹配特征点的记录。
比如,图像1上的特征点a与图像2上的特征点b是匹配的,图像2上的特征点b又与图像3上的特征点c是匹配的,图像3上的特征点c又与图像4上的特征点d也是匹配的,则可以记录一条特征点匹配数据(a,b,c,d)(也可称为“特征点跟踪轨迹”)。由此,得到输入的这些全景图像中互相匹配的特征点有关的记录数据。
子步骤20502,通过对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,减小所述每幅全景图像上的匹配特征点的重投影误差,所述每幅全景图像上的匹配特征点的三维点坐标。
图像重投影是指通过对任意视点的参考图像进行投影来产生新的图像,即,图像重投影能够改变已生成的图像的视线方向。
具体而言,在本发明中,图像重投影指的是将图像1上一个特征点p1对应的三维点坐标,通过当前相机参数投影到另外一幅图像2中,在这张图像2上的得到的投影点q2与图像1上的特征点p1在该图像2中的匹配特征点p2之间的位置差,构成重投影误差(Reprojection Error)。其中,图像2中的匹配特征点p2是实际的位置,而经过重投影得到的投影点q2是估计的位置,通过使得投影点q2与匹配特征点p2之间的位置差尽量最小化,即,使得投影点q2与匹配特征点p2尽可能地重合,求解出相机位置。
其中,优化(减小)重投影误差的目标函数中包含的变量包括相机位置和特征点的三维坐标,在逐步减小(优化)重投影误差的过程中,得到相机位置和特征点的三维坐标。
可选地,在本发明中,可以通过结合梯度下降算法和德罗内三角算法(DelaunayTriangulation),来减小重投影误差,达到优化的目的。
其中,在使用梯度下降算法时,将匹配特征点的三维点坐标当作常量,将相机位置当作变量,反之,在使用德罗内三角算法时,将匹配特征点的三维点坐标当作变量,将相机位置当作常量。
可选地,在本发明中,可以使用渐进式求解,来提高求解的相机位置和三维点坐标的精度,即,在求解过程中,通过每次增加一幅图像的方式来求解它的相机位置和匹配特征点的三维点坐标。其中,渐进式求解的方法包括例如ISFM(Incremental SFM)。
另外,进一步可选地,可以采用集束优化(bundle adjustment)来进一步减小重投影误差。具体地,可以在每张全景图像都执行完减小重投影误差以获得相机位置和三维点坐标的处理之后,最后统一使用集束优化来同时优化所有的相机位置以及所有的三维点坐标。也可以在减小重投影误差以获得相机位置和三维点坐标的处理过程中,在针对任意张全景图像的相机位置和三维点坐标获取之后,添加集束优化的处理,以对获取的相机位置和三维点坐标进行优化。
这里,集束优化指的是同时优化所有相机的位置以及所有的三维点坐标,区别于渐进式求解中分别只优化当前相机位置以及当前图像上的三维点坐标的方式。
另外,除了上面描述的渐进式求解之外,还可以采用全局式求解的方法。
步骤206,基于所述全景相机的位置,将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行归一化,得到经过归一化的每个三维子对象的平面轮廓。
在本发明实施例中,尺度归一化的目的是为了统一各个全景图像的全景相机的位置的尺度和平面轮廓的尺度,该全景相机的位置的尺度和平面轮廓的尺度可以是真实的尺度,比如米。也就是说,全景相机的位置的坐标和平面轮廓的大小要在统一的度量单位下。例如,全景相机的位置包括相机的坐标和方向。
可选地,参照图9,所述步骤206,包括:
子步骤2061,将在获取的所述每个三维子对象的至少一幅全景图像上的所有三维点坐标中的高度值从小到大排序,取排序靠前的高度值的中值或者均值作为特定类别的轮廓的提取的轮廓高度hc’;以及利用特定类别的轮廓的假定轮廓高度hc与特定类别的轮廓的提取的轮廓高度hc’的比值,从所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓生成经过归一化的所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓。
子步骤2062,在所述全景相机的位置是预先确定的相机确定高度hc’的情况下,利用假定的相机假定高度hc与相机确定高度hc’的比值,从所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓生成经过归一化的所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓,其中,所述特定类别的轮廓的假定轮廓高度hc是任意假定的一个高度。
子步骤2063,对于针对为所述待处理的至少一个三维对象拍摄的至少两幅全景图像,通过以下方式、逐个地确定其中是否有多幅全景图像属于同一个三维对象:如果两幅全景图像之间有多于特定比例的匹配特征点,则确定这两幅全景图像属于同一个三维对象。
子步骤2064,如果确定多幅全景图像属于同一个三维对象,则对于由所述多幅全景图像得到的同一个三维对象的各平面轮廓,取所述同一个三维对象的所有平面轮廓的并集,作为所述三维对象的在三维空间中的平面轮廓。
步骤207,基于所述全景相机的位置,将所述归一化的每个三维子对象的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓。
在本发明实施例中,从一个全景图像得到一个相应的在三维空间中的平面轮廓,可称为“单对象平面轮廓”。
例如,以每个房间作为被关注类型的一个三维对象为例,如上所述,由于拍摄的全景图像中可能包含同一房间的多张全景图像,在这种情况下,同一房间将对应多个在三维空间中的平面轮廓,导致在后续的多房间拼接处理得到的多房间平面轮廓中,可能出现某个或多个房间的各自的不同全景图像得到的平面轮廓不重合、导致拼接的轮廓出现重叠或混乱的现象。因此,可以考虑先进行同一个房间(对象)轮廓的融合(可称为“单对象融合”),以避免这种现象。而且,单对象融合(例如,同一房间轮廓的融合)也可消除单对象轮廓不完整的现象。
针对上述的需要单对象融合的情形,下面将以一个房间作为一个三维子对象为例,给出下述的示例性方法。
首先,判断两幅全景图像是否属于同一房间。
这里可以采用基于特征点匹配的方式,如果两幅全景图像之间有多于某个比例(特定比例,例如50%等)的匹配特征点,则可以判定这两幅全景图像属于同一房间。
然后,如果多幅全景图像属于同一房间,即,对于由不同全景图像得到的同一房间的平面轮廓,取这些平面轮廓的并集,作为三维空间中的单房间平面轮廓(一个房间一个轮廓,避免一个房间多个单图像轮廓的情形),由此实现在三维空间中同一房间轮廓的融合。
其中,上述的匹配特征点的比例可以采用以下方式来设置:假设图像1有n1个特征点,图像2有n2个特征点,两幅图像的匹配特征点数为n个。那么匹配特征点的比例可以为n/min(n1,n2)。
可选地,可以设定为如果两幅全景图像之间的匹配特征点的比例大于例如50%,则认为两幅图像是同一个房间。
这里,匹配特征点的比例的设置和比例的实际大小可根据实际情况来试验或凭借经验确定,本发明对此不作额外限制。
如上所述,在本发明中,对于上述的至少两幅全景图像,可以通过如下的单房间融合的方式来确定是否有多幅全景图像属于同一房间:如果两幅全景图像之间有多于特定比例的匹配特征点,则可以判定这两幅全景图像属于同一房间。
如果确定多幅全景图像属于同一房间,则对于由所述多幅全景图像得到的同一房间的各平面轮廓,取这些平面轮廓的并集,作为该房间的平面轮廓。
另外,在同一房间的轮廓融合之后,由于获取的轮廓边缘可能存在噪声,例如可能表现为边线不直以及边与边不垂直的现象。所以本发明还可以进一步对于每一房间的轮廓进行直角多边形拟合,得到更合理的房间平面轮廓。
通过上述的专门针对单对象进行的优化处理,例如单对象融合和/或直角多边形拟合等等,可以得到更准确的单对象平面轮廓,利于后续的2D和3D模型的生成,提高模型的分辨率和准确度。
请注意,该步骤并非三维对象的二维或三维建模必须的步骤,而是可以提高模型的准确度的优选处理方式。
可选地,所述步骤207,包括:
假设所有的全景图像的在三维空间的平面轮廓共有N个,第n个平面轮廓的第p个三维点表示为所述第n个平面轮廓对应的全景图像被拍摄时的全景相机的位置表示为{Rn,tn},其中,Rn为用于表示所述全景相机的位置的旋转参数的旋转矩阵,tn为用于表示所述全景相机的位置的平移参数的平移向量,其中,N为大于1的整数,n为大于等于1的整数,
选定第i个平面轮廓对应的全景图像被拍摄时的全景相机的位置作为参考坐标系,可通过如下的公式(3)将其它平面轮廓的三维点统一到所述参考坐标系下:
将除所述第i个平面轮廓外的所有的经过尺度归一化的平面轮廓的三维点通过所述公式进行转换,以将所有平面轮廓的三维点统一到同一坐标系下,从而将各三维子对象的平面轮廓拼接成所述多对象平面轮廓。
在本发明实施例中,下面将以一个房间作为一个三维子对象为例,详细描述其具体操作。
此时,可以选定第一个房间的相机位置作为参考坐标系,这是因为目前得到的房间轮廓是在各自坐标系下的轮廓位置,需要统一到一个坐标系下,所以需要选定一个参考坐标系。准确地说,可以选定第一个房间的相机位置所在的坐标系作为参考坐标系。然后,可通过上述公式3将其它房间的轮廓三维点统一到该坐标系下。
将除第一个房间外的所有的经过尺度归一化的轮廓三维点(例如,天花板边缘、墙面边缘、地板边缘上三维点)通过公式3进行转换,即可将所有房间的三维点统一到同一坐标系(即,第一个房间的参考坐标系)下,由此便能够实现多房间平面轮廓的拼接。
这里,可以选任意一个房间的坐标系作为参考坐标系(比如第i个房间的坐标系作为参考坐标系,此时公式3中的n→1变为n→i,R1变为Ri,t1变为ti),本发明对此不作任何限制,因为本发明中需要的是相对位置关系,不是绝对位置关系。例如,当选定第i个平面轮廓对应的全景图像被拍摄时的相机位置作为参考坐标系的情况下,可通过如下的公式(3)将其它平面轮廓的三维点统一到参考坐标系下。
将除第i个平面轮廓外的所有的经过尺度归一化的平面轮廓的三维点通过上述公式进行转换,以将所有平面轮廓的三维点统一到同一坐标系下,从而将各三维子对象的平面轮廓拼接成多对象平面轮廓。
这里,在该步骤的多对象拼接之后得到的多对象平面轮廓,可以作为所述至少一个(包括多个)三维子对象的2D模型(例如2D户型图)输出。
步骤208,计算多对象轮廓中,两个单对象轮廓的相邻边之间的距离,若所述距离非零且小于特定阈值,则将所述两个单对象轮廓进行偏移,以使所述相邻边的距离变为零。
在本发明实施例中,在对多对象轮廓进行拼接之后,还可以进一步对多对象轮廓进行修正,以得到更加准确的多对象轮廓。
以一个房间作为被关注类型的一个三维子对象为例,由于受到单图像平面轮廓提取精度以及相机位置提取精度的影响,相邻多维对象(比如一套室内房屋)的轮廓在拼接后可能存在重叠区域或者出现缝隙的情况,因此,可以进一步地针对这两种情况进行轮廓的校正。
校正方法例如可以如下。首先,计算两两轮廓的相邻边(这些相邻边理论上应当是重合的,即,理论上应当作为多房间轮廓的一个重合边)之间的距离,若该距离小于某个阈值,则可以判定这两条边是相邻的关系,此时可以将该轮廓进行相应的偏移,使相邻边的距离变为0(即使得相邻边变得彼此重合,成为重合边),由此修正相邻边之间的重叠或者缝隙。
对于上述的该阈值,举一个例子来说,比如可以计算这些应当作为一个重合边的相邻边的平均长度L,并以该平均长度的某个比例作为阈值,比如可以使0.2*L作为该距离阈值。
请注意,上面仅仅是为了便于理解起见而给出的例示的阈值,实际上,本发明对于该阈值的不作额外的限制,其可以通过实验和经验来确定。
由此,经过上述单房间轮廓融合和多房间轮廓修正后的多房间轮廓可作为该套房屋的一个完整而准确的2D户型图(房屋的2D模型)。
步骤209,将拼接得到的在三维空间中的所述多对象平面轮廓转化为多对象3D模型。
可选地,所述所述底部平面轮廓是通过以下方式得到:将得到的各三维对象的顶部平面轮廓上的所有三维点坐标中的作为所述特定类别的轮廓的提取的轮廓高度hc’的、相机距离相应三维对象顶部的提取高度的高度值,替换为相机距离相应三维对象底部的提取高度hf’,并且使得到的各三维对象顶部平面轮廓上的所有三维点坐标中的长度和宽度值保持不变,得到相应的各三维对象的底部平面轮廓,其中,
所述相机距离相应三维对象顶部的所述特定类别的轮廓的提取的轮廓高度hc’通过如下方式得到:将在获取所述全景相机的位置时得到的所述每个三维子对象的至少一幅全景图像上的所有三维点坐标中的高度值从小到大排序,取排序靠前的高度值的中值或者均值作为所述相机距离相应三维对象顶部的所述特定类别的轮廓的提取的轮廓高度hc’,以及
所述相机距离相应三维对象底部的提取高度hf’通过如下方式得到:将在获取所述全景相机的位置时得到的所述每个三维子对象的至少一幅全景图像上的所有三维点坐标中的高度值从小到大排序,取排序靠后的高度值的中值或者均值作为相机距离相应三维对象底部的提取高度hf’。
可选地,参照图10,所述步骤209,包括:
子步骤2091,将拼接得到的所述多对象平面轮廓中的顶部平面轮廓在内部进行三维点插值,并将得到的各顶部平面轮廓上的所有三维点坐标投影到相应的全景图像坐标系中,以获取顶部纹理;
子步骤2092,将拼接得到的所述多对象平面轮廓中的底部平面轮廓在内部进行三维点插值,并将得到的各底部平面轮廓上的所有三维点坐标投影到相应的全景图像坐标系中,以获取底部纹理;
子步骤2093,连接顶部轮廓和底部轮廓之间相同平面位置上的三维顶点,构成支撑部的平面轮廓,并对于所述支撑部的平面轮廓内部进行三维点插值,并将得到的各支撑部的平面轮廓的所有三维点坐标投影到相应的全景图像坐标系中,以便获取支撑部纹理;
子步骤2094,基于所述顶部纹理、底部纹理、支撑部纹理,生成整个三维对象的3D纹理模型。
在本发明实施例中,为了便于理解和描述,下面将以房屋建模为例来说明。
对于在之前的步骤中得到的多对象平面轮廓(例如多房间平面轮廓),在内部进行三维点插值,然后将所有的三维点坐标投影到相应的全景图像中,以便获取天花板纹理(颜色值)。
这里,将对三维点插值的方法进行举例说明。比如,假设得到的多房间平面轮廓的天花板轮廓是个矩形,假设其长为H、宽为W,则可以将其长与宽分别划分为N个间隔,可得到总共N*N个插值点。然后,可选择该矩形的某个顶点(假设该顶点的三维点坐标为(x,y,z))作为原点,则可以得到这N*N个点的坐标依次为(x+H/N,y,z),(x+2*H/N,y,z)…(x,y+W/N,z)(x,y+2*W/N,z),…(x+H/N,y+W/N,z)…)。由此可见,在三维点插值之后,得到轮廓内部的密集三维点坐标。
请注意,上面是为了便于理解起见而给出了一个三维点插值的具体例子,实际上,本发明可用的三维点插值的方法可以有很多,并不限于该例子。
另外,例如,具体的投影方法可以如下。假定插值后的三维点坐标为(xi,yi,zi),其投影到全景图像上的经纬度为(θi,φi),则该投影公式可以用如下的公式4表示:
由该公式得到经纬度后,再根据公式1即可得到该三维点在全景图像平面的坐标,该点处的颜色值即可作为该三维点的纹理。
对于大多数场景来说,天花板的轮廓与地板的轮廓可假定为平行且相同。因此,利用上述获取的校正后的每个房间的天花板平面轮廓,再加上在上面得到的相机距离地板的提取高度hf’,同样通过公式2即可生成多房间地板平面轮廓的三维点。
这里,地板的平面轮廓的形状假定是跟天花板一样的,也就是水平面的三维坐标x和z是一样的,不同之处在于高度,即垂直方向的y值(比如天花板的平面轮廓是在相机的上方,地板是在相机的下方,所以高度不同)。因此,只需将在上述得到的天花板轮廓的三维点坐标中的y值(相机距离天花板的提取高度hc’)替换为相机距离地板的提取高度hf’即可。
与天花板平面轮廓的三维点插值类似地,对于地板平面轮廓,在内部进行三维点插值,然后利用公式4投影到相应全景图像中,以便获取地板纹理。
然后,连接天花板轮廓和地板轮廓之间相同平面位置上的三维顶点,可构成多个墙面的平面轮廓,同样地,对于这些平面轮廓内部进行三维点插值,然后利用公式4投影到相应全景图像中,以便获取墙面的纹理。
由此,可生成完整房屋的3D纹理模型。
本发明实施例能够有效提高所生成的模型的分辨率和准确性。
而且,需要指出,上面这些是为了便于理解和描述起见,以房屋建模为例对本发明的基于图像来进行建模的方法进行了说明,实际上,本发明不应仅限于房屋建模的应用场景,而是能够适用于各种基于图像来进行建模的场景,例如对车辆建模以便实现VR(虚拟现实)看车等等场景,本发明实际上是提供了一种创新的综合性的图像处理方案。
图11给出本发明提供的一种图像处理装置的结构框图:
第一获取模块301,被配置为获取对于至少一个三维对象中每个三维子对象拍摄的至少一幅全景图像对应的视频流以及时间戳;
第二获取模块302,被配置为根据所述视频流中视频帧之间的几何关系,获取所述视频流中每个视频帧的位置;
第三获取模块303,被配置为将所述每个视频帧的位置中与所述时间戳相对应的位置,作为拍摄所述每个三维子对象的至少一幅全景图像时的全景相机的位置,其中,每幅全景图像是对于一个三维子对象拍摄的;
处理模块304,被配置为基于所述全景相机的位置将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓。
可选地,所述第一获取模块301,还被配置为:
对待处理的至少一个三维对象中每个三维子对象进行拍摄,获取所述每个三维子对象至少一幅全景图像以及所述全景图像相对应的视频流,其中,所述全景图像是在对所述每个三维子对象的视频流的拍摄过程中拍摄的;
记录拍摄所述每个三维子对象的至少一幅全景图像的时间戳。
可选地,所述处理模块304,还被配置为:
针对每个三维子对象的至少一幅全景图像,提取所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓;
基于所述全景相机的位置,将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行归一化,得到经过归一化的每个三维子对象的平面轮廓;
基于所述全景相机的位置,将所述归一化的每个三维子对象的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓。
可选地,所述处理模块304,还被配置为:
利用针对为所述待处理的至少一个三维对象中的每个三维子对象拍摄的至少两幅全景图像的几何关系,获取每幅全景图像上的匹配特征点的三维点坐标;
对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,基于所述全景图像上的、轮廓特征属于特定类别的像素点中的边缘像素点所围成的轮廓,生成所述全景图像的在所述三维空间中的平面轮廓,
其中,所述特定类别至少包括所述全景图像中的三维物体的顶部、底部、支撑部。
可选地,所述处理模块304,还被配置为:
基于所述每个三维子对象的至少两幅全景图像上的像素点之间的特征相似度,确定所述每个三维子对象的至少两幅全景图像上的、轮廓特征属于所述特定类别的像素点中的所述边缘像素点;
其中,两个像素点的特征相似度为所述两个像素点的特征之差的绝对值,每个所述像素点的特征包括灰度、颜色。
可选地,所述处理模块304,还被配置为:
利用针对为所述待处理的至少一个三维对象中的每个三维子对象拍摄的至少两幅全景图像的几何关系,获取每幅全景图像上的匹配特征点的三维点坐标;
对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,通过用于提取图像轮廓的深度学***面轮廓。
可选地,通过下述方式来训练所述深度学习模型:
通过人工标注作为训练图像的多个全景图像上的被关注类型的三维对象的轮廓特征,生成所述被关注类型的三维对象的轮廓特征训练数据集;
利用所述被关注类型的三维对象的所述轮廓特征训练数据集来训练所述深度学习模型,由此得到经过训练的深度学习模型,
其中,所述深度学习模型的输出包含所述被关注类型的三维对象的轮廓特征的类别。
可选地,所述对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,通过用于提取图像轮廓的深度学***面轮廓,包括:
将所述每个三维子对象的至少两幅全景图像输入到经过训练的所述深度学习模型中,得到所述每个三维子对象的至少两幅全景图像中每个像素点对应的轮廓特征的类别;
提取出所述每个三维子对象的至少两幅全景图像的每幅全景图像中,轮廓特征的类别属于特定类别的像素点中的处于边缘的边缘像素点作为特定类别边缘像素点;
假定所述每个三维子对象的至少两幅全景图像的每幅全景图像上的所有特定类别边缘像素点具有同一高度hc,作为特定类别的轮廓的假定轮廓高度,并将所述每幅全景图像上的所述特定类别边缘像素点投影到三维平面上,得到与所述每幅全景图像对应的特定类别三维点,然后基于与所述每幅全景图像对应的所述特定类别三维点,形成各全景图像的在所述三维空间中的平面轮廓;
其中,所述特定类别包括所述全景图像中三维对象的顶部。
可选地,所述处理模块304,还被配置为:
利用针对为所述待处理的至少一个三维对象的每个三维子对象拍摄的至少两幅全景图像的几何关系,进行所述每个三维子对象的至少两幅全景图像之间的特征点匹配,并记录所述每个三维子对象的至少两幅全景图像中互相匹配的特征点作为匹配特征点;以及
通过对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,减小所述每幅全景图像上的匹配特征点的重投影误差,所述每幅全景图像上的匹配特征点的三维点坐标。
可选地,所述处理模块304,还被配置为:
将在获取的所述每个三维子对象的至少一幅全景图像上的所有三维点坐标中的高度值从小到大排序,取排序靠前的高度值的中值或者均值作为特定类别的轮廓的提取的轮廓高度hc’;以及利用特定类别的轮廓的假定轮廓高度hc与特定类别的轮廓的提取的轮廓高度hc’的比值,从所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓生成经过归一化的所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓,
在所述全景相机的位置是预先确定的相机确定高度hc’的情况下,
利用假定的相机假定高度hc与相机确定高度hc’的比值,从所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓生成经过归一化的所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓,
其中,所述特定类别的轮廓的假定轮廓高度hc是任意假定的一个高度。
可选地,所述处理模块304,还被配置为:
对于针对为所述待处理的至少一个三维对象拍摄的至少两幅全景图像,通过以下方式、逐个地确定其中是否有多幅全景图像属于同一个三维对象:如果两幅全景图像之间有多于特定比例的匹配特征点,则确定这两幅全景图像属于同一个三维对象;以及
如果确定多幅全景图像属于同一个三维对象,则对于由所述多幅全景图像得到的同一个三维对象的各平面轮廓,取所述同一个三维对象的所有平面轮廓的并集,作为所述三维对象的在三维空间中的平面轮廓。
可选地,所述处理模块304,还被配置为:基于各单个三维子对象的在三维空间中的平面轮廓,拼接得到在三维空间中的多对象平面轮廓。
可选地,所述处理模块304,还被配置为:
假设所有的全景图像的在三维空间的平面轮廓共有N个,第n个平面轮廓的第p个三维点表示为所述第n个平面轮廓对应的全景图像被拍摄时的全景相机的位置表示为{Rn,tn},其中,Rn为用于表示所述全景相机的位置的旋转参数的旋转矩阵,tn为用于表示所述全景相机的位置的平移参数的平移向量,其中,N为大于1的整数,n为大于等于1的整数,
选定第i个平面轮廓对应的全景图像被拍摄时的全景相机的位置作为参考坐标系,可通过如下的公式将其它平面轮廓的三维点统一到所述参考坐标系下:
将除所述第i个平面轮廓外的所有的经过尺度归一化的平面轮廓的三维点通过所述公式进行转换,以将所有平面轮廓的三维点统一到同一坐标系下,从而将各三维子对象的平面轮廓拼接成所述多对象平面轮廓。
可选地,所述处理模块304,还被配置为:
计算多对象轮廓中,两个单对象轮廓的相邻边之间的距离,若所述距离非零且小于特定阈值,则将所述两个单对象轮廓进行偏移,以使所述相邻边的距离变为零。
可选地,所述装置,还包括:
构建模块305,被配置为将拼接得到的在三维空间中的所述多对象平面轮廓转化为多对象3D模型。
可选地,所述构建模块305,还被配置为:
将拼接得到的所述多对象平面轮廓中的顶部平面轮廓在内部进行三维点插值,并将得到的各顶部平面轮廓上的所有三维点坐标投影到相应的全景图像坐标系中,以获取顶部纹理;
将拼接得到的所述多对象平面轮廓中的底部平面轮廓在内部进行三维点插值,并将得到的各底部平面轮廓上的所有三维点坐标投影到相应的全景图像坐标系中,以获取底部纹理;
连接顶部轮廓和底部轮廓之间相同平面位置上的三维顶点,构成支撑部的平面轮廓,并对于所述支撑部的平面轮廓内部进行三维点插值,并将得到的各支撑部的平面轮廓的所有三维点坐标投影到相应的全景图像坐标系中,以便获取支撑部纹理;
基于所述顶部纹理、底部纹理、支撑部纹理,生成整个三维对象的3D纹理模型。
可选地,所述底部平面轮廓是通过以下方式得到:将得到的各三维对象的顶部平面轮廓上的所有三维点坐标中的作为所述特定类别的轮廓的提取的轮廓高度hc’的、相机距离相应三维对象顶部的提取高度的高度值,替换为相机距离相应三维对象底部的提取高度hf’,并且使得到的各三维对象顶部平面轮廓上的所有三维点坐标中的长度和宽度值保持不变,得到相应的各三维对象的底部平面轮廓,其中,
所述相机距离相应三维对象顶部的所述特定类别的轮廓的提取的轮廓高度hc’通过如下方式得到:将在获取所述全景相机的位置时得到的所述每个三维子对象的至少一幅全景图像上的所有三维点坐标中的高度值从小到大排序,取排序靠前的高度值的中值或者均值作为所述相机距离相应三维对象顶部的所述特定类别的轮廓的提取的轮廓高度hc’,以及
所述相机距离相应三维对象底部的提取高度hf’通过如下方式得到:将在获取所述全景相机的位置时得到的所述每个三维子对象的至少一幅全景图像上的所有三维点坐标中的高度值从小到大排序,取排序靠后的高度值的中值或者均值作为相机距离相应三维对象底部的提取高度hf’。
本发明提供的一种图像处理装置,通过根据对三维对象拍摄的视频流以及拍摄全景图像的时间戳来获取拍摄全景图像时全景相机的位置,从而将从全景图像中提取到的三维子对对象的平面轮廓依据全景相机的位置进行拼接得到三维对象的多对象平面轮廓以供后续对象建模使用,从而高效地对采集到的数据进行处理为对象建模提供准备数据。
图12给出了根据本发明的一种电子设备的示意性框图。
参见图12,该电子设备1包括存储器10和处理器20。
处理器20可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器20可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如图形处理器(GPU)、数字信号处理器(DSP)等等。在一些实施例中,处理器20可以使用定制的电路实现,例如特定用途集成电路(ASIC,Application Specific Integrated Circuit)或者现场可编程逻辑门阵列(FPGA,Field Programmable Gate Arrays)。
存储器10上存储有可执行代码,当所述可执行代码被所述处理器20执行时,使所述处理器20执行上面描述的图像处理方法之一,其中,存储器10可以包括各种类型的存储单元,例如***内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器20或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。***内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。***内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器10可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器10可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图等等显示了根据本发明的多个实施例的***和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (20)
1.一种图像处理方法,其特征在于,所述方法包括:
获取对于至少一个三维对象中每个三维子对象拍摄的至少一幅全景图像对应的视频流以及时间戳;
根据所述视频流中视频帧之间的几何关系,获取所述视频流中每个视频帧的位置;
将所述每个视频帧的位置中与所述时间戳相对应的位置,作为拍摄所述每个三维子对象的至少一幅全景图像时的全景相机的位置,其中,每幅全景图像是对于一个三维子对象拍摄的;
基于所述全景相机的位置将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓。
2.根据权利要求1所述的方法,其特征在于,所述获取对于至少一个三维对象中每个三维子对象拍摄的至少一幅全景图像对应的视频流以及时间戳,包括:
对待处理的至少一个三维对象中每个三维子对象进行拍摄,获取所述每个三维子对象至少一幅全景图像以及所述全景图像相对应的视频流,其中,所述全景图像是在对所述每个三维子对象的视频流的拍摄过程中拍摄的;
记录拍摄所述每个三维子对象的至少一幅全景图像的时间戳。
3.根据权利要求1所述的方法,其特征在于,所述基于所述全景相机的位置将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓,包括:
针对每个三维子对象的至少一幅全景图像,提取所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓;
基于所述全景相机的位置,将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行归一化,得到经过归一化的每个三维子对象的平面轮廓;
基于所述全景相机的位置,将所述归一化的每个三维子对象的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓。
4.如权利要求3所述的方法,其特征在于,所述针对每个三维子对象的至少一幅全景图像,提取所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓,包括:
利用针对为所述待处理的至少一个三维对象中的每个三维子对象拍摄的至少两幅全景图像的几何关系,获取每幅全景图像上的匹配特征点的三维点坐标;
对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,基于所述全景图像上的、轮廓特征属于特定类别的像素点中的边缘像素点所围成的轮廓,生成所述全景图像的在所述三维空间中的平面轮廓,
其中,所述特定类别至少包括所述全景图像中的三维物体的顶部、底部、支撑部。
5.如权利要求4所述的方法,其特征在于,所述对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,基于所述全景图像上的、轮廓特征属于特定类别的像素点中的边缘像素点所围成的轮廓,生成所述全景图像的在所述三维空间中的平面轮廓,包括:
基于所述每个三维子对象的至少两幅全景图像上的像素点之间的特征相似度,确定所述每个三维子对象的至少两幅全景图像上的、轮廓特征属于所述特定类别的像素点中的所述边缘像素点;
其中,两个像素点的特征相似度为所述两个像素点的特征之差的绝对值,每个所述像素点的特征包括灰度、颜色。
6.如权利要求3所述的方法,其特征在于,所述针对每个三维子对象的至少一幅全景图像,提取所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓,包括:
利用针对为所述待处理的至少一个三维对象中的每个三维子对象拍摄的至少两幅全景图像的几何关系,获取每幅全景图像上的匹配特征点的三维点坐标;
对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,通过用于提取图像轮廓的深度学***面轮廓。
7.如权利要求6所述的方法,其特征在于,通过下述方式来训练所述深度学习模型:
通过人工标注作为训练图像的多个全景图像上的被关注类型的三维对象的轮廓特征,生成所述被关注类型的三维对象的轮廓特征训练数据集;
利用所述被关注类型的三维对象的所述轮廓特征训练数据集来训练所述深度学习模型,由此得到经过训练的深度学习模型,
其中,所述深度学习模型的输出包含所述被关注类型的三维对象的轮廓特征的类别。
8.如权利要求7所述的方法,其特征在于,所述对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,通过用于提取图像轮廓的深度学***面轮廓,包括:
将所述每个三维子对象的至少两幅全景图像输入到经过训练的所述深度学习模型中,得到所述每个三维子对象的至少两幅全景图像中每个像素点对应的轮廓特征的类别;
提取出所述每个三维子对象的至少两幅全景图像的每幅全景图像中,轮廓特征的类别属于特定类别的像素点中的处于边缘的边缘像素点作为特定类别边缘像素点;
假定所述每个三维子对象的至少两幅全景图像的每幅全景图像上的所有特定类别边缘像素点具有同一高度hc,作为特定类别的轮廓的假定轮廓高度,并将所述每幅全景图像上的所述特定类别边缘像素点投影到三维平面上,得到与所述每幅全景图像对应的特定类别三维点,然后基于与所述每幅全景图像对应的所述特定类别三维点,形成各全景图像的在所述三维空间中的平面轮廓;
其中,所述特定类别包括所述全景图像中三维对象的顶部。
9.如权利要求4或6所述的方法,其特征在于,所述利用针对为所述待处理的至少一个三维对象中的每个三维子对象拍摄的至少两幅全景图像的几何关系,获取每幅全景图像上的匹配特征点的三维点坐标,包括:
利用针对为所述待处理的至少一个三维对象的每个三维子对象拍摄的至少两幅全景图像的几何关系,进行所述每个三维子对象的至少两幅全景图像之间的特征点匹配,并记录所述每个三维子对象的至少两幅全景图像中互相匹配的特征点作为匹配特征点;以及
通过对于所述每个三维子对象的至少两幅全景图像的每幅全景图像,减小所述每幅全景图像上的匹配特征点的重投影误差,所述每幅全景图像上的匹配特征点的三维点坐标。
10.如权利要求9所述的方法,其特征在于,所述基于所述全景相机的位置,将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行归一化,得到经过归一化的每个三维子对象的平面轮廓,包括:
将在获取的所述每个三维子对象的至少一幅全景图像上的所有三维点坐标中的高度值从小到大排序,取排序靠前的高度值的中值或者均值作为特定类别的轮廓的提取的轮廓高度hc’;以及利用特定类别的轮廓的假定轮廓高度hc与特定类别的轮廓的提取的轮廓高度hc’的比值,从所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓生成经过归一化的所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓,
在所述全景相机的位置是预先确定的相机确定高度hc’的情况下,
利用假定的相机假定高度hc与相机确定高度hc’的比值,从所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓生成经过归一化的所述每个三维子对象的至少两幅全景图像的在三维空间中的平面轮廓,
其中,所述特定类别的轮廓的假定轮廓高度hc是任意假定的一个高度。
11.如权利要求3所述的方法,其特征在于,在所述基于所述全景相机的位置,将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行归一化,得到经过归一化的每个三维子对象的平面轮廓之后,还包括:
对于针对为所述待处理的至少一个三维对象拍摄的至少两幅全景图像,通过以下方式、逐个地确定其中是否有多幅全景图像属于同一个三维对象:如果两幅全景图像之间有多于特定比例的匹配特征点,则确定这两幅全景图像属于同一个三维对象;以及
如果确定多幅全景图像属于同一个三维对象,则对于由所述多幅全景图像得到的同一个三维对象的各平面轮廓,取所述同一个三维对象的所有平面轮廓的并集,作为所述三维对象的在三维空间中的平面轮廓。
12.如权利要求3所述的方法,其特征在于,在所述基于所述全景相机的位置,将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行归一化,得到经过归一化的每个三维子对象的平面轮廓,还包括:
基于各单个三维子对象的在三维空间中的平面轮廓,拼接得到在三维空间中的多对象平面轮廓。
13.如权利要求3所述的方法,其特征在于,所述基于所述全景相机的位置,将所述归一化的每个三维子对象的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓,包括:
假设所有的全景图像的在三维空间的平面轮廓共有N个,第n个平面轮廓的第p个三维点表示为所述第n个平面轮廓对应的全景图像被拍摄时的全景相机的位置表示为{Rn,tn},其中,Rn为用于表示所述全景相机的位置的旋转参数的旋转矩阵,tn为用于表示所述全景相机的位置的平移参数的平移向量,其中,N为大于1的整数,n为大于等于1的整数,
选定第i个平面轮廓对应的全景图像被拍摄时的全景相机的位置作为参考坐标系,可通过如下的公式将其它平面轮廓的三维点统一到所述参考坐标系下:
将除所述第i个平面轮廓外的所有的经过尺度归一化的平面轮廓的三维点通过所述公式进行转换,以将所有平面轮廓的三维点统一到同一坐标系下,从而将各三维子对象的平面轮廓拼接成所述多对象平面轮廓。
14.如权利要求13所述的方法,其特征在于,在所述基于所述全景相机的位置将所述每个三维子对象的至少一幅全景图像在三维空间中的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓之后,还包括:
计算多对象轮廓中,两个单对象轮廓的相邻边之间的距离,若所述距离非零且小于特定阈值,则将所述两个单对象轮廓进行偏移,以使所述相邻边的距离变为零。
15.如权利要求3中的所述的方法,其特征在于,在所述基于所述全景相机的位置,将所述归一化的每个三维子对象的平面轮廓进行拼接,得到所述至少一个三维对象的多对象平面轮廓之后,还包括:
将拼接得到的在三维空间中的所述多对象平面轮廓转化为多对象3D模型。
16.如权利要求15所述的方法,其特征在于,所述将拼接得到的在三维空间中的所述多对象平面轮廓转化为多对象3D模型,包括:
将拼接得到的所述多对象平面轮廓中的顶部平面轮廓在内部进行三维点插值,并将得到的各顶部平面轮廓上的所有三维点坐标投影到相应的全景图像坐标系中,以获取顶部纹理;
将拼接得到的所述多对象平面轮廓中的底部平面轮廓在内部进行三维点插值,并将得到的各底部平面轮廓上的所有三维点坐标投影到相应的全景图像坐标系中,以获取底部纹理;
连接顶部轮廓和底部轮廓之间相同平面位置上的三维顶点,构成支撑部的平面轮廓,并对于所述支撑部的平面轮廓内部进行三维点插值,并将得到的各支撑部的平面轮廓的所有三维点坐标投影到相应的全景图像坐标系中,以便获取支撑部纹理;
基于所述顶部纹理、底部纹理、支撑部纹理,生成整个三维对象的3D纹理模型。
17.如权利要求16所述的方法,其特征在于,所述底部平面轮廓是通过以下方式得到:将得到的各三维对象的顶部平面轮廓上的所有三维点坐标中的作为所述特定类别的轮廓的提取的轮廓高度hc’的、相机距离相应三维对象顶部的提取高度的高度值,替换为相机距离相应三维对象底部的提取高度hf’,并且使得到的各三维对象顶部平面轮廓上的所有三维点坐标中的长度和宽度值保持不变,得到相应的各三维对象的底部平面轮廓,其中,
所述相机距离相应三维对象顶部的所述特定类别的轮廓的提取的轮廓高度hc’通过如下方式得到:将在获取所述全景相机的位置时得到的所述每个三维子对象的至少一幅全景图像上的所有三维点坐标中的高度值从小到大排序,取排序靠前的高度值的中值或者均值作为所述相机距离相应三维对象顶部的所述特定类别的轮廓的提取的轮廓高度hc’,以及
所述相机距离相应三维对象底部的提取高度hf’通过如下方式得到:将在获取所述全景相机的位置时得到的所述每个三维子对象的至少一幅全景图像上的所有三维点坐标中的高度值从小到大排序,取排序靠后的高度值的中值或者均值作为相机距离相应三维对象底部的提取高度hf’。
18.一种图像处理装置,其特征在于,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1至17中任何一项所述的图像处理方法。
19.一种电子设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至17中任一所述的图像处理方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现权利要求1至17中任一所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010774831.XA CN112055192B (zh) | 2020-08-04 | 2020-08-04 | 图像处理方法、图像处理装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010774831.XA CN112055192B (zh) | 2020-08-04 | 2020-08-04 | 图像处理方法、图像处理装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112055192A true CN112055192A (zh) | 2020-12-08 |
CN112055192B CN112055192B (zh) | 2022-10-11 |
Family
ID=73601408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010774831.XA Active CN112055192B (zh) | 2020-08-04 | 2020-08-04 | 图像处理方法、图像处理装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112055192B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114529621A (zh) * | 2021-12-30 | 2022-05-24 | 北京城市网邻信息技术有限公司 | 户型图生成方法、装置、电子设备及介质 |
CN114792357A (zh) * | 2022-03-23 | 2022-07-26 | 北京城市网邻信息技术有限公司 | 全景图资源生成方法、装置、电子设备及存储介质 |
CN116485634A (zh) * | 2023-04-10 | 2023-07-25 | 北京城市网邻信息技术有限公司 | 点云展示图生成方法、装置、电子设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170330365A1 (en) * | 2016-05-10 | 2017-11-16 | Jaunt Inc. | Virtual reality resource scheduling of processes in a cloud-based virtual reality processing system |
US10051180B1 (en) * | 2016-03-04 | 2018-08-14 | Scott Zhihao Chen | Method and system for removing an obstructing object in a panoramic image |
CN110490967A (zh) * | 2019-04-12 | 2019-11-22 | 北京城市网邻信息技术有限公司 | 图像处理和对象建模方法与设备、图像处理装置及介质 |
CN110490916A (zh) * | 2019-04-12 | 2019-11-22 | 北京城市网邻信息技术有限公司 | 三维对象建模方法与设备、图像处理装置及介质 |
CN110636202A (zh) * | 2018-06-21 | 2019-12-31 | 百度在线网络技术(北京)有限公司 | 全景相机控制方法、装置及存储介质 |
CN110675314A (zh) * | 2019-04-12 | 2020-01-10 | 北京城市网邻信息技术有限公司 | 图像处理和三维对象建模方法与设备、图像处理装置及介质 |
US20200090303A1 (en) * | 2016-12-16 | 2020-03-19 | Hangzhou Hikvision Digital Technology Co., Ltd. | Method and device for fusing panoramic video images |
US20200111250A1 (en) * | 2018-07-03 | 2020-04-09 | Shanghai Yiwo Information Technology Co. LTD | Method for reconstructing three-dimensional space scene based on photographing |
CN111127655A (zh) * | 2019-12-18 | 2020-05-08 | 北京城市网邻信息技术有限公司 | 房屋户型图的构建方法及构建装置、存储介质 |
-
2020
- 2020-08-04 CN CN202010774831.XA patent/CN112055192B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10051180B1 (en) * | 2016-03-04 | 2018-08-14 | Scott Zhihao Chen | Method and system for removing an obstructing object in a panoramic image |
US20170330365A1 (en) * | 2016-05-10 | 2017-11-16 | Jaunt Inc. | Virtual reality resource scheduling of processes in a cloud-based virtual reality processing system |
US20200090303A1 (en) * | 2016-12-16 | 2020-03-19 | Hangzhou Hikvision Digital Technology Co., Ltd. | Method and device for fusing panoramic video images |
CN110636202A (zh) * | 2018-06-21 | 2019-12-31 | 百度在线网络技术(北京)有限公司 | 全景相机控制方法、装置及存储介质 |
US20200111250A1 (en) * | 2018-07-03 | 2020-04-09 | Shanghai Yiwo Information Technology Co. LTD | Method for reconstructing three-dimensional space scene based on photographing |
CN110490967A (zh) * | 2019-04-12 | 2019-11-22 | 北京城市网邻信息技术有限公司 | 图像处理和对象建模方法与设备、图像处理装置及介质 |
CN110490916A (zh) * | 2019-04-12 | 2019-11-22 | 北京城市网邻信息技术有限公司 | 三维对象建模方法与设备、图像处理装置及介质 |
CN110675314A (zh) * | 2019-04-12 | 2020-01-10 | 北京城市网邻信息技术有限公司 | 图像处理和三维对象建模方法与设备、图像处理装置及介质 |
CN111127655A (zh) * | 2019-12-18 | 2020-05-08 | 北京城市网邻信息技术有限公司 | 房屋户型图的构建方法及构建装置、存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114529621A (zh) * | 2021-12-30 | 2022-05-24 | 北京城市网邻信息技术有限公司 | 户型图生成方法、装置、电子设备及介质 |
CN114529621B (zh) * | 2021-12-30 | 2022-11-22 | 北京城市网邻信息技术有限公司 | 户型图生成方法、装置、电子设备及介质 |
CN114792357A (zh) * | 2022-03-23 | 2022-07-26 | 北京城市网邻信息技术有限公司 | 全景图资源生成方法、装置、电子设备及存储介质 |
CN116485634A (zh) * | 2023-04-10 | 2023-07-25 | 北京城市网邻信息技术有限公司 | 点云展示图生成方法、装置、电子设备及存储介质 |
CN116485634B (zh) * | 2023-04-10 | 2024-04-02 | 北京城市网邻信息技术有限公司 | 点云展示图生成方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112055192B (zh) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110675314B (zh) | 图像处理和三维对象建模方法与设备、图像处理装置及介质 | |
US11869148B2 (en) | Three-dimensional object modeling method, image processing method, image processing device | |
CN110490916B (zh) | 三维对象建模方法与设备、图像处理装置及介质 | |
US11727587B2 (en) | Method and system for scene image modification | |
US20240029200A1 (en) | Method and system for image generation | |
CN111862302B (zh) | 图像处理和对象建模方法与设备、图像处理装置及介质 | |
Urban et al. | Multicol-slam-a modular real-time multi-camera slam system | |
CN103503025B (zh) | 基于对对象的模型进行变换来确定模型参数 | |
Zhang et al. | A UAV-based panoramic oblique photogrammetry (POP) approach using spherical projection | |
CN112055192B (zh) | 图像处理方法、图像处理装置、电子设备及存储介质 | |
US20160189419A1 (en) | Systems and methods for generating data indicative of a three-dimensional representation of a scene | |
US8494254B2 (en) | Methods and apparatus for image rectification for stereo display | |
US20230106339A1 (en) | 2d and 3d floor plan generation | |
Ortiz-Cayon et al. | Automatic 3d car model alignment for mixed image-based rendering | |
Bartczak et al. | Extraction of 3D freeform surfaces as visual landmarks for real-time tracking | |
Bazin et al. | An original approach for automatic plane extraction by omnidirectional vision | |
Morell-Gimenez et al. | A survey of 3D rigid registration methods for RGB-D cameras | |
Rolin et al. | View synthesis for pose computation | |
Rolin et al. | Enhancing pose estimation through efficient patch synthesis | |
Zhihui et al. | Catadioptric omni-directional stereo vision and its applications in moving objects detection | |
He | Research on outdoor garden scene reconstruction based on PMVS Algorithm | |
CA3131587A1 (en) | 2d and 3d floor plan generation | |
da Silveira et al. | 3D Scene Geometry Estimation from 360$^\circ $ Imagery: A Survey | |
Wang | Robust Pose Estimation for Spherical Panorama | |
Guan | Hybrid methods for robust image matching and its application in augmented reality |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |