姿势引导的跨类别三维模型组合建模方法及装置与流程

文档序号:12964804阅读:191来源:国知局
姿势引导的跨类别三维模型组合建模方法及装置与流程

本发明实施例涉及三维几何建模技术,尤其涉及一种姿势引导的跨类别三维模型组合建模方法及装置。



背景技术:

随着3d建模技术的发展以及模型资源的丰富,三维模型组合建模方法近年来受到了越来越多的关注,其中,跨类别三维模型组合建模由于不受模型种类的限制,可以产生更为丰富的组合建模结果,使其成为一个重要的研究热点。

现有技术中,对跨类别三维模型组合建模时,其中输入是两个或多个分割好的模型,且这些模型之间存在对应关系,通过对各个模型之间有对应关系的功能性子结构进行替换,从而得到大量的三维模型。

然而,上述方法只能对结构相似的模型之间进行跨类组合,对于结构差异较大的跨类的模型进行组合时,上述方法并不适用,因此,如何对结构差异较大的跨类的模型进行组合,是目前亟待解决的技术问题。



技术实现要素:

本发明实施例提供一种姿势引导的跨类别三维模型组合建模方法及装置,以解决如何对结构差异较大的跨类的模型进行组合的技术问题。

第一方面,本发明实施例提供一种姿势引导的跨类别三维模型组合建模方法,包括:

接收用户输入的第一姿势模型;

分别计算所述第一姿势模型的q个第一区域与预设模型数据库中每个第二姿势模型的q个第二区域之间的相似度;其中,所述模型数据库中包括多个分割为模型部件的模型,以及与各所述模型对应的第二姿势模型;所述q个第一区域与所述q个第二区域一一对应,q为大于或等于2的整数;

根据所述相似度,选择与第二姿势模型的q个第二区域对应的多个模型部件;

将选择的多个模型部件进行组合,生成三维模型。

可选地,所述分别计算所述第一姿势模型的q个第一区域与预设模型数据库中每个第二姿势模型的q个第二区域之间的相似度,包括:

分别根据公式计算所述第一姿势模型中q个第一区域与每个所述第二姿势模型的q个第二区域之间的相似度;其中,d(po,pk,j)为第j个第一区域与第j个第二区域之间的相似度,j为小于或等于p的正整数,其中po为第一姿势模型中的姿势,pk为第k个第二姿势模型中的姿势,xo(i)和xk(i)为po和pk所对应骨架的参数,且i=1,…,19,ωi为权重,分别为第j个第二区域的中心骨骼点坐标。

可选地,所述根据所述相似度,选择与第二姿势模型的q个第二区域对应的模型部件,包括:

将各所述第二区域对应的多个相似度按照从大到小的顺序进行排序;

针对每个所述第二区域,选择前n个相似度对应的模型部件;

其中,n为正整数。

可选地,所述选择前n个相似度对应的模型部件,包括:

针对每个所述第二区域,在所述模型数据库中,分别选择同类别的前s个相似度对应的模型部件,直至从所有的类别中选择的模型部件数为n,其中,s为小于或等于n的正整数。

可选地,所述将选择的多个模型部件进行组合,生成三维模型之前,所述方法还包括:

判断各模型部件对应的模型类别之间是否能够进行组合;

若所述各模型部件对应的模型类别之间能够进行组合,则执行将选择的多个模型部件进行组合,生成三维模型的步骤。

可选地,所述将选择的多个模型部件进行组合,生成三维模型,包括:

根据各模型部件对应的第二区域,选取与该模型部件关联的功能部件;

通过所述功能部件,将选择的多个模型部件进行组合,生成三维模型。

可选地,所述将选择的多个模型部件进行组合,生成多个三维模型之后,所述方法还包括:

