CN117523148B - 虚拟ar的互动方法、系统、电子设备及存储介质 - Google Patents
虚拟ar的互动方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117523148B CN117523148B CN202410003488.7A CN202410003488A CN117523148B CN 117523148 B CN117523148 B CN 117523148B CN 202410003488 A CN202410003488 A CN 202410003488A CN 117523148 B CN117523148 B CN 117523148B
- Authority
- CN
- China
- Prior art keywords
- image
- target
- source image
- url
- source
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 230000003993 interaction Effects 0.000 title claims abstract description 46
- 239000011159 matrix material Substances 0.000 claims abstract description 38
- 230000000694 effects Effects 0.000 claims abstract description 36
- 230000009471 action Effects 0.000 claims abstract description 13
- 238000012545 processing Methods 0.000 claims description 23
- 238000010586 diagram Methods 0.000 claims description 14
- 238000009877 rendering Methods 0.000 claims description 11
- 238000004458 analytical method Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 5
- 230000002452 interceptive effect Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 2
- 230000000875 corresponding effect Effects 0.000 description 50
- 230000008569 process Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000002347 injection Methods 0.000 description 3
- 239000007924 injection Substances 0.000 description 3
- 239000000243 solution Substances 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
Abstract
本申请提供一种虚拟AR的互动方法、系统、电子设备及存储介质,根据与活动页面中的活动ID匹配的活动信息中的初始图像的源图像的URL和Pattern标记的URL获取初始图像的源图像和初始图像的Pattern标记;分析渲染在活动页面中的虚拟AR视频中的每帧图像,得到每帧图像的目标源图像和目标Pattern标记;若各帧图像中存在目标图像,根据标记在活动页面中的目标图像的位置和方向调整相机的位置和方向后相机的相机矩阵信息确定相机参数;根据相机参数、位置和方向在活动页面中显示基于目标AR模型的URL获取的目标AR模型,以便在活动页面中显示的目标AR模型基于用户的动作与用户进行互动。
Description
技术领域
本发明涉及元宇宙技术领域,更具体地说,涉及一种虚拟AR的互动方法、系统、电子设备及存储介质。
背景技术
随着科技的快速发展,元宇宙的发展和应用也随之在快速的发展,基于元宇宙构建的虚拟AR被广泛应用于各个领域中。
目前的虚拟AR可供人们进行观看,但是随着虚拟AR的不断发展,仅观看已经不能满足人们的需求,人们更渴望与虚拟AR进行互动;但是,目前并没有一种有效的互动方式可以实现人们与虚拟AR进行互动。
因此,如何提供一种虚拟AR的互动方式,以实现人们与虚拟AR的互动,是本申请当前亟需解决的问题。
发明内容
有鉴于此,本发明提供一种虚拟AR的互动方法、系统、电子设备及存储介质,以实现人们与虚拟AR的互动为目的。
本申请第一方面提供一种虚拟AR的互动方法,应用于客户端,所述方法包括:
将用户当前录制的虚拟AR视频渲染至所述客户端当前的活动页面中,并获取与所述活动页面中的活动ID匹配的活动信息;其中,所述活动信息包括目标AR模型的URL、初始图像的源图像的URL和初始图像的Pattern标记的URL;
根据所述初始图像的源图像的URL获取所述初始图像的源图像,以及根据所述初始图像的Pattern标记的URL获取所述初始图像和Pattern标记;
对所述活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记;
若各帧图像中存在目标图像,标记所述目标图像在所述活动页面中的位置和方向;其中,所述目标图像为各帧图像中目标源图像和目标Pattern标记与所述源图像和所述Pattern标记的相似度大于预设相似度的图像;
根据所述位置和方向调整录制所述虚拟AR视频的相机的位置和方向,并根据调整位置和方向后所述相机的相机矩阵信息,确定相应的相机参数;
根据所述目标AR模型的URL获取目标AR模型,并根据所述相机参数、所述位置和所述方向在所述活动页面中显示所述目标AR模型,以便在所述活动页面中显示的所述目标AR模型通过触发所述用户的语音或动作对应的交互方式,实现与所述用户进行互动。
可选的,所述初始图像的源图像及其URL和Pattern标记及其URL的生成过程,包括:
获取所述用户上传的初始图像,并利用canvas工具创建所述初始图像的源图像和所述源图像的特征信息;
根据所述源图像及其特征信息生成所述初始图像的Pattern标记;
将所述初始图像的源图像和Pattern标记上传至服务器,并确定所述初始图像的源图像的URL和Pattern标记的URL。
可选的,获取所述用户上传的初始图像,并利用canvas工具创建所述初始图像的源图像和所述源图像的特征信息,包括:
获取所述用户上传的初始图像,并利用canvas工具的绘图api创建所述初始图像的图像边框,得到所述初始图像的源图像;
利用所述canvas工具创建相应的canvas元素,并使用drawImage将所述源图像绘制至所述canvas元素上;
根据利用canvas工具上传的所述canvas元素上的所述源图像的区域信息,生成所述源图像的ImageData对象,其中所述ImageData对象包括所述源图像的data属性;
根据所述源图像及其data属性,确定所述源图像的特征信息。
可选的,根据所述源图像及其data属性,确定所述源图像的特征信息,包括:
根据所述源图像的data属性中各个像素的RGBA值,计算所述源图像的平均亮度;
统计所述源图像的data属性中各个像素的RGB的通道直方图,得到所述源图像的颜色分布特征;
分析所述源图像的data属性中各个像素的RGBA值之间的变化分布图,并根据所述变化分布图确定所述源图像的边缘特征;
利用卷积核对所述源图像进行滤波处理,提取所述源图像的图像纹理特征;
根据所述平均亮度、所述颜色分布特征、所述边缘特征和所述图像纹理特征,生成所述源图像的特征信息。
可选的,根据所述平均亮度、所述颜色分布特征、所述边缘特征和所述图像纹理特征,生成所述源图像的特征信息,包括:
将所述平均亮度转化为平均亮度字符串,将所述颜色分布特征转换成颜色分布特征字符串,将所述边缘特征转换成边缘特征字符串,将所述图像纹理特征转换成图像纹理特征字符串;
将所述平均亮度字符串、所述颜色分布特征字符串、所述边缘特征字符串和所述图像纹理特征字符串进行串联并拼接,得到源图像的fileString变量;
将所述fileString变量插入预设程序,并执行得到的目标程序,得到源图像的blob对象;
利用目标api对所述blob对象进行处理,得到包含所述源图像的特征信息的二进制文件。
可选的,对所述活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记,包括:
针对每帧图像,利用canvas工具创建所述图像的目标源图像和所述图像的目标源图像的特征信息;
根据所述图像的目标源图像及其特征信息生成所述图像的目标Pattern标记。
可选的,针对每帧图像,利用canvas工具创建所述图像的目标源图像和所述图像的目标源图像的特征信息,包括:
利用canvas工具的绘图api创建所述图像的图像边框,得到所述图像的目标源图像;
利用所述canvas工具创建相应的canvas元素,并使用drawImage将所述目标源图像绘制至所述canvas元素上;
根据利用canvas工具上传的所述canvas元素上的所述目标源图像的区域信息,生成所述目标源图像的目标ImageData对象,其中,所述目标ImageData对象包括所述目标源图像的data属性;
根据所述目标源图像及其data属性,确定所述目标源图像的特征信息。
本申请第二方面提供一种虚拟AR的互动系统,应用于客户端,所述系统包括:
渲染单元,用于将用户当前录制的虚拟AR视频渲染至所述客户端当前的活动页面中,并获取与所述活动页面中的活动ID匹配的活动信息;其中,所述活动信息包括目标AR模型的URL、初始图像的源图像的URL和初始图像的Pattern标记的URL;
第一获取单元,用于根据所述初始图像的源图像的URL获取所述初始图像的源图像,以及根据所述初始图像的Pattern标记的URL获取所述初始图像和Pattern标记;
分析处理单元,用于对所述活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记;
标记单元,用于若各帧图像中存在目标图像,标记所述目标图像在所述活动页面中的位置和方向;其中,所述目标图像为各帧图像中目标源图像和目标Pattern标记与所述源图像和所述Pattern标记的相似度大于预设相似度的图像;
调整单元,用于根据所述位置和方向调整录制所述虚拟AR视频的相机的位置和方向,并根据调整位置和方向后所述相机的相机矩阵信息,确定相应的相机参数;
显示与互动单元,用于根据所述目标AR模型的URL获取目标AR模型,并根据所述相机参数、所述位置和所述方向在所述活动页面中显示所述目标AR模型,以便在所述活动页面中显示的所述目标AR模型基于所述用户的语音或动作与所述用户进行互动。
本申请第三方面提供一种电子设备,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如上述本申请第一方面提供的虚拟AR的互动方法。
本申请第四方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行如上述本申请第一方面提供的虚拟AR的互动方法。
本发明提供一种虚拟AR的互动方法、系统、电子设备及存储介质,将用户当前录制的虚拟AR视频渲染至客户端当前的活动页面中,并获取与活动页面中的活动ID匹配的活动信息;其中,活动信息包括目标AR模型的URL、初始图像的源图像的URL和Pattern标记的URL;根据初始图像的源图像的URL获取初始图像的源图像,以及根据初始图像的Pattern标记的URL获取初始图像和Pattern标记;对活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记;若各帧图像中存在目标图像,标记目标图像在活动页面中的位置和方向;其中,目标图像为各帧图像中目标源图像和目标Pattern标记与源图像和Pattern标记的相似度大于预设相似度的图像;根据位置和方向调整录制虚拟AR视频的相机的位置和方向,并根据调整位置和方向后相机的相机矩阵信息,确定相应的相机参数;根据目标AR模型的URL获取目标AR模型,并根据相机参数、位置和方向在活动页面中显示目标AR模型,以便人们可以向在活动页面中显示的目标AR模型做出相应的动作或进行相应语音对话,在活动页面中显示的虚拟AR模型可以通过触发用户的语音或动作对应的交互方式,从而实现与用户进行互动。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种虚拟AR的互动方法的流程示意图;
图2为本发明实施例提供的一种初始图像的源图像及其URL和Pattern标记及其URL的生成方法的流程示意图;
图3为本发明实施例提供的一种虚拟AR的互动系统的结构示意图;
图4为本发明实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本发明公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本发明公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
AR:对应VR虚拟实境一词的翻译称为实拟虚境或扩张现实,是指透过摄影机影像的位置及角度精算并加上图像分析技术,让萤幕上的虚拟世界能够与现实世界场景进行结合与互动的技术。
虚拟实境:(virtual reality,VR),简称虚拟环境,是利用电脑模拟产生一个三维空间的虚拟世界,提供使用者关于视觉等感官的模拟,让使用者感觉仿佛身历其境,可以即时、没有限制地观察三维空间内的事物;使用者进行位置移动时,电脑可以立即进行复杂的运算,将精确的三维世界影像传回产生临场感。
3D:日常生活中可指由长、宽、高三个维度所构成的空间,而且常常是指三维的欧几里得空间。
Canvas工具的绘图api:可以提供一个通过JavaScript和HTML的<canvas>元素来绘制图形的方式。可以用于动画、游戏画面、数据可视化、图片编辑以及实时视频处理等方面。
参见图1,示出了本申请实施例提供的一种虚拟AR的互动生成方法的流程示意图,该虚拟AR的虚拟AR的互动方法应用于客户端,虚拟AR的互动方法具体包括以下步骤:
S101:将用户当前录制的虚拟AR视频渲染至客户端当前的活动页面中,并获取与活动页面中的活动ID匹配的活动信息。
在本申请实施例中,可以预先利用3dmax、photoshop、Maya、Rhino等算法生成多个AR模型,并通过上传服务将生成的各个AR模型存储至数据库中,同时还可以根据每个AR模型的存储路径生成相应的URL。其中,生成的各个AR模型可以为2D模型,或者可以为3D模型,可以根据实际应用进行设置,本申请实施例不加以限定。
在本实施例中,每个AR模型还携带有对应的的模型样式。其中,模型样式可以为默认模型样式,也可以为自定义事件跟样式,自定义事件跟样式为用户根据需求设置的模型样式。
在具体应用的过程中,虚拟AR生成平台还提供模型配置界面,用户可以通过模型配置界面配置AR模型对应的自定义事件跟样式。其中,自定义事件跟样式包括多个模型属性。
需要说明的是,各个模型属性可以包括用户与模型的交互方式、模型的大小、位置调整,以及脚本注入供能等等。
其中,用户与模型的交互方式可以基于用户在对应的AR模型面前做出的动画或进行的语音对话做出相应的动画或语音,以及延迟自动网页跳转事件(提供网页url输入框以及延迟时间);提供模型的大小和位置调整可以为让模型在客户端展示的大小(width,height,提供调整输入框)和展示的位置(x,y是2d模型提供两个轴线调整,z轴是3d模型才会出现的输入框);脚本注入的功能,是当以上的功能在某些情况都不能满足用户的需求时,用户可以使用脚本注入供能注入自己的编写的与虚拟AR项目相关的脚本代码段。
还需要说明的是,默认模型样式可以为默认模型在客户端上展示居中,并且自适应客户端的设备的宽度。默认模型样式也可以根据实际应用进行预先配置,本申请实施例不加以限定。
在本申请实施例中,还可以根据用户上传的初始图像生成该初始图像的源图像和Pattern标记,其中,初始图像的源图像及其URL和Pattern标记及其URL的生成过程如图2所示,具体包括以下步骤:
S201:获取用户上传的初始图像,并利用canvas创建初始图像的源图像和特征信息。
在具体执行步骤S201的过程中,用户可以选择要生成Pattern标记的初始图像,并将选择的初始图像上传至客户端;客户端在检测到用户上传的初始图像时,可以获取用户上传的初始图像,并利用canvas工具创建该初始图像的源图像,以增强该初始图像的对比度和识别度,同时创建该源图像的特征信息。
可选的,获取用户上传的初始图像,并利用canvas工具创建初始图像的源图像和源图像的特征信息的过程可以为:获取用户上传的初始图像,并利用canvas工具的绘图api创建该初始图像的源图像;利用canvas工具创建相应的canvas元素,并使用drawImage将源图像绘制至canvas元素上;根据利用canvas工具上传的canvas元素上的源图像的区域信息,生成源图像的ImageData对象,其中ImageData对象包括源图像的data属性,并根据源图像的data属性,确定源图像的特征信息;其中,区域信息包括canvas元素上的源图像的坐标信息和宽高信息,源图像及其data属性至少包括源图像的每个像素的RGBA值。
在本实施例中,可以利用canvas工具的绘图api绘制该初始图像的两个图像边框,得到初始图像的源图像。
在具体应用过程中,利用canvas工具的绘图api基于初始图像的外围绘制一黑一白的两个较粗的图像边框,得到初始图像的源图像,并利用canvas工具的drawImage()方法将源图像绘制到canvas元素上;其中,初始图像的源图像能够增强该初始图像的对比度和识别度。
在一些实施例中,可以利用canvas工具的getImageData()方法上传的canvas元素上的源图像的坐标信息和宽高信息,生成源图像的ImageData对象。
可选的,根据源图像的data属性,确定源图像的特征信息的过程可以为:根据源图像的data属性中各个像素的RGBA值,计算源图像的平均亮度;统计源图像的data属性中各个像素的RGB的通道直方图,得到源图像的颜色分布特征;分析源图像的data属性中各个像素的RGBA值之间的变化分布图,并根据变化分布图确定源图像的边缘特征,利用卷积核对源图像进行滤波处理,提取源图像的图像纹理特征;根据平均亮度、颜色分布特征、边缘特征和图像纹理特征,生成源图像的特征信息;其中,像素的RGB的通道直方图包括像素的R通道直方图、G通道直方图和B通道直方图。
在本实施例中,可以遍历源图像的data属性中源图像的每个像素,并计算源图像的data属性中各个像素的RGBA值的平均值,得到源图像的平均亮度;以及通过分析源图像的data属性中的各个像素之间相邻的RGBA值的变化情况,得到相应的变化分布图。
S202:根据源图像及其特征信息生成初始图像的Pattern标记,并将初始图像的源图像和Pattern标记上传至服务器,并确定初始图像的源图像的地址和Pattern标记的地址。
在具体执行步骤S202的过程中,在得到初始图像的源图像和源图像的特征信息后,可以将源图像的特征信息中的每个特征转换为相应的字符串,并将每个特征的字符串进行串联并拼接,得到对应的fileString变量,以便根据得到的fileString变量生成一个包含源图像的特征信息的二进制文件,最后根据初始图像的源图像和二进制文件,生成初始图像的Pattern标记,将初始图像的源图像和Pattern标记上传至服务器,并确定初始图像的源图像的URL和Pattern标记的URL。
其中,Pattern标记是一种自定义的图案标记,可以根据用户上传的初始图像开始创建,包含2个部分,源图像和存有源图像特征信息的二进制文件(后缀名为.patt)。
可选的,源图像的特征信息包括平均亮度、颜色分布特征、边缘特征和图像纹理特征,根据平均亮度、颜色分布特征和边缘特征,生成源图像的特征信息的过程可以为:将平均亮度转化为平均亮度字符串,将颜色分布特征转换成颜色分布特征字符串,将边缘特征转换成边缘特征字符串,将图像纹理特征转换成图像纹理特征字符串;将平均亮度字符串、颜色分布特征字符串、边缘特征字符串和图像纹理特征字符串进行串联并拼接,得到源图像的fileString变量;将fileString变量插入预设程序,并执行得到的目标程序,得到源图像的blob对象;利用目标api对blob对象进行处理,得到包含源图像的特征信息的二进制文件;根据源图像和二进制文件,生成初始图像的Pattern标记。
在本实施例中,预设程序可以为:new Blob(,{type:‘text/plain’});进而可以将fileString变量插入预设程序,得到目标程序为new Blob(fileString变量,{type:‘text/plain’}),并执行得到目标程序,便可得到源图像的blob对象;在通过浏览器下载目标api配合URL.createObjectURL(blob对象),便可以得到包含源图像的特征信息的二进制文件。其中,目标api为浏览器中自带的一个api。
在本申请实施例中,在生成初始图像的源图像的URL和Pattern标记的URL后,可以从预先设置的各个AR模型中确定与初始图像对应的目标AR模型,并将目标AR模型的URL、初始图像的源图像的URL和Pattern标记的URL生成相应的活动信息,同时生成该活动信息匹配的活动ID。
在具体执行步骤101的过程中,在检测到用户基于客户端的相机录制虚拟AR的虚拟AR视频时,可以将用户当前录制的虚拟AR视频渲染值客户端当前展示的活动页面中,同时从活动页面中确定相应的活动ID,以便根据活动ID查询与该活动ID匹配的活动信息。其中,活动信息包括目标AR模型的URL、初始图像的源图像的URL和Pattern标记的URL。
需要说明的是,客户端当前展示的活动页面可以为H5活动页面,本申请实施例在此不加以限定。
作为本申请实施例的一种实现方式,可以通过初始化ArToolkit工具包,以便客户端中的相机可以利用初始化的ArToolkit工具包中的ArToolkitSource录制虚拟AR的虚拟AR视频。
S102:根据初始图像的源图像的URL获取初始图像的源图像,以及根据初始图像的Pattern标记的URL获取初始图像和Pattern标记。
在具体执行步骤S102的过程中,在获取到相应的活动信息后,可以利用初始化的ArToolkit工具包中的ArMarkerControls根据活动信息中的初始图像的源图像的URL从服务器中获取初始图像的源图像,以及根据初始图像的Pattern标记的URL从服务器中获取初始图像的Pattern标记。
S103:对活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记。
在具体执行步骤S103的过程中,在将虚拟AR视频渲染值H5活动页面后,针对H5活动页面中的虚拟AR视频中的每帧图像而言,可以对图像进行分析处理,得到该图像的目标源图像和目标Pattern标记。
可选的,对图像进行分析处理,得到该图像的目标源图像和目标Pattern标记的过程可以为:针对每帧图像,利用canvas工具创建图像的目标源图像和目标源图像的特征信息;根据目标源图像及其特征信息生成图像的Pattern标记。
在具体应用过程中,利用canvas工具创建图像的目标源图像和目标源图像的特征信息的过程可以为:利用canvas工具的绘图api创建该图像的目标源图像;利用canvas工具创建相应的canvas元素,并使用drawImage将目标源图像绘制至canvas元素上;根据利用canvas工具上传的canvas元素上的目标源图像的区域信息,生成目标源图像的目标ImageData对象,其中目标ImageData对象包括目标源图像的data属性,并根据目标源图像的data属性,确定目标源图像的特征信息;其中,目标源图像的区域信息包括canvas元素上的目标源图像的坐标信息和宽高信息,目标源图像及其data属性至少包括目标源图像的每个像素的RGBA值。
在本实施例中,可以利用canvas工具的绘图api绘制该图像的两个图像边框,得到图像的目标源图像。
在具体应用过程中,利用canvas工具的绘图api基于图像的外围绘制一黑一白的两个较粗的图像边框,得到图像的目标源图像,并利用canvas工具的drawImage()方法将图像的目标源图像绘制到canvas元素上;其中,图像的目标源图像能够增强该图像的对比度和识别度。
在一些实施例中,可以利用canvas工具的getImageData()方法上传的canvas元素上的目标源图像的坐标信息和宽高信息,生成目标源图像的ImageData对象。
可选的,根据目标源图像的data属性,确定目标源图像的特征信息的过程可以为:根据目标源图像的data属性中各个像素的RGBA值,计算目标源图像的目标平均亮度;统计目标源图像的data属性中各个像素的RGB的通道直方图,得到目标源图像的目标颜色分布特征;分析目标源图像的data属性中各个像素的RGBA值之间的目标变化分布图,并根据目标变化分布图确定目标源图像的目标边缘特征,利用卷积核对目标源图像进行滤波处理,提取目标源图像的目标图像纹理特征;根据目标平均亮度、目标颜色分布特征、目标边缘特征和目标图像纹理特征,生成目标源图像的特征信息;其中,目标源图像中的像素的RGB的通道直方图包括像素的R通道直方图、G通道直方图和B通道直方图。
在本实施例中,可以遍历目标源图像的data属性中目标源图像的每个像素,并计算目标源图像的data属性中各个像素的RGBA值的平均值,得到目标源图像的目标平均亮度;以及通过分析目标源图像的data属性中的各个像素之间相邻的RGBA值的变化情况,得到相应的目标变化分布图。
在本申请实施例,在得到目标源图像和目标源图像的特征信息后,可以将目标源图像的特征信息中的每个特征转换为相应的字符串,并将目标源图像的特征信息中的每个特征的字符串进行串联并拼接,得到对应的目标fileString变量,以便根据得到的目标fileString变量生成一个包含目标源图像的特征信息的目标二进制文件,最后根据目标源图像和目标二进制文件,生成图像的目标Pattern标记。
在具体应用过程中,可以将目标平均亮度转化为目标平均亮度字符串,将目标颜色分布特征转换成目标颜色分布特征字符串,将目标边缘特征转换成目标边缘特征字符串,将目标图像纹理特征转换成目标图像纹理特征字符串;将目标平均亮度字符串、目标颜色分布特征字符串、目标边缘特征字符串和目标图像纹理特征字符串进行串联并拼接,得到目标源图像的目标fileString变量;将目标fileString变量插入预设程序,并执行插入目标fileString变量的预设程序,得到目标源图像的目标blob对象;利用目标api对目标blob对象进行处理,得到包含目标源图像的特征信息的目标二进制文件;根据目标源图像和目标二进制文件,生成图像的目标Pattern标记。
在本实施例中,预设程序可以为:new Blob(_,{type:‘text/plain’});进而可以将目标fileString变量插入预设程序,得到的程序为new Blob(目标fileString变量,{type:‘text/plain’}),并执行得到的程序,便可得到目标源图像的目标blob对象;在通过浏览器下载目标api配合URL.createObjectURL(目标blob对象),便可以得到包含目标源图像的特征信息的目标二进制文件。
S104:判断各帧图像中是否存在目标图像;若存在目标图像,执行步骤S105。
其中,目标图像为各帧图像中目标源图像和目标Pattern标记与初始图像的源图像和Pattern标记的相似度大于预设相似度的图像。
在本申请实施例中,针对每帧图像而言,可以计算该图像的目标源图像和目标Pattern标记与初始图像的源图像和Pattern标记的相似度;并判断该相似度是否大于预设相似度;若该相似度大于预设相似度,则可以将该图像确定为初始目标图像;若各帧图像中存在多个相似度大于预设相似度的初始目标图像,则可以从各个初始目标图像中选取相似度最大的初始目标图像作为目标图像。其中,预设相似度可以为80%,在此本申请实施例不加以限定。
作为本申请实施例的一种实现方式,计算该图像的目标源图像和目标Pattern标记与初始图像的源图像和Pattern标记的相似度的过程可以为:计算图像的目标源图像与初始图像的源图像的第一相似度;计算图像的目标Pattern标记中的特征信息与初始图像的Pattern标记中的特征信息的第二相似度;最后,计算第一相似度和第二相似度的平均值,得到图像与初始图像的相似度。
在具体应用过程中,计算图像的目标Pattern标记中的特征信息与初始图像的Pattern标记中的特征信息的第二相似度的过程可以为:将目标Pattern标记中的二进制文件与Pattern标记中的二进制文件进行比对,实现将目标Pattern标记中的特征信息与初始图像的Pattern标记中的特征信息进行比对的目的,进而可以确定出第二相似度。
需要说明的是,如果各帧图像中不存在目标图像,则可以提示用户重新进行虚拟AR视频的录制,并返回执行步骤S101。
S105:标记目标图像在活动页面中的位置和方向。
在具体执行步骤S105的过程中,从各帧图像中存在目标图像的情况下,可以通过预先设置的发现标记程序确定目标图像在H5活动页面中的位置和方向,并将所确定的位置和方向进行标记。
在具体的应用过程中,可以利用初始化后的ArToolkit工具包中的ArToolkitSource调用预先设置的发现标记程序确定目标图像在H5活动页面中的位置和方向,并将所确定的位置和方向进行标记。
S106:根据位置和方向调整录制虚拟AR视频的相机的位置和方向,并根据调整位置和方向后相机的相机矩阵信息,确定相应的相机参数。
在具体执行步骤S106的过程中,在标记目标图像在H5活动页的位置和方向后,可以进一步根据位置和方向调整录制虚拟AR视频的相机的位置和方向,以使相机对准与初始图像匹配的图像;并获取调整位置和方向后相机的相机矩阵信息,并根据相机矩阵信息获取相应的相机参数,以便后续基于相机参数对录制虚拟AR视频的相机的参数进行调整,以适配显示的目标AR模型。
可选的,根据录制虚拟AR视频的相机矩阵信息,确定相应的相机参数的过程可以为:使用THREE.ARUtils.getARDisplay()获取ARDisplay对象;调用ARDisplay对象的getCamera()方法获取录制虚拟AR视频的相机的相机矩阵信息;其中,相机矩阵信息包括投影矩阵和视图矩阵;根据投影矩阵和视图矩阵计算目标图像到相机的模型视图矩阵,并对模型视图矩阵进行分析,得到相应的相机参数;其中,ARDisplay对象的内部管理着和虚拟AR相关的相机对应的视图矩阵和投影矩阵;相机参数包括坐标数据、旋转数据和缩放数据。
其中,ModelViewMatrix在计算机图形学中通常指模型视图矩阵(ModelViewMatrix)。它是将模型空间中的坐标转换到视图空间中的矩阵。模型视图矩阵由模型矩阵(Model Matrix)和视图矩阵(View Matrix)组合而成。模型矩阵(Model Matrix)负责将模型从模型空间转换到世界空间,包含了的位置、缩放、旋转信息。视图矩阵(View Matrix)将世界空间转换到视图空间,表示观察点、观察方向等视图信息。将模型矩阵与视图矩阵相乘,得到模型视图矩阵;根据模型视图矩阵可以将模型从自身的局部坐标系统转换到相机的坐标系统中为后续的投影变换准备数据。其中,投影变换转数据就是相机参数,也就是投影变换准备数据包括坐标数据、旋转数据和缩放数据。
S107:根据目标AR模型的URL获取目标AR模型,并根据相机参数、位置和方向在活动页面中显示目标AR模型,以便在活动页面中显示的目标AR模型基于用户的动作与用户进行互动。
在具体执行步骤S107的过程中,在确定出相应的相机参数和标记目标图像在H5活动页面中的位置和方向后,可以根据目标AR模型的URL从服务器上预先设置的各个AR模型中加载对应的目标AR模型,根据相机参数调整录制虚拟AR视频的相机的参数,并根据标记的位置和方向在调整参数后的相机中显示目标AR模型,以将目标AR模型渲染在H5活动页面中,以便用户可以与显示目标AR模型进行互动。
在本实施例中,如果目标AR模型为3D模型,则可以使用threejs提供的GLTFLoader将目标AR模型的URL作为第一个参数,可选地传递回调函数从服务器上预先设置的各个AR模型中加载对应的目标AR模型。
如果目标AR模型为2D模型,可以使用html<img>标签进行渲染,也就是说,将<img>标签的src属性设置为对应的目标AR模型的URL,以便浏览器根据目标AR模型的URL从服务器上预先设置的各个AR模型中加载对应的目标AR模型,并将加载的目标AR模型渲染在调整参数后的相机中。
在具体应用过程中,在将目标AR模型进行渲染后,可以初始化渲染在H5活动页面中的目标AR模型的位置、大小和模型样式;其中,模型样式可以为默认模型样式,也可以为自定义事件跟样式,自定义事件跟样式为用户根据需求设置的模型样式。
在本申请实施例中,在将目标AR模型渲染在H5活动页面后,可以继续检测用户的语音或动作,以便将检测到的用户的语音或动作发送给目标AR模型,使目标AR模型可以触发与用户的语音或动作对应的交互方式来根用户进行互动。
本发明提供一种虚拟AR的互动方法,将用户当前录制的虚拟AR视频渲染至客户端当前的活动页面中,并获取与活动页面中的活动ID匹配的活动信息;其中,活动信息包括目标AR模型的URL、初始图像的源图像的URL和Pattern标记的URL;根据初始图像的源图像的URL获取初始图像的源图像,以及根据初始图像的Pattern标记的URL获取初始图像和Pattern标记;对活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记;若各帧图像中存在目标图像,标记目标图像在活动页面中的位置和方向;其中,目标图像为各帧图像中目标源图像和目标Pattern标记与源图像和Pattern标记的相似度大于预设相似度的图像;根据位置和方向调整录制虚拟AR视频的相机的位置和方向,并根据调整位置和方向后相机的相机矩阵信息,确定相应的相机参数;根据目标AR模型的URL获取目标AR模型,并根据相机参数、位置和方向在活动页面中显示目标AR模型,以便人们可以向在活动页面中显示的目标AR模型做出相应的动作或进行相应语音对话,在活动页面中显示的虚拟AR模型可以通过触发用户的语音或动作对应的交互方式,从而实现与用户进行互动。
基于本发明实施例公开的虚拟AR的互动方法,本发明实施例还对应公开一种虚拟AR的互动系统,应用客户端,如图3所示,该虚拟AR的互动系统包括:
渲染单元31,用于将用户当前录制的虚拟AR视频渲染至客户端当前的活动页面中,并获取与活动页面中的活动ID匹配的活动信息;其中,活动信息包括目标AR模型的URL、初始图像的源图像的URL和初始图像的Pattern标记的URL;
第一获取单元32,用于根据初始图像的源图像的URL获取初始图像的源图像,以及根据初始图像的Pattern标记的URL获取初始图像和Pattern标记;
分析处理单元33,用于对活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记;
标记单元34,用于若各帧图像中存在目标图像,标记目标图像在活动页面中的位置和方向;其中,目标图像为各帧图像中目标源图像和目标Pattern标记与源图像和Pattern标记的相似度大于预设相似度的图像;
调整单元35,用于根据位置和方向调整录制虚拟AR视频的相机的位置和方向,并根据调整位置和方向后相机的相机矩阵信息,确定相应的相机参数;
显示与互动单元36,用于根据目标AR模型的URL获取目标AR模型,并根据相机参数、位置和方向在活动页面中显示目标AR模型,以便在活动页面中显示的目标AR模型基于用户的语音或动作与用户进行互动。
上述本发明实施例公开的虚拟AR的互动系统中各个单元具体的原理和执行过程,与上述本发明实施例公开的虚拟AR的互动方法相同,可参见上述本发明实施例公开的虚拟AR的互动方法中相应的部分,这里不再进行赘述。
本发明提供一种虚拟AR的互动系统,将用户当前录制的虚拟AR视频渲染至客户端当前的活动页面中,并获取与活动页面中的活动ID匹配的活动信息;其中,活动信息包括目标AR模型的URL、初始图像的源图像的URL和Pattern标记的URL;根据初始图像的源图像的URL获取初始图像的源图像,以及根据初始图像的Pattern标记的URL获取初始图像和Pattern标记;对活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记;若各帧图像中存在目标图像,标记目标图像在活动页面中的位置和方向;其中,目标图像为各帧图像中目标源图像和目标Pattern标记与源图像和Pattern标记的相似度大于预设相似度的图像;根据位置和方向调整录制虚拟AR视频的相机的位置和方向,并根据调整位置和方向后相机的相机矩阵信息,确定相应的相机参数;根据目标AR模型的URL获取目标AR模型,并根据相机参数、位置和方向在活动页面中显示目标AR模型,以便人们可以向在活动页面中显示的目标AR模型做出相应的动作或进行相应语音对话,在活动页面中显示的虚拟AR模型可以通过触发用户的语音或动作对应的交互方式,从而实现与用户进行互动。
可选的,初始图像的源图像及其URL和Pattern标记及其URL的生成过程,包括:
第一创建单元,用于获取用户上传的初始图像,并利用canvas工具创建初始图像的源图像和源图像的特征信息;
第一生成单元,用于根据源图像及其特征信息生成初始图像的Pattern标记;
上传单元,用于将初始图像的源图像和Pattern标记上传至服务器,并确定初始图像的源图像的URL和Pattern标记的URL。
可选的,第一创建单元,包括:
第一创建子单元,用于获取用户上传的初始图像,并利用canvas工具的绘图api创建初始图像的图像边框,得到初始图像的源图像;
第一绘制单元,用于利用canvas工具创建相应的canvas元素,并使用drawImage将源图像绘制至canvas元素上;
第二生成单元,用于根据利用canvas工具上传的canvas元素上的源图像的区域信息,生成源图像的ImageData对象,其中ImageData对象包括源图像的data属性;
第一确定单元,用于根据源图像及其data属性,确定源图像的特征信息。
可选的,第一确定单元,包括:
计算单元,用于根据源图像的data属性中各个像素的RGBA值,计算源图像的平均亮度;
统计单元,用于统计源图像的data属性中各个像素的RGB的通道直方图,得到源图像的颜色分布特征;
分析单元,用于分析源图像的data属性中各个像素的RGBA值之间的变化分布图,并根据变化分布图确定源图像的边缘特征;
提取单元,用于利用卷积核对源图像进行滤波处理,提取源图像的图像纹理特征;
第三生成单元,用于根据平均亮度、颜色分布特征、边缘特征和图像纹理特征,生成源图像的特征信息。
可选的,第三生成单元,包括:
转换单元,用于将平均亮度转化为平均亮度字符串,将颜色分布特征转换成颜色分布特征字符串,将边缘特征转换成边缘特征字符串,将图像纹理特征转换成图像纹理特征字符串;
串联拼接单元,用于将平均亮度字符串、颜色分布特征字符串、边缘特征字符串和图像纹理特征字符串进行串联并拼接,得到源图像的fileString变量;
程序执行单元,用于将fileString变量插入预设程序,并执行得到的目标程序,得到源图像的blob对象;
处理单元,用于利用目标api对blob对象进行处理,得到包含源图像的特征信息的二进制文件。
可选的,分析处理单元,包括:
第二创建单元,用于针对每帧图像,利用canvas工具创建图像的目标源图像和图像的目标源图像的特征信息;
第四生成单元,用于根据图像的目标源图像及其特征信息生成图像的目标Pattern标记。
可选的,第二创建单元,包括:
第二创建子单元,用于利用canvas工具的绘图api创建图像的图像边框,得到图像的目标源图像;
第二绘制单元,用于利用canvas工具创建相应的canvas元素,并使用drawImage将目标源图像绘制至canvas元素上;
第五生成单元,用于根据利用canvas工具上传的canvas元素上的目标源图像的区域信息,生成目标源图像的目标ImageData对象,其中,目标ImageData对象包括目标源图像的data属性;
第二确定单元,用于根据目标源图像及其data属性,确定目标源图像的特征信息。
本申请实施例提供了一种电子设备,如图4所示,电子设备包括处理器401和存储器402,存储器402用于存储虚拟AR的互动的程序代码和数据,处理器401用于调用存储器中的程序指令执行实现如上述实施例中虚拟AR的互动方法所示的步骤。
本申请实施例提供了一种存储介质,存储介质包括存储程序,其中,在程序运行时控制存储介质所在设备执行上述实施例示出的虚拟AR的互动方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种虚拟AR的互动方法,其特征在于,应用于客户端,所述方法包括:
将用户当前录制的虚拟AR视频渲染至所述客户端当前的活动页面中,并获取与所述活动页面中的活动ID匹配的活动信息;其中,所述活动信息包括目标AR模型的URL、初始图像的源图像的URL和初始图像的Pattern标记的URL;
根据所述初始图像的源图像的URL获取所述初始图像的源图像,以及根据所述初始图像的Pattern标记的URL获取所述初始图像和Pattern标记;
对所述活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记;
若各帧图像中存在目标图像,标记所述目标图像在所述活动页面中的位置和方向;其中,所述目标图像为各帧图像中目标源图像和目标Pattern标记与所述源图像和所述Pattern标记的相似度大于预设相似度的图像;
根据所述位置和方向调整录制所述虚拟AR视频的相机的位置和方向,并根据调整位置和方向后所述相机的相机矩阵信息,确定相应的相机参数;
根据所述目标AR模型的URL获取目标AR模型,并根据所述相机参数、所述位置和所述方向在所述活动页面中显示所述目标AR模型,以便在所述活动页面中显示的所述目标AR模型通过触发所述用户的语音或动作对应的交互方式,实现与所述用户进行互动。
2.根据权利要求1所述的方法,其特征在于,所述初始图像的源图像及其URL和Pattern标记及其URL的生成过程,包括:
获取所述用户上传的初始图像,并利用canvas工具创建所述初始图像的源图像和所述源图像的特征信息;
根据所述源图像及其特征信息生成所述初始图像的Pattern标记;
将所述初始图像的源图像和Pattern标记上传至服务器,并确定所述初始图像的源图像的URL和Pattern标记的URL。
3.根据权利要求2所述的方法,其特征在于,获取所述用户上传的初始图像,并利用canvas工具创建所述初始图像的源图像和所述源图像的特征信息,包括:
获取所述用户上传的初始图像,并利用canvas工具的绘图api创建所述初始图像的图像边框,得到所述初始图像的源图像;
利用所述canvas工具创建相应的canvas元素,并使用drawImage将所述源图像绘制至所述canvas元素上;
根据利用canvas工具上传的所述canvas元素上的所述源图像的区域信息,生成所述源图像的ImageData对象,其中所述ImageData对象包括所述源图像的data属性;
根据所述源图像及其data属性,确定所述源图像的特征信息。
4.根据权利要求3所述的方法,其特征在于,根据所述源图像及其data属性,确定所述源图像的特征信息,包括:
根据所述源图像的data属性中各个像素的RGBA值,计算所述源图像的平均亮度;
统计所述源图像的data属性中各个像素的RGB的通道直方图,得到所述源图像的颜色分布特征;
分析所述源图像的data属性中各个像素的RGBA值之间的变化分布图,并根据所述变化分布图确定所述源图像的边缘特征;
利用卷积核对所述源图像进行滤波处理,提取所述源图像的图像纹理特征;
根据所述平均亮度、所述颜色分布特征、所述边缘特征和所述图像纹理特征,生成所述源图像的特征信息。
5.根据权利要求4所述的方法,其特征在于,根据所述平均亮度、所述颜色分布特征、所述边缘特征和所述图像纹理特征,生成所述源图像的特征信息,包括:
将所述平均亮度转化为平均亮度字符串,将所述颜色分布特征转换成颜色分布特征字符串,将所述边缘特征转换成边缘特征字符串,将所述图像纹理特征转换成图像纹理特征字符串;
将所述平均亮度字符串、所述颜色分布特征字符串、所述边缘特征字符串和所述图像纹理特征字符串进行串联并拼接,得到源图像的fileString变量;
将所述fileString变量插入预设程序,并执行得到的目标程序,得到源图像的blob对象;
利用目标api对所述blob对象进行处理,得到包含所述源图像的特征信息的二进制文件。
6.根据权利要求1所述的方法,其特征在于,对所述活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记,包括:
针对每帧图像,利用canvas工具创建所述图像的目标源图像和所述图像的目标源图像的特征信息;
根据所述图像的目标源图像及其特征信息生成所述图像的目标Pattern标记。
7.根据权利要求6所述的方法,其特征在于,针对每帧图像,利用canvas工具创建所述图像的目标源图像和所述图像的目标源图像的特征信息,包括:
利用canvas工具的绘图api创建所述图像的图像边框,得到所述图像的目标源图像;
利用所述canvas工具创建相应的canvas元素,并使用drawImage将所述目标源图像绘制至所述canvas元素上;
根据利用canvas工具上传的所述canvas元素上的所述目标源图像的区域信息,生成所述目标源图像的目标ImageData对象,其中,所述目标ImageData对象包括所述目标源图像的data属性;
根据所述目标源图像及其data属性,确定所述目标源图像的特征信息。
8.一种虚拟AR的互动系统,其特征在于,应用于客户端,所述系统包括:
渲染单元,用于将用户当前录制的虚拟AR视频渲染至所述客户端当前的活动页面中,并获取与所述活动页面中的活动ID匹配的活动信息;其中,所述活动信息包括目标AR模型的URL、初始图像的源图像的URL和初始图像的Pattern标记的URL;
第一获取单元,用于根据所述初始图像的源图像的URL获取所述初始图像的源图像,以及根据所述初始图像的Pattern标记的URL获取所述初始图像和Pattern标记;
分析处理单元,用于对所述活动页面中渲染的虚拟AR视频中的每帧图像进行分析处理,得到每帧图像的目标源图像和目标Pattern标记;
标记单元,用于若各帧图像中存在目标图像,标记所述目标图像在所述活动页面中的位置和方向;其中,所述目标图像为各帧图像中目标源图像和目标Pattern标记与所述源图像和所述Pattern标记的相似度大于预设相似度的图像;
调整单元,用于根据所述位置和方向调整录制所述虚拟AR视频的相机的位置和方向,并根据调整位置和方向后所述相机的相机矩阵信息,确定相应的相机参数;
显示与互动单元,用于根据所述目标AR模型的URL获取目标AR模型,并根据所述相机参数、所述位置和所述方向在所述活动页面中显示所述目标AR模型,以便在所述活动页面中显示的所述目标AR模型基于所述用户的语音或动作与所述用户进行互动。
9.一种电子设备,其特征在于,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如权利要求1-7任一项所述的虚拟AR的互动方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行如权利要求1-7任一项所述的虚拟AR的互动方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410003488.7A CN117523148B (zh) | 2024-01-02 | 2024-01-02 | 虚拟ar的互动方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410003488.7A CN117523148B (zh) | 2024-01-02 | 2024-01-02 | 虚拟ar的互动方法、系统、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117523148A CN117523148A (zh) | 2024-02-06 |
CN117523148B true CN117523148B (zh) | 2024-03-08 |
Family
ID=89755235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410003488.7A Active CN117523148B (zh) | 2024-01-02 | 2024-01-02 | 虚拟ar的互动方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117523148B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108876877A (zh) * | 2017-05-16 | 2018-11-23 | 苹果公司 | 表情符号人偶化 |
CN111402399A (zh) * | 2020-03-10 | 2020-07-10 | 广州虎牙科技有限公司 | 人脸驱动和直播方法、装置、电子设备及存储介质 |
CN112099628A (zh) * | 2020-09-08 | 2020-12-18 | 平安科技(深圳)有限公司 | 基于人工智能的vr互动方法、装置、计算机设备及介质 |
CN112269889A (zh) * | 2020-09-23 | 2021-01-26 | 上海市刑事科学技术研究院 | 交互式疑难人像检索的方法、客户端及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014107681A1 (en) * | 2013-01-04 | 2014-07-10 | Awyse, Inc. | System and method for providing augmented reality on mobile devices |
WO2015066475A1 (en) * | 2013-10-31 | 2015-05-07 | The University of North Carlina at Chapel Hill | Methods, systems, and computer readable media for leveraging user gaze in user monitoring subregion selection systems |
-
2024
- 2024-01-02 CN CN202410003488.7A patent/CN117523148B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108876877A (zh) * | 2017-05-16 | 2018-11-23 | 苹果公司 | 表情符号人偶化 |
CN111402399A (zh) * | 2020-03-10 | 2020-07-10 | 广州虎牙科技有限公司 | 人脸驱动和直播方法、装置、电子设备及存储介质 |
CN112099628A (zh) * | 2020-09-08 | 2020-12-18 | 平安科技(深圳)有限公司 | 基于人工智能的vr互动方法、装置、计算机设备及介质 |
CN112269889A (zh) * | 2020-09-23 | 2021-01-26 | 上海市刑事科学技术研究院 | 交互式疑难人像检索的方法、客户端及系统 |
Non-Patent Citations (1)
Title |
---|
赵伟仲.基于虚实结合的界面信息设计研究.《中国优秀硕士学位论文全文数据库工程科技Ⅱ辑》.2018,(第4期),第C028-65页. * |
Also Published As
Publication number | Publication date |
---|---|
CN117523148A (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110650368B (zh) | 视频处理方法、装置和电子设备 | |
CN111145135B (zh) | 一种图像去扰处理方法、装置、设备及存储介质 | |
US11227428B2 (en) | Modification of a live-action video recording using volumetric scene reconstruction to replace a designated region | |
CN113256781B (zh) | 虚拟场景的渲染和装置、存储介质及电子设备 | |
CN106447756B (zh) | 用于生成用户定制的计算机生成动画的方法和系统 | |
US11228707B1 (en) | Scene capture for reconstruction of obscured views | |
CN108986232A (zh) | 一种在vr显示设备中呈现ar环境画面的方法 | |
CN113965773A (zh) | 直播展示方法和装置、存储介质及电子设备 | |
CN110267079B (zh) | 待播放视频中人脸的替换方法和装置 | |
CN115967823A (zh) | 视频封面生成方法、装置、电子设备及可读介质 | |
CN113269781A (zh) | 数据生成方法、装置及电子设备 | |
CN117523148B (zh) | 虚拟ar的互动方法、系统、电子设备及存储介质 | |
CN112291550A (zh) | 自由视点图像生成方法、装置、系统及可读存储介质 | |
CN114845065A (zh) | 视频图像处理方法、装置、电子设备及存储介质 | |
KR101910931B1 (ko) | 고유코드를 이용한 푸드 3d 증강현실 서비스 제공 방법 | |
CN114299105A (zh) | 图像处理方法、装置、计算机设备及存储介质 | |
CN109800652A (zh) | 文字翻译方法及装置 | |
JP2000306118A (ja) | 樹木のテクスチャ生成装置 | |
JP2007026088A (ja) | モデル生成装置 | |
US11228706B2 (en) | Plate reconstruction of obscured views of a main imaging device using capture device inputs of the same scene | |
US11393155B2 (en) | Method for editing computer-generated images to maintain alignment between objects specified in frame space and objects specified in scene space | |
CN117132708A (zh) | 图像生成方法、装置、电子设备及存储介质 | |
CN112561994A (zh) | 一种基于虚拟现实技术的场景融合定位系统及方法 |
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 |