三维模型的标记方法和装置与流程

文档序号:16214625发布日期:2018-12-08 08:11阅读:451来源:国知局
三维模型的标记方法和装置与流程

本发明涉及人工智能和增强现实技术领域,尤其涉及一种三维模型的标记方法和装置。

背景技术

ar(augmentedreality,增强现实)技术是一种将真实世界信息和虚拟世界信息“无缝”集成的新技术,可以把原本在现实世界的一定时间空间范围内很难体验到的实体信息(例如视觉信息、声音、味道、触觉等),通过电脑等科学技术,模拟仿真后再叠加到真实世界,被人类感官所感知,从而达到超越现实的感官体验。真实的环境和虚拟的物体实时地叠加到了同一个画面或空间同时存在。

随着计算技术的发展,实现网络(web)ar效果的关键一步是在合适的位置放置合适的模型。



技术实现要素:

本发明实施例提供一种三维模型的标记方法和装置,以解决现有技术中的一个或多个技术问题。

第一方面,本发明实施例提供了一种三维模型的标记方法,包括:

一种三维模型的标记方法,其特征在于,包括:

根据已标注的样本图像,采用机器学习算法进行训练得到标记定位规则;其中,所述已标注的样本图像中标注了各种三维模型的类别信息对应的标记信息,所述标记定位规则包括三维模型的类别信息、二维图像的场景特征信息和标记位置的对应关系;

采用所述标记定位规则对待标记图像和待显示三维模型的类别信息进行匹配,得到所述待显示三维模型在所述待标记图像中的标记位置。

结合第一方面,本发明实施例在第一方面的第一种实现方式中,根据已标注的样本图像,采用机器学习算法进行训练得到标记定位规则,包括:

在各样本图像中标注出各种三维模型的类别信息应该出现的标记范围信息和模型可放置坐标;

提取各样本图像的场景特征信息;

根据各样本图像中标注出的各种三维模型的类别信息应该出现的标记范围信息、模型可放置坐标和场景特征信息,采用机器学习算法进行训练,得到所述标记定位规则。

结合第一方面的第一种实现方式,本发明实施例在第一方面的第二种实现方式中,所述标记范围信息包括标记各顶点的坐标;所述模型可放置坐标为所述标记范围信息中的一个坐标。

结合第一方面的第一种实现方式或第一方面的第二种实现方式,本发明实施例在第一方面的第三种实现方式中,采用所述标记定位规则对待标记图像和待显示三维模型的类别信息进行匹配,得到所述待显示三维模型在所述待标记图像中的标记位置,包括:

获取摄像头拍摄的待标记图像;

将根据所述标记定位规则对所述待标记图像和待显示三维模型的类别信息进行匹配,得到所述待显示三维模型在所述待标记图像中应该出现的标记范围信息和模型可放置坐标。

结合第一方面的第三种实现方式,本发明实施例在第一方面的第四种实现方式中,获取摄像头拍摄的待标记图像,包括:

通过浏览器获取终端设备的摄像头输入内容,所述摄像头输入内容包括所述待标记图像。

结合第一方面的第四种实现方式,本发明实施例在第一方面的第五种实现方式中,还包括:

向所述浏览器返回所述待显示三维模型在所述待标记图像中应该出现的标记范围信息和模型可放置坐标;或

向所述浏览器返回错误状态。

第二方面,本发明实施例提供了一种三维模型的标记装置,包括:

标记模块,用于根据已标注的样本图像,采用机器学习算法进行训练得到标记定位规则;其中,所述已标注的样本图像中标注了各种三维模型的类别信息对应的标记信息,所述标记定位规则包括三维模型的类别信息、二维图像的场景特征信息和标记位置的对应关系;

匹配模块,用于采用所述标记定位规则对待标记图像和待显示三维模型的类别信息进行匹配,得到所述待显示三维模型在所述待标记图像中的标记位置。

结合第二方面,本发明实施例在第二方面的第一种实现方式中,所述标记模块包括:

标注子模块,用于在各样本图像中标注出各种三维模型的类别信息应该出现的标记范围信息和模型可放置坐标;

提取子模块,用于提取各样本图像的场景特征信息;

训练子模块,用于根据各样本图像中标注出的各种三维模型的类别信息应该出现的标记范围信息、模型可放置坐标和场景特征信息,采用机器学习算法进行训练,得到所述标记定位规则。

结合第二方面的第一种实现方式,本发明实施例在第二方面的第二种实现方式中,所述标记范围信息包括标记各顶点的坐标;所述模型可放置坐标为所述标记范围信息中的一个坐标。