依次根据公式e(gm)=e1(p0,gm)+βe2(ym)+γe3(ym,c)计算多个三维模型的能量值,其中,e(gm)为第m个所述三维模型的能量值,gm为第m个三维模型组,xo为第一姿势模型特征,β=10,γ=0.1,其中,e1(po,gm)表示三维模型组gm中四个第二姿势模型的使用姿势与第一姿势模型相对于对应区域的相似度之和,e2(ym)为模型类别的组合兼容性,其中ym为一个二值向量,每个元素对应一个类别,a为模型组合兼容性权重矩阵,e3(ym,c)为用户约束项,c为用户输入的模型类别集合,c为c中的一个模型类别;

对多个所述能量值进行排序,并将排序后的能量值对应的三维模型推送给所述用户。

第二方面,本发明实施例提供一种姿势引导的跨类别三维模型组合建模装置,包括:

接收模块,用于接收用户输入的第一姿势模型;

计算模块,用于分别计算所述第一姿势模型的q个第一区域与预设模型数据库中每个第二姿势模型的q个第二区域之间的相似度;其中,所述模型数据库中包括多个分割为模型部件的模型,以及与各所述模型对应的第二姿势模型;所述q个第一区域与所述q个第二区域一一对应,q为大于或等于2的整数;

选择模块,用于根据所述相似度,选择与第二姿势模型的q个第二区域对应的多个模型部件;

生成模块,用于将选择的多个模型部件进行组合,生成三维模型。

可选地,所述计算模块具体用于:

分别根据公式计算所述第一姿势模型中q个第一区域与每个所述第二姿势模型的q个第二区域之间的相似度;其中,d(po,pk,j)为第j个第一区域与第j个第二区域之间的相似度,j为小于或等于p的正整数,其中po为第一姿势模型中的姿势,pk为第k个第二姿势模型中的姿势,xo(i)和xk(i)为po和pk所对应骨架的参数,且i=1,…,19,ωi为权重,分别为第j个第二区域的中心骨骼点坐标。

可选地,所述选择模块具体用于:

将各所述第二区域对应的多个相似度按照从大到小的顺序进行排序;

针对每个所述第二区域,选择前n个相似度对应的模型部件;

其中,n为正整数。

可选地,所述选择模块具体用于:

针对每个所述第二区域,在所述模型数据库中,分别选择同类别的前s个相似度对应的模型部件,直至从所有的类别中选择的模型部件数为n,其中,s为小于或等于n的正整数。

可选地,所述装置还包括:判断模块;其中,

所述判断模块,用于判断各模型部件对应的模型类别之间是否能够进行组合;

所述生成模块,用于在所述判断模块判断出所述各模型部件对应的模型类别之间能够进行组合时,将选择的多个模型部件进行组合,生成三维模型。

可选地,所述生成模块,具体用于:

根据各模型部件对应的第二区域,选取与该模型部件关联的功能部件;

通过所述功能部件,将选择的多个模型部件进行组合,生成三维模型。

可选地,所述计算模块具体用于:

依次根据公式e(gm)=e1(p0,gm)+βe2(ym)+γe3(ym,c)计算多个三维模型的能量值,其中,e(gm)为第m个所述三维模型的能量值,gm为第m个三维模型组,xo为第一姿势模型特征,β=10,γ=0.1,其中,e1(po,gm)表示三维模型组gm中四个第二姿势模型的使用姿势与第一姿势模型相对于对应区域的相似度之和,e2(ym)为模型类别的组合兼容性,其中ym为一个二值向量,每个元素对应一个类别,a为模型组合兼容性权重矩阵,e3(ym,c)为用户约束项,c为用户输入的模型类别集合,c为c中的一个模型类别;

对多个所述能量值进行排序,并将排序后的能量值对应的三维模型推送给所述用户。

