CN116074485A - 一种基于增强现实的通话方法及终端 - Google Patents
一种基于增强现实的通话方法及终端 Download PDFInfo
- Publication number
- CN116074485A CN116074485A CN202111293154.0A CN202111293154A CN116074485A CN 116074485 A CN116074485 A CN 116074485A CN 202111293154 A CN202111293154 A CN 202111293154A CN 116074485 A CN116074485 A CN 116074485A
- Authority
- CN
- China
- Prior art keywords
- information
- coordinate information
- terminal
- dimensional coordinate
- augmented reality
- 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.)
- Pending
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/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/122—Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/004—Annotating, labelling
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供一种基于增强现实的通话方法及终端,涉及通信技术领域,其中,所述方法包括:接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得;将所述标注信息转换为三维坐标信息;获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点;基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。本发明实施例能够降低对用户端侧的算力要求。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种基于增强现实的通话方法及终端。
背景技术
在工业巡检、产品运维或培训指导等场景中,用户遇到无法解决的问题或故障,而专家又无法亲临现场指导,可通过视频通话请求专家协助,专家可通过在实时视频画面进行增强现实(Augmented Reality,AR)标注,远程指导用户排除故障。目前,可采用基于同时定位与地图构建(simultaneous localization and mapping,SLAM)的空间标注方法实现AR标注。通过SLAM技术对空间场景三维建模,将专家标注的二维屏幕标注放置到其对应的三维虚拟空间中,通过借助AR眼镜将整个三维虚拟空间中的内容渲染,并将成像效果与真实场景叠加,实现标注信息与空间场景的融合。然而,基于SLAM的空间标注方法,要求对用户侧场景实时三维建模,空间建模计算量大,对用户端侧的算力要求较高。
发明内容
本发明实施例提供一种基于增强现实的通话方法及终端,以解决现有基于SLAM的空间标注方法,要求对用户侧场景实时三维建模,空间建模计算量大,对用户端侧的算力要求较高的问题。
为解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种基于增强现实的通话方法,应用于第一终端,所述方法包括:
接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得;
将所述标注信息转换为三维坐标信息;
获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点;
基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。
可选的,所述基于所述三维坐标信息及所述目标特征点生成增强现实画面,包括:
基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息;
基于所述第一坐标信息及所述视频画面对应的稀疏点云数据生成目标视频数据;
对所述目标视频数据进行渲染生成增强现实画面。
可选的,所述基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息,包括:
以所述目标特征点为参考点,基于模型矩阵对所述三维坐标信息进行坐标转换处理,得到所述标注信息的第一坐标信息。
可选的,所述将所述标注信息转换为三维坐标信息,包括:
基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息;
基于观察矩阵的逆矩阵对所述观察空间坐标信息进行坐标转换处理,得到三维坐标信息。
可选的,所述基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息,包括:
基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息;
采用所述投影矩阵的逆矩阵对所述剪裁空间坐标信息进行坐标转换处理,得到观察空间坐标信息。
可选的,所述基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息,包括:
以所述第一终端的屏幕中心点为参考点对所述标注信息进行坐标换算处理,得到换算坐标信息;
采用预设剪裁空间对所述换算坐标信息进行坐标转换处理,得到剪裁空间坐标信息。
可选的,所述三维坐标信息包括目标三维坐标,所述基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点,包括:
将所述稀疏点云数据中距离所述目标三维坐标对应的位置最近的特征点确定为目标特征点;
其中,所述目标特征点与所述目标三维坐标对应的位置之间的距离小于预设距离。
可选的,所述基于所述三维坐标信息及所述目标特征点生成增强现实画面之后,所述方法还包括:
基于所述增强现实画面获取点阵图信息;
向所述第二终端发送所述点阵图信息,以使所述第二终端显示所述点阵图信息对应的视频画面。
第二方面,本发明实施例提供了一种终端,所述终端为第一终端,所述终端包括:
接收模块,用于接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得;
转换模块,用于将所述标注信息转换为三维坐标信息;
确定模块,用于获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点;
生成模块,用于基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。
可选的,所述生成模块包括:
确定单元,用于基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息;
第一生成单元,用于基于所述第一坐标信息及所述视频画面对应的稀疏点云数据生成目标视频数据;
第二生成单元,用于对所述目标视频数据进行渲染生成增强现实画面。
可选的,所述确定单元具体用于:
以所述目标特征点为参考点,基于模型矩阵对所述三维坐标信息进行坐标转换处理,得到所述标注信息的第一坐标信息。
可选的,所述转换模块包括:
第一转换单元,用于基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息;
第二转换单元,用于基于观察矩阵的逆矩阵对所述观察空间坐标信息进行坐标转换处理,得到三维坐标信息。
可选的,所述第一转换单元包括:
第一转换子单元,用于基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息;
第二转换子单元,用于采用所述投影矩阵的逆矩阵对所述剪裁空间坐标信息进行坐标转换处理,得到观察空间坐标信息。
可选的,所述第一转换子单元具体用于:
以所述第一终端的屏幕中心点为参考点对所述标注信息进行坐标换算处理,得到换算坐标信息;
采用预设剪裁空间对所述换算坐标信息进行坐标转换处理,得到剪裁空间坐标信息。
可选的,所述三维坐标信息包括目标三维坐标,所述确定模块具体用于:
获取所述视频画面对应的稀疏点云数据,
将所述稀疏点云数据中距离所述目标三维坐标对应的位置最近的特征点确定为目标特征点;
其中,所述目标特征点与所述目标三维坐标对应的位置之间的距离小于预设距离。
可选的,所述生成模块具体还用于:
基于所述增强现实画面获取点阵图信息;
向所述第二终端发送所述点阵图信息,以使所述第二终端显示所述点阵图信息对应的视频画面。
第三方面,本发明实施例提供一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现第一方面所述的基于增强现实的通话方法的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的基于增强现实的通话方法的步骤。
本发明实施例中,接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得;将所述标注信息转换为三维坐标信息;获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点;基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。这样,不需要对用户侧场景实时三维建模,降低了对用户端侧的算力要求。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种基于增强现实的通话方法的流程图;
图2是本发明实施例提供的一种坐标转换过程的示意图;
图3是本发明实施例提供的一种终端的结构示意图之一;
图4是本发明实施例提供的一种终端的结构示意图之二;
图5是本发明实施例提供的一种终端的结构示意图之三;
图6是本发明实施例提供的一种终端的结构示意图之四;
图7是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中,提出了一种基于增强现实的通话方法及终端,以解决现有基于SLAM的空间标注方法,要求对用户侧场景实时三维建模,空间建模计算量大,对用户端侧的算力要求较高的问题。
参见图1,图1是本发明实施例提供的一种基于增强现实的通话方法的流程图,用于第一终端,如图1所示,所述方法包括以下步骤:
步骤101、接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得。
其中,可以在第一终端和第二终端的通话过程中,第一终端接收第二终端发送的标注信息。该通话可以是第一终端发起,或者可以是第二终端发起,本实施例对此不进行限定。第一终端接收第二终端发送的标注信息之前,可以向第二终端发送第一终端的摄像头拍摄的视频画面对应的视频数据。第二终端接收到第一终端发送的所述视频画面对应的视频数据,显示所述视频画面,并接收用户针对所述第二终端显示的视频画面添加的标注信息,该用户可以为专家用户。标注信息可以由用户在第二终端的屏幕上的触点确定,标注信息可以表现为箭头、圆圈、方框或者勾选符号等等。示例地,第二终端的屏幕上显示有视频画面,视频画面中显示有水杯,用户手指在第二终端的屏幕上滑动,滑动轨迹为环绕水杯的圆圈,则该圆圈可以作为标注信息。
另外,可以在第二终端侧视图容器设置触摸侦测器,收集用户的触点信息作为标注信息,存储至动态数组。触点信息可以用于表征用户针对第二终端显示的视频画面的触点。标注信息可以具体表现为触点的位置坐标。每个触点的位置坐标(x1,y1)可以设为相对于第二终端的屏幕中心点的坐标值,可以采用touchEvent.getRaw获取触摸侦测器侦测到的触点,将触摸侦测器侦测到的触点进行坐标转换的公式如下:
x1=touchEvent.getRawX()-((float)Screen_Width/2)
y1=touchEvent.getRawY()-((float)Screen_Height/2)
其中,Screen_Width为第二终端的屏幕宽度,Screen_Height为第二终端的屏幕高度。touchEvent.getRawX()及touchEvent.getRawY()为采用touchEvent.getRaw获得的X及Y坐标值。
另外,第二终端在获取到标注信息后,可以将标注信息发送至第一终端。以标注信息包括触点坐标为例,第二终端可以通过音视频应用接口WebRTC的数据流(DataStream)通道将触点坐标数组传输至第一终端侧。触点坐标数组的大小配合数据流的传输限制,例如:某数据流传输上限6KB/s,则触点坐标数组最大可包含10个触点坐标。第一终端侧接收到触点坐标数组后,可以通过字节缓存(ByteBuffer)解析数据流,分解出传输数组中每对触点坐标(x1,y1)。
另外,第一终端的摄像头,即第一终端的相机。
步骤102、将所述标注信息转换为三维坐标信息。
其中,可以利用图形观察矩阵和投影矩阵的逆变换实现将二维屏幕坐标系下的标注信息转换为三维世界坐标系下的三维坐标信息。可以基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息;基于观察矩阵的逆矩阵对所述观察空间坐标信息进行坐标转换处理,得到三维坐标信息。
步骤103、获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点。
其中,稀疏点云数据可以由多个特征点构成。三维坐标信息可以包括目标三维坐标,可以将所述稀疏点云数据中距离目标三维坐标对应的位置最近的特征点确定为目标特征点,目标三维坐标可以是标注信息中的起始触点对应的三维坐标;或者,可以是标注信息中的所有触点的中心点对应的三维坐标,或者,可以是标注信息中的结束触点对应的三维坐标;等等,本实施例对此不进行限定。
另外,可以通过第一终端的相机对第一终端的周围环境提取特征点,生成稀疏点云数据。示例地,第一终端可以集成第三方AR软件开发工具包(software developmentkit,SDK),如ARCore、ARKi或SenseAR等,借助其点云(Point Cloud)功能对周围环境提取特征点。
需要说明的是,特征点可以是ARCore通过VIO(视觉惯性里程计)检测捕获的摄像头图像中的视觉差异点,这些视觉差异点是从图像中明暗、颜色、灰度差异比较大的点中挑选出来的,如轮廓点,暗区域中的亮点,亮区域中的暗点等。ARCore可以实时跟踪和更新这些特征点。每个特征点都有在世界坐标系下,Vector3类型的位置坐标(x,y,z),以及唯一id标识符,使特征点可以在帧与帧之间被识别和追踪。
步骤104、基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。
其中,可以将所述三维坐标信息及所述目标特征点进行绑定,建立三维坐标信息及目标特征点的绑定关系,基于三维坐标信息及目标特征点的绑定关系及所述视频画面对应的稀疏点云数据生成目标视频数据,对所述目标视频数据进行渲染生成增强现实画面。示例地,可以基于三维坐标信息及目标特征点的绑定关系,在稀疏点云数据对应的真实场景画面中绘制三维坐标信息对应的虚拟标注图形,从而可以生成包括真实场景画面和虚拟标注图形的增强显示画面。
作为一种具体的实施方式,第一终端可以为用户侧设备,第二终端可以为专家侧设备,第一终端和第二终端之间可以通过服务器进行通信连接。该服务器可以为音视频通话及信令服务器,示例地,该音视频通话及信令服务器可以由第三方视频通话平台提供,用于传输视频、音频流及需传送的其他信息。示例地,第一终端可以为支持ARCore和/或ARKit的手机设备,支持语音和视频通话。第二终端可以支持语音和视频通话。示例地,可以由用户侧设备发起呼叫并创建房间,通过第三方视频通话平台向专家侧设备发送视频流和语音,接收专家侧设备发送的包括触点坐标数组及颜色值的数据流,解析触点坐标数组并模拟复现生成增强现实画面;专家侧设备接收呼加并入房间,捕捉触点动作,即触点开始至触点结束,生成触点坐标数组,向用户侧设备发送包括触点坐标数组及颜色值的数据流。
一种实施方式中,在第一终端和第二终端的通话过程中,第一终端中的应用接口ARSession可以生成音频数据,缓存音频数据,并将缓存的音频数据通过音视频通信平台发送至第二终端;第一终端中的ARSession还可以生成AR帧数据,并设置时间戳并捕捉图像,通过音视频通信平台发送至第二终端。
需要说明的是,本发明实施例能够实现在音视频通话基础上叠加AR业务层,实现远端专家在终端用户场景中实时添加AR标注,例如3D箭头及圈图等。通过对周围环境提取特征点,生成稀疏点云,并将添加的标注与临近的环境特征点绑定,能够实现AR标注在真实场景中的位置固定,并且能够通过三维图形库的渲染方法实现AR标注在视频通话中的渲染显示。
作为一种具体的实施例,终端用户可以通过第一终端根据识别码对远程专家的第二终端发起呼叫;远程专家接听,音视频通话建立,第一终端的摄像头拍摄的视频画面分享至专家侧;专家根据指导需要,在第二终端显示的视频画面中添加标注;专家在第二终端上添加的标注以虚拟标注图形的形式叠加在第一终端侧的真实场景画面中。专家可一键删除场景中已有的标注。终端用户和专家任意一方挂断,通话结束。
本发明实施例中,接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得;将所述标注信息转换为三维坐标信息;获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点;基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。这样,不需要对用户侧场景实时三维建模,降低了对用户端侧的算力要求。
可选的,所述基于所述三维坐标信息及所述目标特征点生成增强现实画面,包括:
基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息;
基于所述第一坐标信息及所述视频画面对应的稀疏点云数据生成目标视频数据;
对所述目标视频数据进行渲染生成增强现实画面。
其中,可以以所述目标特征点为参考点,基于模型矩阵对所述三维坐标信息进行坐标转换处理,得到所述标注信息的第一坐标信息,从而实现在稀疏点云数据对应的真实场景画面中绘制三维坐标信息对应的虚拟标注图形。
另外,可以在第一终端创建本地视频渲染器,如GLSurfaceView.Renderer,从AR相机中获取带有虚拟标注图形的目标视频数据,利用本地视频渲染器完成用户视图上的渲染显示,生成增强现实画面。
该实施方式中,基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息;基于所述第一坐标信息及所述视频画面对应的稀疏点云数据生成目标视频数据;对所述目标视频数据进行渲染生成增强现实画面。这样,能够将三维坐标信息对应的虚拟标注图形添加在真实场景中。
可选的,所述基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息,包括:
以所述目标特征点为参考点,基于模型矩阵对所述三维坐标信息进行坐标转换处理,得到所述标注信息的第一坐标信息。
其中,模型矩阵用于将局部坐标系下的顶点坐标转化到世界坐标系下。在实际应用中,可以通过ARCore和/或ARKit等第三方工具提供的接口获得模型矩阵。
需要说明的是,通过乘以模型矩阵可以实现从虚拟标注图形的局部坐标系到世界坐标系的转换,确定添加的虚拟标注图形相对于世界坐标系的位置、方向和大小,完成叠加的虚拟标注图形在真实场景中的注册。第三方AR SDK,如ARCore会根据周围环境的变换,不断更新模型矩阵以实现添加的虚拟标注图形的位置信息与真实世界保持一致。例如,立方体中8个顶点坐标分别左乘模型矩阵,就可以得到经过变换后8个顶点的坐标。
另外,以目标特征点为参考点,可以是将目标特征点作为标注信息对应的虚拟标注图形的顶点坐标,通过将顶点坐标与模型矩阵相乘的方式,可以实现添加的虚拟标注图形的本地坐标系(Local Coordinate)到世界坐标系的转换,后续通过根据周围环境变化,不断更新模型矩阵,实现虚拟标注图形的位置在真实场景中固定。示例地,可以在ARCore中调用updateModelMatrix的方法更新虚拟标注图形的模型矩阵。进行坐标转换处理得到标注信息的第一坐标信息的公式如下:
Vworld=Mmodel*VLocal
其中,VLocal为第一坐标信息中的坐标,Vworld为三维坐标信息中的三维坐标,Mmodel为模型矩阵。
该实施方式中,以所述目标特征点为参考点,基于模型矩阵对所述三维坐标信息进行坐标转换处理,得到所述标注信息的第一坐标信息,从而能够将标注信息与目标特征点进行绑定,实现了三维坐标信息对应的虚拟标注图形的绘制,将虚拟标注图形固定在真实场景中,使得虚拟标注图形不随摄像头的移动而偏移。
可选的,所述将所述标注信息转换为三维坐标信息,包括:
基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息;
基于观察矩阵的逆矩阵对所述观察空间坐标信息进行坐标转换处理,得到三维坐标信息。
其中,投影矩阵的逆矩阵可以是对投影矩阵进行矩阵逆运算,得到投影矩阵的逆矩阵。观察矩阵的逆矩阵可以是对观察矩阵进行矩阵逆运算,得到观察矩阵的逆矩阵。观察空间坐标信息可以是将标注信息中的触点坐标进行坐标转换得到的观察空间坐标系下的观察空间坐标。三维坐标信息可以是将观察空间坐标系下的观察空间坐标进行坐标转换得到的世界坐标系下的三维坐标。
需要说明的是,正向投影变换是指三维空间坐标和二维平面坐标之间的变换。比如在3D图形渲染或摄影机成像中,通过正向投影变换可以实现三维物体显示在二维平面上。本实施例通过将整个投影过程逆变换,对涉及的观察矩阵和投影矩阵取逆,可以实现二维平面的触点坐标转换到三维空间坐标系下。观察矩阵能够实现世界坐标系到观察者坐标系的变换,相对于观察者的位置,如果观察者置于原点处,面向Z轴负半轴,顶点的坐标就是其观察坐标。投影矩阵可以用于实现观察者坐标系中的顶点转化到平面上。
在实际应用中,可以通过OpenGL,或者DirectX,或者Unity等3D绘图及渲染引擎提供的接口,通过输入相关相机参数获得投影矩阵和观察矩阵。示例地,可以在Unity中调用Matrix4x4.Perspective的API生成投影矩阵。
一种实施方式中,可以基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息,从而将标注信息转换至剪裁空间坐标系下;采用所述投影矩阵的逆矩阵对所述剪裁空间坐标信息进行坐标转换处理,得到观察空间坐标信息,从而实现将标注信息由剪裁空间坐标系转换至观察空间坐标系下。示例地,可以获取第一终端的相机投影矩阵(Projection Matrix)并对其求逆,将剪裁空间坐标系下的触点坐标与该投影矩阵的逆矩阵相乘,即完成剪裁空间坐标到观察空间坐标系(View Coordinate)的反投影,进行坐标转换得到观察空间坐标信息的公式如下:
一种实施方式中,可以获取第一终端的相机观察矩阵(View Matrix)并对其求逆,将观察空间坐标系下的触点坐标与该观察矩阵的逆矩阵相乘,即完成观察空间坐标系到世界坐标系(World Coordinate)的转换,进行坐标转换得到三维坐标信息的公式如下:
需要说明的是,观察矩阵和投影矩阵的逆变换实现坐标系转换计算,可由如OpenGL,OpenGL ES等开放式图形库实现,简化了计算流程,便于在手机、平板等嵌入式设备的集成。
该实施方式中,基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息;基于观察矩阵的逆矩阵对所述观察空间坐标信息进行坐标转换处理,得到三维坐标信息,从而实现了标注信息从二维屏幕坐标系到三维世界坐标系的转换。
可选的,所述基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息,包括:
基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息;
采用所述投影矩阵的逆矩阵对所述剪裁空间坐标信息进行坐标转换处理,得到观察空间坐标信息。
其中,剪裁空间坐标信息包括标注信息中的触点坐标对应的剪裁空间坐标。以图形库OpenGL为例,可以设置预设剪裁空间为第一终端的设备屏幕大小,通过glViewPort函数对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息。从而完成触点坐标由屏幕坐标系(Screen Coordinate)到剪裁空间坐标系(Clip Coordinate)的转换,将剪裁空间坐标系内坐标进行标准化设备映射,即将剪裁空间坐标信息中每个剪裁空间坐标的取值范围限制在(-1.0,1.0),实现剪裁空间坐标的标准化。
一种实施方式中,如图2所示,在将标注信息转换为三维坐标信息的过程中,可以将屏幕坐标系下的触点坐标进行坐标转换至剪裁空间坐标系下的剪裁空间坐标,再将剪裁空间坐标系下的剪裁空间坐标进行坐标转换至观察空间坐标系下的观察空间坐标,再将观察空间坐标系下的观察空间坐标进行坐标转换至世界坐标系下的三维坐标。
该实施方式中,基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息;采用所述投影矩阵的逆矩阵对所述剪裁空间坐标信息进行坐标转换处理,得到观察空间坐标信息,从而能够在剪裁空间坐标系内实现标准化设备映射。
可选的,所述基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息,包括:
以所述第一终端的屏幕中心点为参考点对所述标注信息进行坐标换算处理,得到换算坐标信息;
采用预设剪裁空间对所述换算坐标信息进行坐标转换处理,得到剪裁空间坐标信息。
其中,以标注信息包括触点坐标(x1,y1)为例,以所述第一终端的屏幕中心点为参考点对所述标注信息进行坐标换算处理得到换算坐标信息(Converted_X,Converted_Y)的公式可以如下:
Converted_X=x1+((float)Client_Screen_Width/2)
Converted_Y=y1+((float)Client_Screen_Height/2)
其中,Client_Screen_Width为第一终端的屏幕的宽度;
Client_Screen_Height为第一终端的屏幕的高度。
另外,在采用预设剪裁空间对所述换算坐标信息进行坐标转换处理时,可以设置预设剪裁空间为第一终端的设备屏幕大小,通过glViewPort函数对所述换算坐标信息中的换算坐标进行坐标转换处理,得到剪裁空间坐标信息。
该实施方式中,以所述第一终端的屏幕中心点为参考点对所述标注信息进行坐标换算处理,得到换算坐标信息;采用预设剪裁空间对所述换算坐标信息进行坐标转换处理,得到剪裁空间坐标信息。这样,能够将第二终端侧的标注信息换算成第一终端侧的换算坐标信息,避免由于第一终端和第二终端的屏幕大小不一致导致的标注位置错误。
可选的,所述三维坐标信息包括目标三维坐标,所述基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点,包括:
将所述稀疏点云数据中距离所述目标三维坐标对应的位置最近的特征点确定为目标特征点;
其中,所述目标特征点与所述目标三维坐标对应的位置之间的距离小于预设距离。
其中,三维坐标信息可以包括多个三维坐标。目标三维坐标可以是所述多个三维坐标中起始触点对应的三维坐标;或者可以是所述多个三维坐标中所有触点的中心点对应的三维坐标,或者,可以是所述多个三维坐标中结束触点对应的三维坐标;等等,本实施例对此不进行限定。预设距离可以为1cm,或者2cm,或者3cm等等,本实施例对此不进行限定。
一种实施方式中,可以判断世界坐标系下的目标三维坐标对应的位置附近是否有可绑定的目标特征点。可以以目标三维坐标为圆心,预设距离为搜索半径搜索目标三维坐标附近的特征点。若在该搜索范围内找到多个特征点,则可以将距离目标三维坐标最近的特征点确定为目标特征点;若在该搜索范围内仅找到一个特征点,则可以将该找到的特征点确定为目标特征点。若该搜索范围内没有找到特征点,则说明特征点提取不足,可以提示终端用户通过前后移动第一终端的方式获取更多特征点,重新进行搜索。在特征点较少的情况下可选取较大的搜索半径。
该实施方式中,将所述稀疏点云数据中距离所述目标三维坐标对应的位置最近的特征点确定为目标特征点,这样,能够较为准确地将虚拟标注图形绑定在真实场景中,从而在第一终端侧较为准确地显示第二终端侧用户的标注。
可选的,所述基于所述三维坐标信息及所述目标特征点生成增强现实画面之后,所述方法还包括:
基于所述增强现实画面获取点阵图信息;
向所述第二终端发送所述点阵图信息,以使所述第二终端显示所述点阵图信息对应的视频画面。
其中,第一终端可以基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息,基于所述第一坐标信息及所述视频画面对应的稀疏点云数据生成目标视频数据,对所述目标视频数据进行渲染生成增强现实画面,第一终端在完成渲染显示后,可以将该目标视频数据复制到点阵图(BitMap),获取点阵图信息,将点阵图信息通过底层音视频通话引擎发送至第二终端,以使所述第二终端显示所述点阵图信息对应的视频画面,实现两端视图的同步。
该实施方式中,基于所述增强现实画面获取点阵图信息,向所述第二终端发送所述点阵图信息,以使所述第二终端显示所述点阵图信息对应的视频画面,从而能够实现第一终端和第二终端的视图同步。
参见图3,图3是本发明实施例提供的一种终端的结构示意图,所述终端为第一终端,如图3所示,所述终端200包括:
接收模块201,用于接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得;
转换模块202,用于将所述标注信息转换为三维坐标信息;
确定模块203,用于获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点;
生成模块204,用于基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。
可选的,如图4所示,所述生成模块204包括:
确定单元2041,用于基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息;
第一生成单元2042,用于基于所述第一坐标信息及所述视频画面对应的稀疏点云数据生成目标视频数据;
第二生成单元2043,用于对所述目标视频数据进行渲染生成增强现实画面。
可选的,所述确定单元2041具体用于:
以所述目标特征点为参考点,基于模型矩阵对所述三维坐标信息进行坐标转换处理,得到所述标注信息的第一坐标信息。
可选的,如图5所示,所述转换模块202包括:
第一转换单元2021,用于基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息;
第二转换单元2022,用于基于观察矩阵的逆矩阵对所述观察空间坐标信息进行坐标转换处理,得到三维坐标信息。
可选的,如图6所示,所述第一转换单元2021包括:
第一转换子单元20211,用于基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息;
第二转换子单元20212,用于采用所述投影矩阵的逆矩阵对所述剪裁空间坐标信息进行坐标转换处理,得到观察空间坐标信息。
可选的,所述第一转换子单元20211具体用于:
以所述第一终端的屏幕中心点为参考点对所述标注信息进行坐标换算处理,得到换算坐标信息;
采用预设剪裁空间对所述换算坐标信息进行坐标转换处理,得到剪裁空间坐标信息。
可选的,所述三维坐标信息包括目标三维坐标,所述确定模块203具体用于:
获取所述视频画面对应的稀疏点云数据,
将所述稀疏点云数据中距离所述目标三维坐标对应的位置最近的特征点确定为目标特征点;
其中,所述目标特征点与所述目标三维坐标对应的位置之间的距离小于预设距离。
可选的,所述生成模块204具体还用于:
基于所述增强现实画面获取点阵图信息;
向所述第二终端发送所述点阵图信息,以使所述第二终端显示所述点阵图信息对应的视频画面。
第一终端能够实现图1的方法实施例中实现的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
参见图7,图7是本发明实施例提供的一种电子设备的结构示意图,如图7所示,电子设备300还包括:存储器302、处理器301及存储在所述存储器302上并可在所述处理器301上运行的程序,其中:
所述处理器301读取存储器302中的程序,用于执行:
接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得;
将所述标注信息转换为三维坐标信息;
获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点;
基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。
可选的,所述处理器301用于执行的所述基于所述三维坐标信息及所述目标特征点生成增强现实画面,包括:
基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息;
基于所述第一坐标信息及所述视频画面对应的稀疏点云数据生成目标视频数据;
对所述目标视频数据进行渲染生成增强现实画面。
可选的,所述处理器301用于执行的所述基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息,包括:
以所述目标特征点为参考点,基于模型矩阵对所述三维坐标信息进行坐标转换处理,得到所述标注信息的第一坐标信息。
可选的,所述处理器301用于执行的所述将所述标注信息转换为三维坐标信息,包括:
基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息;
基于观察矩阵的逆矩阵对所述观察空间坐标信息进行坐标转换处理,得到三维坐标信息。
可选的,所述处理器301用于执行的所述基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息,包括:
基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息;
采用所述投影矩阵的逆矩阵对所述剪裁空间坐标信息进行坐标转换处理,得到观察空间坐标信息。
可选的,所述处理器301用于执行的所述基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息,包括:
以所述第一终端的屏幕中心点为参考点对所述标注信息进行坐标换算处理,得到换算坐标信息;
采用预设剪裁空间对所述换算坐标信息进行坐标转换处理,得到剪裁空间坐标信息。
可选的,所述三维坐标信息包括目标三维坐标,所述处理器301用于执行的所述基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点,包括:
将所述稀疏点云数据中距离所述目标三维坐标对应的位置最近的特征点确定为目标特征点;
其中,所述目标特征点与所述目标三维坐标对应的位置之间的距离小于预设距离。
可选的,所述处理器301还用于执行:
基于所述增强现实画面获取点阵图信息;
向所述第二终端发送所述点阵图信息,以使所述第二终端显示所述点阵图信息对应的视频画面。
在图7中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器301代表的一个或多个处理器和存储器302代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。
处理器301负责管理总线架构和通常的处理,存储器302可以存储处理器301在执行操作时所使用的数据。
需要说明的是,本发明实施例的方法实施例中的任意实施方式都可以被本实施例中的上述电子设备所实现,以及达到相同的有益效果,此处不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述基于增强现实的通话方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如ROM、RAM、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (11)
1.一种基于增强现实的通话方法,应用于第一终端,其特征在于,所述方法包括:
接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得;
将所述标注信息转换为三维坐标信息;
获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点;
基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。
2.根据权利要求1所述的方法,其特征在于,所述基于所述三维坐标信息及所述目标特征点生成增强现实画面,包括:
基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息;
基于所述第一坐标信息及所述视频画面对应的稀疏点云数据生成目标视频数据;
对所述目标视频数据进行渲染生成增强现实画面。
3.根据权利要求2所述的方法,其特征在于,所述基于所述三维坐标信息及所述目标特征点确定所述标注信息的第一坐标信息,包括:
以所述目标特征点为参考点,基于模型矩阵对所述三维坐标信息进行坐标转换处理,得到所述标注信息的第一坐标信息。
4.根据权利要求1所述的方法,其特征在于,所述将所述标注信息转换为三维坐标信息,包括:
基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息;
基于观察矩阵的逆矩阵对所述观察空间坐标信息进行坐标转换处理,得到三维坐标信息。
5.根据权利要求4所述的方法,其特征在于,所述基于投影矩阵的逆矩阵对所述标注信息进行坐标转换处理,得到观察空间坐标信息,包括:
基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息;
采用所述投影矩阵的逆矩阵对所述剪裁空间坐标信息进行坐标转换处理,得到观察空间坐标信息。
6.根据权利要求5所述的方法,其特征在于,所述基于预设剪裁空间对所述标注信息进行坐标转换处理,得到剪裁空间坐标信息,包括:
以所述第一终端的屏幕中心点为参考点对所述标注信息进行坐标换算处理,得到换算坐标信息;
采用预设剪裁空间对所述换算坐标信息进行坐标转换处理,得到剪裁空间坐标信息。
7.根据权利要求1所述的方法,其特征在于,所述三维坐标信息包括目标三维坐标,所述基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点,包括:
将所述稀疏点云数据中距离所述目标三维坐标对应的位置最近的特征点确定为目标特征点;
其中,所述目标特征点与所述目标三维坐标对应的位置之间的距离小于预设距离。
8.根据权利要求1所述的方法,其特征在于,所述基于所述三维坐标信息及所述目标特征点生成增强现实画面之后,所述方法还包括:
基于所述增强现实画面获取点阵图信息;
向所述第二终端发送所述点阵图信息,以使所述第二终端显示所述点阵图信息对应的视频画面。
9.一种终端,所述终端为第一终端,其特征在于,所述终端包括:
接收模块,用于接收第二终端发送的标注信息,所述标注信息为用户针对所述第二终端显示的视频画面添加获得,所述视频画面基于所述第一终端的摄像头拍摄获得;
转换模块,用于将所述标注信息转换为三维坐标信息;
确定模块,用于获取所述视频画面对应的稀疏点云数据,基于所述三维坐标信息从所述稀疏点云数据中确定目标特征点;
生成模块,用于基于所述三维坐标信息及所述目标特征点生成增强现实画面,所述增强现实画面包括所述视频画面对应的真实场景画面,及与所述三维坐标信息对应的虚拟标注图形。
10.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现如权利要求1至8中任一项所述的基于增强现实的通话方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的基于增强现实的通话方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111293154.0A CN116074485A (zh) | 2021-11-03 | 2021-11-03 | 一种基于增强现实的通话方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111293154.0A CN116074485A (zh) | 2021-11-03 | 2021-11-03 | 一种基于增强现实的通话方法及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116074485A true CN116074485A (zh) | 2023-05-05 |
Family
ID=86173689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111293154.0A Pending CN116074485A (zh) | 2021-11-03 | 2021-11-03 | 一种基于增强现实的通话方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116074485A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117218320A (zh) * | 2023-11-08 | 2023-12-12 | 济南大学 | 基于混合现实的空间标注方法 |
-
2021
- 2021-11-03 CN CN202111293154.0A patent/CN116074485A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117218320A (zh) * | 2023-11-08 | 2023-12-12 | 济南大学 | 基于混合现实的空间标注方法 |
CN117218320B (zh) * | 2023-11-08 | 2024-02-27 | 济南大学 | 基于混合现实的空间标注方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200357136A1 (en) | Method and apparatus for determining pose of image capturing device, and storage medium | |
CN108446310B (zh) | 虚拟街景地图生成方法、装置和客户端设备 | |
CN108564527B (zh) | 基于神经网络的全景图内容补全和修复的方法及装置 | |
CN106846495B (zh) | 实现增强现实的方法与装置 | |
CN106846497B (zh) | 应用于终端的呈现三维地图的方法和装置 | |
JP2020507850A (ja) | 画像内の物体の姿の確定方法、装置、設備及び記憶媒体 | |
CN111311756B (zh) | 增强现实ar显示方法及相关装置 | |
WO2023093217A1 (zh) | 数据标注方法、装置、计算机设备、存储介质和程序 | |
CN114373047B (zh) | 一种基于数字孪生监控物理世界的方法、装置及存储介质 | |
CN109754464B (zh) | 用于生成信息的方法和装置 | |
CN115546377B (zh) | 一种视频融合方法、装置、电子设备及存储介质 | |
JPWO2021076757A5 (zh) | ||
JP6521352B2 (ja) | 情報提示システム及び端末 | |
CN114372107A (zh) | 一种基于gis的国土整治与生态修复数据可视化方法和系统 | |
CN113590878A (zh) | 在视频画面上规划路径的方法、装置、终端设备 | |
CN112734910A (zh) | 基于rgb单图实时人脸三维图像重建方法、装置及电子设备 | |
CN110060354B (zh) | 真实图像在虚拟空间中的定位和交互方法 | |
CN116074485A (zh) | 一种基于增强现实的通话方法及终端 | |
CN114169546A (zh) | 一种基于深度学习的mr远程协同装配系统及方法 | |
CN112270242A (zh) | 轨迹的显示方法、装置、可读介质和电子设备 | |
CN112862973A (zh) | 一种基于故障现场的实时远程培训方法及系统 | |
CN109816791B (zh) | 用于生成信息的方法和装置 | |
CN117011497A (zh) | 一种ar场景下基于ai通用助手的远程多方视频交互方法 | |
CN115761190A (zh) | 基于场景映射的多用户增强现实相片浏览方法及系统 | |
CN115861503A (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 |