一种三维人体表面重建方法和装置与流程

文档序号:12748904阅读:153来源:国知局
一种三维人体表面重建方法和装置与流程

本发明涉及三维图像处理技术领域,具体而言,涉及一种三维人体表面重建方法和装置。



背景技术:

在计算机视觉领域中,利用多个不同角度上的二维图像对目标对象进行三维表面重建,是计算机视觉领域中的一个非常经典的问题。其中涉及到多种技术,主要包括特征提取、特征匹配和三维重建等技术。

一般情况下,二维图像的采集是通过普通光学相机和红外相机来完成的。由于普通光学相机和红外相机采集的二维图像特征比较少以及人体各部分的结构存在较大的差异,如果根据采集的二维图像对人体三维模型进行整体处理,在特征提取和特征匹配的过程中就会受到限制,从而导致三维表面重建的精度不高,在高精度应用技术领域中不具有实用性。



技术实现要素:

有鉴于此,本发明的目的在于提供一种三维人体表面重建方法和装置,在上述方法和装置中,分别针对每一个三维子模型单独进行优化处理,提高了重建后的三维人体表面的准确性和可靠性。

为实现上述目的,本发明实施例采用如下技术方案:

本发明提供一种三维人体表面重建方法,应用于处理装置,所述处理装置连接有图像采集装置,所述方法包括:

控制所述图像采集装置获取人体多个角度的二维图像;

提取预存的人体三维模型,所述人体三维模型包括多个部位的三维子模型;

根据所述二维图像,分别优化所述多个部位中每个部位的三维子模型;

将优化后的每个部位的三维子模型合并成新的人体三维模型;以及根据所述新的人体三维模型输出重建后的三维人体表面图像。

在本发明实施例较佳的选择中,在上述三维人体表面重建方法中,所述根据所述二维图像,分别优化所述多个部位中每个部位的三维子模型的步骤包括:

获取所述多个部位中每个部位的三维子模型;

计算获取的所述三维子模型与获取的所述二维图像之间的第一误差;以及

将所述第一误差与第一预设值进行比对,在所述第一误差大于所述第一预设值时,调整获取的所述三维子模型,以使所述第一误差小于所述第一预设值。

在本发明实施例较佳的选择中,在上述三维人体表面重建方法中,所述计算获取的所述三维子模型与获取的所述二维图像之间的第一误差的步骤包括:

获取所述多个角度中的每个角度的二维图像和该角度的二维图像的图像采集参数;

根据获取的所述图像采集参数,对获取的所述三维子模型进行投影处理,生成相应的第一二维轮廓图像;

计算所述第一二维轮廓图像与获取的所述二维图像之间的子误差;以及

将所述多个角度中的每个角度的二维图像对应的子误差叠加生成所述第一误差。

在本发明实施例较佳的选择中,在上述三维人体表面重建方法中,所述将优化后的每个部位的三维子模型合并成新的人体三维模型的步骤包括:

提取所述人体多个角度中的任意一角度的二维图像;

根据提取到的所述二维图像,将所述多个部位优化后的三维子模型进行位置排布;

将每个部位的三维子模型转换为三角形网络模型;以及

通过图形融合方法,将所述多个部位的三角形网络模型进行拼接,生成所述新的人体三维模型。

在本发明实施例较佳的选择中,在上述三维人体表面重建方法中,所述根据提取到的所述二维图像,将所述多个部位优化后的三维子模型进行位置排布的步骤包括:

将优化后的多个部位的三维子模型进行叠加;

根据提取到的所述二维图像,对叠加后的所述三维子模型进行投影处理,生成相应的第二二维轮廓图像;

计算所述第二二维轮廓图像与提取到的所述二维图像之间的第二误差;以及

将所述第二误差与第二预设值进行比对,在所述第二误差大于所述第二预设值时,调整叠加后的所述三维子模型,以使所述第二误差小于所述第二预设值。

在本发明实施例较佳的选择中,在上述三维人体表面重建方法中,所述方法还包括:

所述二维图像为红外二维图像,获取所述人体多个角度的红外二维图像的温度数据;

将所述温度数据映射到所述三维人体表面图像,生成三维温度分布图。

在本发明实施例较佳的选择中,在上述三维人体表面重建方法中,所述人体多个角度的二维图像包括人体360度的二维图像。

在上述基础上,本发明还提供一种三维人体表面重建装置,应用于处理装置,所述处理装置连接有图像采集装置,所述三维人体表面重建装置包括:

控制模块,用于控制所述图像采集装置获取人体多个角度的二维图像;

提取模块,用于提取预存的人体三维模型,所述人体三维模型包括多个部位的三维子模型;