本发明实施例提供的姿势引导的跨类别三维模型组合建模方法及装置,通过接收用户输入的第一姿势模型;分别计算第一姿势模型的q个第一区域与预设模型数据库中每个第二姿势模型的q个第二区域之间的相似度;其中,模型数据库中包括多个分割为模型部件的模型,以及与各模型对应的第二姿势模型;q个第一区域与所述q个第二区域一一对应;根据相似度,选择与第二姿势模型的q个第二区域对应的多个模型部件;将选择的多个模型部件进行组合,生成三维模型。由于通过计算用户输入的第一姿势模型的第一区域与模型数据库中每个第二姿势模型的第二区域之间的相似度,根据相似度选择第二区域对应的多个模型部件,并对模型部件进行组合,因此可以对结构差异较大的跨类的模型进行组合。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的姿势引导的跨类别三维模型组合建模方法实施例一的流程示意图;

图2为第一姿势模型的结构示意图;

图3为模型数据库中包括的三维模型的示意图;

图4a为自行车模型的示意图;

图4b为图4a中模型的节点连接示意图

图5a为三轮车模型的示意图

图5b为图5a中模型的节点连接示意图;

图6a为模型部件组合一示意图;

图6b为模型部件组合另一示意图;

图6c为模型部件组合又一示意图;

图6d为图6c中模型的节点连接示意图;

图7为本发明姿势引导的跨类别三维模型组合建模装置实施例一的结构示意图;

图8为本发明姿势引导的跨类别三维模型组合建模装置实施例二的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供的姿势引导的跨类别三维模型组合建模方法及装置,可以应用于创意设计、计算机辅助设计等领域,尤其适用于对不同类别的三维模型进行跨类别组合建模的场景中。在本发明实施例中,利用第一姿势模型中的人体姿势引导的跨类别三维模型组合建模方法能快速构建大量的跨类别组合三维模型,为三维动画制作、产品设计等应用提供三维素材。

本发明实施例主要针对的是如何对结构差异较大的不同类别的三维模型进行跨类别组合建模的技术问题。现有技术中,对三维模型组合建模时,其中输入是两个或多个分割好的模型,且这些模型分割后产生的部件之间存在对应关系,通过对各个模型部件之间有对应关系的功能性子结构进行替换,从而得到大量的三维模型,由于跨类别模型之间的部件关联关系难以确定,现有技术中只能对结构相似的模型类别之间进行跨类组合。

因此,本发明实施例提供的姿势引导的跨类别三维模型组合建模方法及装置,旨在解决如何对结构差异较大的不同类别的三维模型进行跨类组合建模的技术问题。

下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。

图1为本发明实施例提供的姿势引导的跨类别三维模型组合建模方法实施例一的流程示意图。如图1所示,该方法包括如下步骤:

步骤101:接收用户输入的第一姿势模型。

本发明实施例的执行主体可以为终端设备,例如可以为手机、计算机或平板电脑等。在本实施例中,图2为第一姿势模型的结构示意图,如图2所示,终端设备中可以预先存储有人体模型,用户通过向终端设备中输入参数,如输入后背的中心骨骼点的坐标或手部的中心骨骼点的坐标等,终端设备根据用户输入的参数以及预先存储的人体模型,将会生成人体姿势,即第一姿势模型。当然,用户也可以直接向终端设备输入第一姿势模型。

步骤102:分别计算第一姿势模型的q个第一区域与预设模型数据库中每个第二姿势模型的q个第二区域之间的相似度;其中,该模型数据库中包括多个分割为模型部件的模型,以及与各模型对应的第二姿势模型;q个第一区域与q个第二区域一一对应,q为大于或等于2的整数。

在本实施例中,在终端设备中将预先构建模型数据库,该模型数据库中包括多个被分割为模型部件的模型,以及与各模型对应的第二姿势模型。图3为模型数据库中包括的三维模型的示意图,如图3所示,该模型数据库中可以包括如下18类可以与用户直接交互的三维模型,如桌子、椅子、床、画架、健身器、电子琴、秋千、书架、沙发、台灯、柜子、平板电脑、滑板车、婴儿车、自行车、三轮车、手推车和轮椅,其中,终端设备可以对上述的各三维模型进行预分割处理后得到部件级的三维模型,如将桌子分割为桌面以及桌腿等,将椅子分割为把手、靠背、椅面和椅腿等。在分割完成后,可以将这些模型的结构用部件的关联图表示,即模型的部件为关联图的节点,如果两个部件相互连接,则部件之间存在一条边连接对应的两个节点,如桌面和桌腿相互连接,则将桌面和桌腿分别作为两个节点,且用一条边将这两个节点进行连接。