结合第二方面的第一种实现方式或第二方面的第二种实现方式,本发明实施例在第二方面的第三种实现方式中,所述匹配模块包括:

获取子模块,用于获取摄像头拍摄的待标记图像;

匹配子模块,用于将根据所述标记定位规则对所述待标记图像和待显示三维模型的类别信息进行匹配,得到所述待显示三维模型在所述待标记图像中应该出现的标记范围信息和模型可放置坐标。

结合第二方面的第三种实现方式,本发明实施例在第二方面的第四种实现方式中,获取子模块还用于通过浏览器获取终端设备的摄像头输入内容,所述摄像头输入内容包括所述待标记图像。

结合第二方面的第四种实现方式,本发明实施例在第二方面的第五种实现方式中,还包括:

返回模块,用于向所述浏览器返回所述待显示三维模型在所述待标记图像中应该出现的标记范围信息和模型可放置坐标;或向所述浏览器返回错误状态。

第三方面,本发明实施例提供了一种三维模型的标记装置,所述装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。

在一个可能的设计中,三维模型的标记装置的结构中包括处理器和存储器,所述存储器用于存储支持三维模型的标记装置执行上述三维模型的标记方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述三维模型的标记装置还可以包括通信接口,用于三维模型的标记装置与其他设备或通信网络通信。

第四方面,本发明实施例提供了一种计算机可读存储介质,用于存储三维模型的标记装置所用的计算机软件指令,其包括用于执行上述三维模型的标记方法所涉及的程序。

上述技术方案中的一个技术方案具有如下优点或有益效果:根据三维模型的类别信息和待标记图像的场景特征信息,在待标记图像中确定出三维模型对应的标记位置,这样有利于针对不同类别的模型和图像场景准确地产生标记,有利于更加准确和自然地显示模型初始化位置,产生的标记更加符合三维模型和待标记图像的特点。

上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本发明进一步的方面、实施方式和特征将会是容易明白的。

附图说明

在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本发明公开的一些实施方式,而不应将其视为是对本发明范围的限制。

图1为根据本发明实施例的三维模型的标记方法的流程图。

图2为根据本发明实施例的三维模型的标记方法的流程图。

图3为根据本发明实施例的三维模型的标记装置的方框图。

图4为根据本发明实施例的三维模型的标记装置的方框图。

图5为根据本发明实施例的三维模型的标记方法的示例图。

图6为根据本发明实施例的三维模型的标记方法的流程图。

图7为根据本发明实施例的三维模型的标记方法的示例图。

图8为根据本发明实施例的三维模型的标记装置的结构框图。

具体实施方式

在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。

图1为根据本发明实施例的三维模型的标记方法的流程图。如图1所示,该方法包括:

步骤s110、根据已标注的样本图像,采用机器学习算法进行训练得到标记定位规则;其中,所述已标注的样本图像中标注了各种三维模型的类别信息对应的标记信息,所述标记定位规则包括三维模型的类别信息、二维图像的场景特征信息和标记位置的对应关系;

步骤s120、采用所述标记定位规则对待标记图像和待显示三维模型的类别信息进行匹配,得到所述待显示三维模型在所述待标记图像中的标记位置。

在本实施例中,三维模型的类别信息可以包括例如空中动物、陆地动物、水中动物、办公用品等。样本图像中可以选择包括各种场景例如草原、天空、大海、森林、家居、办公等特征信息的图像。可以从手机、相机等具有拍摄功能的终端设备拍摄的包括某些场景的图像中选择。在样本图像中,可以按照不同的三维模型的类别信息进行标注。

例如,样本图像中包括大海、河流、湖泊等与水域相关的场景,可以在出现水域的位置标注出三维模型的类别信息为水中动物的标记信息。

再如,样本图像中包括办公场景,可以在办公桌上标注出三维模型的类别信息为办公用品的标记信息。

对若干样本图像进行自动学习后,可以得到标记定位规则。采用学习得到的标记定位规则,对待标记图像和待显示三维模型的类别信息进行匹配。

例如,待显示三维模型为茶杯,其类别信息属于办公用品,则根据标记定位规则可以匹配得到该茶杯可以放置在具有办公场景特征的图像中。如果待标记图像中具有办公场景特征例如办公桌,则应该将该茶杯放置于该办公桌上。因此,可以根据该办公桌的位置来确定该茶杯的标记位置。