优化模块,用于根据所述二维图像,分别优化所述多个部位中每个部位的三维子模型;

合成模块,用于将优化后的每个部位的三维子模型合并成新的人体三维模型;

输出模块,用于根据所述新的人体三维模型输出重建后的三维人体表面图像。

在本发明实施例较佳的选择中,在上述三维人体表面重建装置中,所述优化模块包括:

图像获取子模块,用于获取所述多个部位中每个部位的三维子模型;

误差计算子模块,用于计算获取的所述三维子模型与获取的所述二维图像之间的第一误差;

图像调整子模块,用于将所述第一误差与第一预设值进行比对,在所述第一误差大于所述第一预设值时,调整获取的所述三维子模型,以使所述第一误差小于所述第一预设值。

在本发明实施例较佳的选择中,在上述三维人体表面重建装置中,所述合成模块包括:

图像提取子模块,用于提取所述人体多个角度中的任意一角度的二维图像;

模型排布子模块,用于根据提取到的所述二维图像,将所述多个部位优化后的三维子模型进行位置排布;

模型转换子模块,用于将每个部位的三维子模型转换为三角形网络模型;

模型生成子模块,用于通过图形融合方法,将所述多个部位的三角形网络模型进行拼接,生成所述新的人体三维模型。

本发明提供一种三维人体表面重建方法和装置,通过上述方法和装置,获取人体多个角度的二维图像,保证了获取的人体二维图像更为全面,提高了重建后的三维人体表面的可靠性。针对人体三维模型中每一个三维子模型单独进行优化处理,提高了重建后的三维人体表面的准确性。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的部分实施例,因此不应被看作是对本发明保护范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的处理装置与图像采集装置的交互示意图。

图2为本发明实施例提供的三维人体表面重建方法的流程示意图。

图3为图2中步骤S130的流程示意图。

图4为图3中子步骤S134的流程示意图。

图5为图2中步骤S140的流程示意图。

图6为图5中子步骤S144的流程示意图。

图7为本发明实施例提供的三维人体表面重建装置的方框示意图。

图标:10-处理装置;20-图像采集装置;100-三维人体表面重建装置;110-控制模块;120-提取模块;130-优化模块;132-图像获取子模块;134-误差计算子模块;136-图像调整子模块;140-合成模块;142-图像提取子模块;144-模型排布子模块;146-模型转换子模块;148-模型生成子模块;150-输出模块;200-存储器;300-存储控制器;400-处理器;500-外设接口。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

如图1所示,图1为本发明实施例提供的处理装置10与图像采集装置20的交互示意图。所述处理装置10连接有图像采集装置20,所述处理装置10包括三维人体表面重建装置100、存储器200、存储控制器300、处理器400以及外设接口500。

所述三维人体表面重建装置100、存储器200、存储控制器300、处理器400以及外设接口500相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。

其中,所述存储器200可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,所述存储器200用于存储程序,所述处理器400在接收到执行指令后,执行所述程序。所述三维人体表面重建装置100以及其他可能的组件对存储器200的访问可在所述存储控制器300的控制下进行。

在本实施例中,所述处理器400可以是一种集成电路芯片,具有信号的处理能力。上述的处理器400可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DSP))、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述三维人体表面重建装置100包括至少一个可以软件或固件(firmware)的形式存储于所述存储器200中或固化在所述处理器400中的软件功能模块。所述处理器400用于执行所述存储器200中存储的可执行模块,例如所述三维人体表面重建装置100所包括的软件功能模块及计算机程序等。

所述外设接口500将各种输入/输出装置耦合至所述处理器400以及存储器200。在一些实施例中,外设接口500、存储控制器300以及存储器200可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

可以理解,图1所示的结构仅为示意,所述处理装置10还可包括比图1中所示更多或者更少的单元组件,或者具有与图1所示不同的配置。图1中所示的各单元组件可以采用硬件、软件或其组合实现。

可选地,所述图像采集装置20可以是,但不局限于,相机等能够采集二维图像的装置。

如图2所示,本发明提供一种可应用于所述处理装置10的三维人体表面重建方法。下面将对图2所示的具体流程和步骤进行详细阐述。

步骤S110,控制所述图像采集装置20获取人体多个角度的二维图像。

在本实施例中,所述处理装置10在接收到图像采集指令时,控制所述图像采集装置20对人体进行多个角度的二维图像采集操作。

可选地,所述人体多个角度的二维图像可以是,但不限于,人体360度的二维图像。

例如:所述图像采集装置20围绕人体旋转一周,或者是人体旋转一周,在人体或者是所述图像采集装置20旋转的过程中,所述图像采集装置20每隔一定角度对人体进行一次图像采集操作。在本实施例中,所述一定角度为10度。