另外,模型数据库中还包括与上述各三维模型匹配的第二姿势模型。具体地,可以对模型数据库中的每个对象,标注其使用者的人体姿势,即编辑第二姿势模型,并调整其姿势与被标注的三维模型相匹配,因此,在模型数据库中的第二姿势模型有多个。需要说明的是,可以仅对模型数据库中的每个对象标注其使用者的人体姿势,如仅对椅子类别标注人体姿势,对桌子类别标注人体姿势,也可以对模型数据库中的每个三维模型标注人体姿势等,对于具体的标注方式,本实施例在此不作限制。标注完成后,还可以将第二姿势模型划分为q个第二区域,可选地,可以将第二姿势模型划分为四个第二区域,如划分为手部、背部、臀部和腿部,另外,对于分割后的模型部件,将与第二区域接触的部件被标注为不同的类别,以表示其使用功能性。如椅子被分割为把手、靠背、椅面和椅腿,则与手部接触的部件为把手,与背部接触的部件为靠背,与臀部接触的部件为椅面以及与腿部接触的部件为椅腿。

终端设备在接收到用户输入的第一姿势模型后,会自动将第一姿势模型划分为q个第一区域,可选地,可以将第一姿势模型划分为四个第一区域,如划分为手部、背部、臀部和腿部。划分完成后,将分别计算第一姿势模型的q个第一区域与模型数据库中每个第二姿势模型的q个第一区域之间的相似度,且q个第一区域与q个第二区域是一一对应的,例如:若将第一姿势模型划分为四个第一区域,分别为手部、背部、臀部和腿部,相应的,将模型数据库中的每个第二姿势模型也划分为四个第一区域,分别为手部、背部、臀部和腿部,终端设备将计算第一姿势模型中的手部与模型数据库中的每个第二姿势模型中的手部之间的相似度,计算第一姿势模型中的背部与模型数据库中的每个第二姿势模型中的背部之间的相似度,计算第一姿势模型中的臀部与模型数据库中的每个第二姿势模型中的臀部之间的相似度,计算第一姿势模型中的腿部与模型数据库中的每个第二姿势模型中的腿部之间的相似度,计算完成之后,将得到四个相似度的模型序列。

可选地,上述步骤102包括:分别根据公式(1)计算第一姿势模型中q个第一区域与每个第二姿势模型的q个第二区域之间的相似度:

其中,d(po,pk,j)为第j个第一区域与第j个第二区域之间的相似度,j为小于或等于p的正整数,其中po为第一姿势模型中的姿势,pk为第k个第二姿势模型中的姿势,xo(i)和xk(i)为po和pk所对应骨架的参数,且i=1,…,19,ωi为权重,分别为第j个第二区域的中心骨骼点坐标。

具体地,用户通过交互界面输入第一姿势模型之后,终端设备将第一姿势模型中的人体姿势定为po,将模型数据库中第k个第二姿势模型的人体姿势定为pk,则第一姿势模型中第j个第一区域与模型数据库中第k个第二姿势模型中第j个第二区域之间的相似度可以通过公式(1)进行计算。另外,骨架的参数包括骨架中关节点之间的转角。根据上述公式,可以针对每一个第一区域计算出一个相似度的序列。

步骤103:根据相似度,选择与第二姿势模型的q个第二区域对应的多个模型部件。