再如,待显示三维模型为飞鸟,其类别信息属于空中动物,则根据标记定位规则可以匹配得到该飞鸟可以放置在具有天空场景特征的图像中。如果待标记图像中具有天空场景特征例如蓝天、白云等,则应该将该飞鸟放置于蓝天、白云所在区域。因此,可以根据蓝天、白云所在区域来确定该飞鸟的标记位置。

匹配得到最佳的标记位置后,可以返回给网络(web)浏览器端,在浏览器上根据确定的标记位置将待显示三维模型放置到待标记图像中。

在一种可能的实现方式中,如图2所示,步骤s110包括:

步骤s111、在各样本图像中标注出各种三维模型的类别信息应该出现的标记范围信息和模型可放置坐标;

步骤s112、提取各样本图像的场景特征信息;

步骤s113、根据各样本图像中标注出的各种三维模型的类别信息应该出现的标记范围信息、模型可放置坐标和场景特征信息,采用机器学习算法进行训练,得到所述标记定位规则。

在提取各样本图像的场景特征信息之前,可以将样本图像格式化处理,并且统一图像的大小,标记出图像中的场景特征信息。

在本实施例中,三维模型的标记位置包括:该三维模型在二维图像上应该出现的标记范围信息,格式如{marker顶点信息:{marker顶点1,marker顶点2,marker顶点3,marker顶点4},模型可放置坐标{x模,y模}}。

将样本图像及其标注的内容:{标记范围信息、模型可放置坐标},输入到机器学习模块,采用机器学习算法进行训练,得到所述标记定位规则。

在一种可能的实现方式中,所述标记范围信息包括标记各顶点的坐标;所述模型可放置坐标为所述标记范围信息中的一个坐标。

例如,如图5所示,标记范围信息包括标记(marker)各顶点的坐标和模式可放置坐标,格式如{marker顶点信息:{(x1,y1),(x2,y2),(x3,y3),(x4,y4)},模型可放置坐标(x4,y4)}。

在一种可能的实现方式中,如图2所示,步骤s120包括:

步骤s121、获取摄像头拍摄的待标记图像;

步骤s122、将根据所述标记定位规则对所述待标记图像和待显示三维模型的类别信息进行匹配,得到所述待显示三维模型在所述待标记图像中应该出现的标记范围信息和模型可放置坐标。

例如,可以实时地通过终端设备的摄像头拍摄照片,将拍摄的照片作为待标记的二维图像,将该二维图像与待显示的三维模型的类别信息进行匹配,得到三维模型在二维图像中应该出现的标记范围信息和可以放置模型的位置标记坐标。

在一种可能的实现方式中,步骤s121包括:

通过浏览器获取终端设备的摄像头输入内容,所述摄像头输入内容包括所述待标记图像。

在一种可能的实现方式中,还包括:

向所述浏览器返回所述待显示三维模型在所述待标记图像中应该出现的标记范围信息和模型可放置坐标;或向所述浏览器返回错误状态。

浏览器则可以根据收到的标记范围信息和模型可放置坐标等标记信息,放置三维模型。如图6所示,可以将河马放置在桌子上。

本发明实施例中,根据三维模型的类别信息和待标记图像的场景特征信息,在待标记图像中确定出三维模型对应的标记位置,这样有利于针对不同类别的模型和图像场景准确地产生标记,有利于更加准确和自然地显示模型初始化位置,产生的标记更加符合三维模型和待标记图像的特点。

例如,用户在终端设备的浏览器中打开webar页面后,在页面上,以摄像头获取的真实内容为背景,通过ai(artificialintelligence,人工智能)技术实现对模型初始化标识信息标记的生成可以更加准确和自然地显示模型初始化位置,并且产生更好的标记,用于后续的标记捕捉,提升用户体验。

图3为根据本发明实施例的三维模型的标记装置的方框图。如图3所示,该方法包括:

标记模块41,用于根据已标注的样本图像,采用机器学习算法进行训练得到标记定位规则;其中,所述已标注的样本图像中标注了各种三维模型的类别信息对应的标记信息,所述标记定位规则包括三维模型的类别信息、二维图像的场景特征信息和标记位置的对应关系;

匹配模块42,用于采用所述标记定位规则对待标记图像和待显示三维模型的类别信息进行匹配,得到所述待显示三维模型在所述待标记图像中的标记位置。

在一种可能的实现方式中,标记模块41包括:

标注子模块411,用于在各样本图像中标注出各种三维模型的类别信息应该出现的标记范围信息和模型可放置坐标;