步骤S120,提取预存的人体三维模型,所述人体三维模型包括多个部位的三维子模型。

可选地,所述多个部位的人体三维模型可以是多种形式。在本实施例中,根据人体的结构,所述人体三维模型可以包括头部三维子模型、躯干三维子模型、双手三维子模型和双腿三维子模型。

可选地,所述人体三维模型的表示方法可以包括多种,不应受限制。在本实施例中,优选为用球面调和级数表示的参数化模型。

步骤S130,根据所述二维图像,分别优化所述多个部位中每个部位的三维子模型。

步骤S140,将优化后的每个部位的三维子模型合并成新的人体三维模型。

步骤S150,根据所述新的人体三维模型输出重建后的三维人体表面图像。

步骤S160,所述二维图像为红外二维图像,获取所述人体多个角度的红外二维图像的温度数据;将所述温度数据映射到所述三维人体表面图像,生成三维温度分布图。

可选地,所述二维图像既可以是光学二维图像,也可以是红外二维图像。在本实施例中,优选为红外二维图像。所述红外二维图像带有人体的温度数据,所述处理装置10将所述温度数据映射到所述三维人体表面图像并对所述多个角度的温度数据进行合并处理,从而生成所述三维温度分布图。

结合图3,步骤S130可以包括以下子步骤。

子步骤S132,获取所述多个部位中每个部位的三维子模型。

在本实施例中,分别获取所述头部三维子模型、躯干三维子模型、双手三维子模型和双腿三维子模型。

可选地,所述分别获取既可以是同时获取,也可以是有一定时间先后顺序的获取。在本实施例中,优选为同时获取。

子步骤S134,计算获取的所述三维子模型与获取的所述二维图像之间的第一误差。

可选地,所述第一误差的度量方式可以包括多种,既可以是图像灰度,也可以是图像边缘特征。在本实施例中,采用图像灰度这种度量方式。

结合图4,子步骤S134可以包括以下次子步骤。

次子步骤S134a,获取所述多个角度中的每个角度的二维图像和该角度的二维图像的图像采集参数。

在本实施例中,所述图像采集参数可以包括图像采集的角度、所述图像采集装置20与人体的距离以及焦距。

次子步骤S134b,根据获取的所述图像采集参数,对获取的所述三维子模型进行投影处理,生成相应的第一二维轮廓图像。

可选地,所述生成相应的第一二维轮廓图像的方式可以包括多种。例如,当获取的二维子图像为头部的正面的二维图像,就对获取的头部的三维子模型进行正面的投影处理,然后生成头部的正面的第一二维轮廓图像。

次子步骤S134c,计算所述第一二维轮廓图像与获取的所述二维图像之间的子误差。

在本实施例中,所述第一轮廓图像为人体的部位轮廓图像,包含一个部位某个角度的信息。所述二维图像为人体的整体图像,包含人体某个角度的全部信息。在计算所述第一二维轮廓图像与获取的所述二维图像之间的子误差时,会将所述第一二维轮廓图像与所述二维图像自动进行匹配。然后分别计算每个部位的每个角度的所述第一二维轮廓图像与该部位该角度的所述二维图像之间的子误差。

可选地,所述分别计算既可以是同时计算,也可以是有一定时间先后顺序的计算。在本实施例中,优选为有一定时间先后顺序的计算,例如先计算正面角度的所述第一二维轮廓图像与所述二维图像之间的子误差,然后计算顺时针旋转10度后的所述第一二维轮廓图像与所述二维图像之间的子误差,然后计算顺时针旋转20度后的所述第一二维轮廓图像与所述二维图像之间的子误差。依照上述方法分别计算每个部位的每个角度的所述第一二维轮廓图像与所述二维图像之间的子误差。

次子步骤S134d,将所述多个角度中的每个角度的二维图像对应的子误差叠加生成所述第一误差。

子步骤S136,将所述第一误差与第一预设值进行比对,在所述第一误差大于所述第一预设值时,调整获取的所述三维子模型,以使所述第一误差小于第一预设值。

在本实施例中,通过优化算法不断地调整获取的所述三维子模型,每一次调整后计算出相应的第一误差。然后将当前的第一误差与所述第一预设值进行比较,当第一误差小于所述第一预设值时,停止调整获取的所述三维子模型的操作。

可选地,优化算法可以是多种,不应受限制,任何能够求解最小化问题的算法都可以作为本实施例的优化算法。

结合图5,步骤S140可以包括以下子步骤。

子步骤S142,提取所述人体多个角度中的任意一角度的二维图像。

子步骤S144,根据提取到的所述二维图像,将所述多个部位优化后的三维子模型进行位置排布。