在本实施例中,终端设备在分别计算出第一姿势模型的q个第一区域与模型数据库中每个第二姿势模型的q个第二区域之间的相似度后,将根据计算出的相似度,从模型数据库中,选择出与第一姿势模型中的各第一区域之间的相似性较大的第二区域对应的模型部件。例如:如图2和图3所示,若图2中的第一姿势模型的第一区域包括手部和臀部,模型数据库中各模型对应的第二姿势模型的第二区域也包括手部和臀部,通过计算第一区域的手部和多个第二区域的手部之间的相似度之后,将选择相似度较大的一个或多个第二区域对应的手部对应的模型部件,如选择模型数据库中的自行车的把手模型部件、健身器材中的把手模型部件或三轮车中的把手模型部件中的一个或多个。在计算第一区域的臀部和多个第二区域的臀部之间的相似度之后,将选择相似度较大的一个或多个第二区域对应的臀部对应的模型部件,如选择模型数据库中的椅子的椅面模型部件、沙发中的坐面模型部件或三轮车中的坐面模型部件中的一个或多个。

可选地,上述步骤103具体可以包括:将各第二区域对应的多个相似度按照从大到小的顺序进行排序;针对每个第二区域,选择前n个相似度对应的模型部件,其中,n为正整数。

具体地,由于模型数据库中包括多个第二姿势模型,因此,对于每一个第二区域来说,根据公式(1)都可以计算出多个相似度,终端设备将计算出的多个相似度按照从大到小的顺序进行排序,并选择前n个相似度对应的模型部件,即选择与第一区域的较为相似的第二区域对应的模型部件。

进一步地,为了推荐出更为合理的组合模型,需要对选择出的模型进行组合筛选,为了确保更多类别的模型参与组合以及减少计算开销,在计算出各第二区域对应的多个相似度后,将在模型数据库中,分别选择同类别的前s个相似度对应的模型部件,直至从所有的类别中选择的模型部件数为n,其中,s为小于或等于n的正整数。具体地,终端设备在每一个第二区域对应的模型部件中,对于同类别的模型,将取前s个相似度对应的模型部件,例如:将从自行车的类别中取前3个相似度对应的模型部件,再从三轮车的类别中取前3个相似度对应的模型部件等,另外,可以只用整个相似度序列的前t个模型参与组合,例如:只用前9个模型参与组合等,由此可以得到一系列关于p个第二区域的模型组合,这样,可以避免选择的模型部件来自于单一模型的现象,从而可以保证更多类别的模型参与组合。

步骤104:将选择的多个模型部件进行组合,生成三维模型。

在本实施例中,在选择出多个模型部件之后,可以将选择的多个模型部件进行组合,以生成三维模型。其中,多个模型部件为不同第二区域对应的模型部件,如将背部对应的模型部件和手部对应的模型部件进行组合等。另外,生成的三维模型可以为一个,也可以为多个,对于三维模型的数量,本实施例在此不作限制。

在实际应用中,在进行多个模型部件之间的组合时,终端设备将根据每个选择的模型部件对应的第二区域抽取与该模型部件关联的功能部件,另外,用户还需要通过终端设备的交互界面向终端设备输入基座部件,终端设备将通过这些功能部件将多个模型部件进行组合。此外,图4a为自行车模型的示意图,图4b为图4a中模型的节点连接示意图,图5a为三轮车模型的示意图,图5b为图5a中模型的节点连接示意图,如图4a-图5b所示,为了将这些部件连接成完整的结构,终端设备首先将各个模型原有结构图中除功能节点外,度不为2的节点定为中继节点,度为2的节点定为连接节点,如图4b和图5b中实心节点表示中继节点,空心节点表示连接节点。图6a为模型部件组合一示意图,图6b为模型部件组合另一示意图,图6c为模型部件组合又一示意图,图6d为图6c中模型的节点连接示意图,如图6a-图6d所示,将图4b和图5b中的节点对应的部件按照第一姿势模型调整位置,取不重叠且与邻接的节点距离在新的结构和原有结构中相似的中继节点和连接节点,构成组合模型的结构关联图。例如:按照图2中所示的第一姿势模型,将三轮车的坐面模型部件、后轮模型部件与自行车的前轮模型部件以及把手模型部件进行组合,生成图6c中的三维模型。