提取子模块412,用于提取各样本图像的场景特征信息;

训练子模块413,用于根据各样本图像中标注出的各种三维模型的类别信息应该出现的标记范围信息、模型可放置坐标和场景特征信息,采用机器学习算法进行训练,得到所述标记定位规则。

在一种可能的实现方式中,所述标记范围信息包括标记各顶点的坐标;所述模型可放置坐标为所述标记范围信息中的一个坐标。

在一种可能的实现方式中,匹配模块42包括:

获取子模块421,用于获取摄像头拍摄的待标记图像;

匹配子模块422,用于将根据所述标记定位规则对所述待标记图像和待显示三维模型的类别信息进行匹配,得到所述待显示三维模型在所述待标记图像中应该出现的标记范围信息和模型可放置坐标。

在一种可能的实现方式中,获取子模块421包括:

通过浏览器获取终端设备的摄像头输入内容,所述摄像头输入内容包括所述待标记图像。

在一种可能的实现方式中,还包括:

返回模块45(图中为标出),用于向所述浏览器返回所述待显示三维模型在所述待标记图像中应该出现的标记范围信息和模型可放置坐标;或

向所述浏览器返回错误状态。

本发明实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。

在一种示例中,基于ai技术的三维模型标记实现方法的应用场景为:用户在智能手机浏览器中打开webar页面后,页面以摄像头获取的真实内容为背景,将三维模型置于恰当的初始位置。效果如图5所示。

以该应用场景为例,本发明实施例基于ai技术的三维模型标记实现方法流程图,如图7所示,按流程顺序,关键模块处理包括:

(一)离线训练部分。

1.离线标注标记。输入三维模型类别信息,如{空中动物,陆地动物,水中动物}等;输入大量场景二维图像,包括用户使用手机可能拍摄的任何场景类别的图像;通过人工进行这些类别模型应该在二维图像上出现的标记范围信息以及模型可放置位置信息,格式如{marker顶点信息:{marker顶点1,marker顶点2,marker顶点3,marker顶点4},模型可放置坐标{x模,y模}}

2.标记机器学习模块。将标注内容输入标记机器学习模块,通过大量的标注信息训练标记定位规则,等待规则训练好后,就可以用未知输入得出期望的理想输出标记信息,格式如{marker顶点信息:{marker顶点1,marker顶点2,marker顶点3,marker顶点4},模型可放置坐标{x模,y模}},如图5所示。

(二)在线部分。

3.获取摄像头内容。web端利用浏览器webrtc(real-timeclock,实时时钟)规范中的方法获取手机设备摄像头输入流,将稳定地摄像头图像内容通过http/https(hypertexttransferprotocol,超文本传输协议)协议传输给api(applicationprogramminginterface,应用程序编程接口),到达后端内容处理模块服务。

4.内容处理模块接到摄像头内容后,将摄像头内容图像二进制以及要显示的三维模型类别信息传递给标记服务模块,与根据机器学习训练出来的标记规则进行坐标匹配,返回近似的标记信息{marker顶点信息:{marker顶点1,marker顶点2,marker顶点3,marker顶点4},模型可放置坐标{x模,y模}}。

5.内容处理模块,接到返回的标记信息则将标记信息通过http/https协议返回给web浏览器端用于放置模型使用;若没有合适的标记信息返回,则抛弃本次服务,返回识别错误状态,等待下次摄像头内容输入,直到遇到合适标记返回信息为止。

图8为根据本发明实施例的三维模型的标记装置的结构框图。如图8所示,该装置包括:存储器910和处理器920,存储器910内存储有可在处理器920上运行的计算机程序。所述处理器920执行所述计算机程序时实现上述实施例中的三维模型的标记方法。所述存储器910和处理器920的数量可以为一个或多个。

该装置还包括:

通信接口930,用于与外界设备进行通信,进行数据交互传输。

存储器910可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。

如果存储器910、处理器920和通信接口930独立实现,则存储器910、处理器920和通信接口930可以通过总线相互连接并完成相互间的通信。所述总线可以是工业标准体系结构(isa,industrystandardarchitecture)总线、外部设备互连(pci,peripheralcomponent)总线或扩展工业标准体系结构(eisa,extendedindustrystandardcomponent)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

可选的,在具体实现上,如果存储器910、处理器920及通信接口930集成在一块芯片上,则存储器910、处理器920及通信接口930可以通过内部接口完成相互间的通信。

本发明实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现上述实施例中任一所述的方法。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以是只读存储器,磁盘或光盘等。

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

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