结合图6,子步骤S144可以包括一下次子步骤。

次子步骤S144a,将优化后的多个部位的三维子模型进行叠加。

次子步骤S144b,根据提取到的所述二维图像,对叠加后的所述三维子模型进行投影处理,生成相应的第二二维轮廓图像。

次子步骤S144c,计算所述第二二维轮廓图像与提取到的所述二维图像之间的第二误差。

次子步骤S144d,将所述第二误差与第二预设值进行比对,在所述第二误差大于所述第二预设值时,调整叠加后的所述三维子模型,以使所述第二误差小于第二预设值。

在本实施例中,通过优化算法不断地调整叠加后的所述三维子模型,每一次调整后计算出相应的第二误差。然后将当前的第二误差与所述第二预设值进行比较,当第二误差小于所述第二预设值时,停止调整叠加后的所述三维子模型的操作。

可选地,优化算法可以是多种,不应受限制,任何能够求解最小化问题的算法都可以作为本实施例的优化算法。

子步骤S146,将每个部位的三维子模型转换为三角形网络模型。

子步骤S148,通过图形融合方法,将所述多个部位的三角形网络模型进行拼接,生成所述新的人体三维模型。

可选地,所述图形融合方法的具体实现方式可以是多种,不应受限制。在本实施例中,优选为加权平均法图形融合算法。

如图7所示,本发明还提供一种可应用于所述处理装置10的三维人体表面重建装置100。所述处理装置10通过所述外设接口500与所述图像采集装置20连接。

在本实施例中,所述三维人体表面重建装置100包括:控制模块110、提取模块120、优化模块130、合成模块140和输出模块150。

所述控制模块110,用于控制所述图像采集装置20获取人体多个角度的二维图像。

本实施例中,图1的步骤S110可以由所述控制模块110执行。

所述提取模块120,用于提取预存的人体三维模型,所述人体三维模型包括多个部位的三维子模型。

本实施例中,图1的步骤S120可以由所述提取模块120执行。

所述优化模块130,用于根据所述二维图像,分别优化所述多个部位中每个部位的三维子模型。

本实施例中,图1的步骤S130可以由所述优化模块130执行。

所述优化模块130可以包括:图像获取子模块132、误差计算子模块134和图像调整子模块136。

所述图像获取子模块132,用于获取所述多个部位中每个部位的三维子模型。

本实施例中,图2的子步骤S132可以由所述图像获取子模块132执行。

所述误差计算子模块134,用于计算获取的所述三维子模型与获取的所述二维子图像之间的第一误差。

本实施例中,图2的子步骤S134可以由所述误差计算子模块134执行。

所述图像调整子模块136,用于将所述第一误差与第一预设值进行比对,在所述第一误差大于所述第一预设值时,调整获取的所述三维子模型,以使所述第一误差小于第一预设值。

本实施例中,图2的子步骤S136可以由所述图像调整子模块136执行。

所述合成模块140,用于将优化后的每个部位的三维子模型合并成新的人体三维模型。

本实施例中,图1的步骤S140可以由所述合成模块140执行。

所述合成模块140可以包括:图像提取子模块142、模型组合子模块、模型转换子模块146和模型生成子模块148。

所述图像提取子模块142,用于提取所述人体多个角度中的任意一角度的二维图像。

本实施例中,图4的子步骤S142可以由所述图像提取子模块142执行。

所述模型排布子模块144,用于根据提取到的所述二维图像,将所述多个部位优化后的三维子模型进行位置排布。

本实施例中,图4的子步骤S144可以由所述模型排布子模块144执行。

所述模型转换子模块146,用于将每个部位的三维子模型转换为三角形网络模型。

本实施例中,图4的子步骤S146可以由所述模型转换子模块146执行。

所述模型生成子模块148,通过图形融合方法,将所述多个部位的三角形网络模型进行拼接,生成所述新的人体三维模型。

本实施例中,图4的子步骤S148可以由所述模型生成子模块148执行。

所述输出模块150,用于根据所述新的人体三维模型输出重建后的三维人体表面图像。

本实施例中,图1的步骤S150可以由所述输出模块150执行。

综上所述,本发明提供一种三维人体表面重建方法和装置,通过上述方法和装置,获取人体多个角度的二维图像,保证了获取的人体图像更为全面,提高了重建后的三维人体表面的可靠性。其次,针对人体三维模型中每一个三维子模型单独进行优化处理,提高了重建后的三维人体表面的准确性。最后,通过将各个角度的二维图像和各个部位的各个角度第一二维轮廓图像进行误差计算,并根据计算结果不断调整三维子模型,有效提高了重建后的三维人体表面的精确度。

在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”或者任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1