可选地,为了生成多个使用者的组合模型,还可以在上述生成满足单一使用者模型方式的基础上,将通过上述方式生成的三维模型通过调整与其绑定第二姿势模型的中心位置进行组合,在用户选取基座部件以后,这些单一使用者的组合模型利用上述的组合方法会进一步的生成多个使用者的组合模型。

可选地,为了使得生成的三维模型更加合理,在将选择的多个模型部件进行组合,生成三维模型之前,还可以判断各模型部件对应的模型类别之间是否能够进行组合;若各模型部件对应的模型类别之间能够进行组合,再将选择的多个模型部件进行组合,生成三维模型。

具体地,终端设备可以采集用户输入的样本数据,该样本数据为用户对模型数据库中任意两个模型的对象类别是否能够组合的打分,终端设备根据该样本数据,即可得到模型类别两两之间的组合兼容性先验。例如:若某两个对象类别时间能够组合的打分低于预设值,则认为这两个对象类别之间不能组合,若该打分高于预设值,则认为这两个对象之间能够结合,终端设备将所有的类别两两之间判断完成后,会将判断结果进行保存。

终端设备在选择出多个模型部件后,将根据前述保存的结果判断这些部件所属的模型类别之间是否能够进行组合,在判断出能够组合后,再将选择的多个模型部件进行组合,若判断出不能够组合,再将向用户发出提示信息,以提醒用户该类别不能组合,或者终端设备将重新选择新的模型部件。由于在判断出各模型部件对应的模型类别之间能够进行组合时,再将多个模型部件进行组合,由此可以提高模型部件组合的合理性。

可选地,用户还可以根据自己的喜好或者实际情况在交互界面上输入模型对象的类别,终端设备将根据用户输入的模型类别,计算每个生成的三维模型的能量值,在实际应用中,将依次根据公式(2)计算多个三维模型的能量值,并对多个能量值进行排序,再将排序后的能量值对应的三维模型推送给用户。这样,终端设备可以根据用户的喜好或者实际情况,向用户推荐组合后的三维模型,由此可以提高用户的体验。

e(gm)=e1(p0,gm)+βe2(ym)+γe3(ym,c)(2)

其中,e(gm)为第m个三维模型的能量值,gm为第m个三维模型组,xo为第一姿势模型特征,β=10,γ=0.1,其中,e1(po,gm)表示三维模型组gm中四个第二姿势模型的使用姿势与第一姿势模型相对于对应区域的相似度之和,e2(ym)为模型类别的组合兼容性,其中ym为一个二值向量,每个元素对应一个类别,如果该组合中含有该类别,则ym取1,否则为0,a为模型组合兼容性权重矩阵,e3(ym,c)为用户约束项,c为用户输入的模型类别集合,c为c中的一个模型类别。

本发明实施例提供的姿势引导的跨类别三维模型组合建模方法,通过接收用户输入的第一姿势模型;分别计算第一姿势模型的q个第一区域与预设模型数据库中每个第二姿势模型的q个第二区域之间的相似度;其中,模型数据库中包括多个分割为模型部件的模型,以及与各模型对应的第二姿势模型;q个第一区域与所述q个第二区域一一对应;根据相似度,选择与第二姿势模型的q个第二区域对应的多个模型部件;将选择的多个模型部件进行组合,生成三维模型。由于通过计算用户输入的第一姿势模型的第一区域与模型数据库中每个第二姿势模型的第二区域之间的相似度,根据相似度选择第二区域对应的多个模型部件,并对模型部件进行组合,因此可以对结构差异较大的跨类的模型进行组合。另外,本发明中利用用户输入的第一姿势模型,可以产生跨类别的三维组合模型,提高了组合建模的自动化程度。

图7为本发明姿势引导的跨类别三维模型组合建模装置实施例一的结构示意图,该装置可以位于终端设备,参见图7所示,该装置包括:接收模块11、计算模块12、选择模块13和生成模块14,其中:

接收模块11用于接收用户输入的第一姿势模型;

计算模块12用于分别计算所述第一姿势模型的q个第一区域与预设模型数据库中每个第二姿势模型的q个第二区域之间的相似度;其中,所述模型数据库中包括多个分割为模型部件的模型,以及与各所述模型对应的第二姿势模型;所述q个第一区域与所述q个第二区域一一对应,q为大于或等于2的整数;

选择模块13用于根据所述相似度,选择与第二姿势模型的q个第二区域对应的多个模型部件;

生成模块14用于将选择的多个模型部件进行组合,生成三维模型。

本发明实施例提供的姿势引导的跨类别三维模型组合建模装置,接收模块11通过接收用户输入的第一姿势模型;计算模块12分别计算第一姿势模型的q个第一区域与预设模型数据库中每个第二姿势模型的q个第二区域之间的相似度;其中,模型数据库中包括多个分割为模型部件的模型,以及与各模型对应的第二姿势模型;q个第一区域与所述q个第二区域一一对应;选择模块13根据相似度,选择与第二姿势模型的q个第二区域对应的多个模型部件;生成模块14将选择的多个模型部件进行组合,生成三维模型。由于通过计算用户输入的第一姿势模型的第一区域与模型数据库中每个第二姿势模型的第二区域之间的相似度,根据相似度选择第二区域对应的多个模型部件,并对模型部件进行组合,因此可以对结构差异较大的跨类的模型进行组合。

可选地,计算模块12具体用于:

分别根据公式计算所述第一姿势模型中q个第一区域与每个所述第二姿势模型的q个第二区域之间的相似度;其中,d(po,pk,j)为第j个第一区域与第j个第二区域之间的相似度,j为小于或等于p的正整数,其中po为第一姿势模型中的姿势,pk为第k个第二姿势模型中的姿势,xo(i)和xk(i)为po和pk所对应骨架的参数,且i=1,…,19,ωi为权重,分别为第j个第二区域的中心骨骼点坐标。

可选地,选择模块13具体用于:

将各所述第二区域对应的多个相似度按照从大到小的顺序进行排序;

针对每个所述第二区域,选择前n个相似度对应的模型部件;

其中,n为正整数。

可选地,选择模块13具体用于:

针对每个所述第二区域,在所述模型数据库中,分别选择同类别的前s个相似度对应的模型部件,直至从所有的类别中选择的模型部件数为n,其中,s为小于或等于n的正整数。

本发明实施例提供的姿势引导的跨类别三维模型组合建模装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

图8为本发明姿势引导的跨类别三维模型组合建模装置实施例二的结构示意图,在图7所示实施例的基础上,该装置还包括:判断模块15,其中:

判断模块15用于判断各模型部件对应的模型类别之间是否能够进行组合;

生成模块14用于在所述判断模块15判断出所述各模型部件对应的模型类别之间能够进行组合时,将选择的多个模型部件进行组合,生成三维模型。

本发明实施例提供的姿势引导的跨类别三维模型组合建模装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

可选地,所述生成模块14具体用于:

根据各模型部件对应的第二区域,选取与该模型部件关联的功能部件;

通过所述功能部件,将选择的多个模型部件进行组合,生成三维模型。

可选地,所述计算模块12具体用于:

依次根据公式e(gm)=e1(p0,gm)+βe2(ym)+γe3(ym,c)计算多个三维模型的能量值,其中,e(gm)为第m个所述三维模型的能量值,gm为第m个三维模型组,xo为第一姿势模型特征,β=10,γ=0.1,其中,e1(po,gm)表示三维模型组gm中四个第二姿势模型的使用姿势与第一姿势模型相对于对应区域的相似度之和,e2(ym)为模型类别的组合兼容性,其中ym为一个二值向量,每个元素对应一个类别,a为模型组合兼容性权重矩阵,e3(ym,c)为用户约束项,c为用户输入的模型类别集合,c为c中的一个模型类别;

对多个所述能量值进行排序,并将排序后的能量值对应的三维模型推送给所述用户。

本发明实施例提供的姿势引导的跨类别三维模型组合建模装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

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