CN110163942A - 一种图像数据处理方法和装置 - Google Patents
一种图像数据处理方法和装置 Download PDFInfo
- Publication number
- CN110163942A CN110163942A CN201810791620.XA CN201810791620A CN110163942A CN 110163942 A CN110163942 A CN 110163942A CN 201810791620 A CN201810791620 A CN 201810791620A CN 110163942 A CN110163942 A CN 110163942A
- Authority
- CN
- China
- Prior art keywords
- target
- dimensional
- coordinate
- rendering
- image data
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例公开了一种图像数据处理方法,所述方法包括:当获取到三维绘制指令时,根据三维绘制指令获取终端屏幕上的屏幕控制点;获取屏幕控制点在三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据目标三维模型中目标视点的第一视点坐标、第一坐标,确定屏幕控制点所映射的目标绘制点在目标三维模型中的三维坐标,作为第二坐标;目标绘制点是指位于嵌入在目标三维模型中的绘制平面上的点;根据第二坐标生成目标绘制点对应的绘制渲染数据,并根据第二坐标确定目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于目标绘制点对应的二维位置坐标对绘制渲染数据进行显示。采用本发明,可以提高对图像数据进行涂鸦的展示效果。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种图像数据处理方法和装置。
背景技术
涂鸦是一种以用户随手绘制图形最终形成一幅完整图像的方法,用于记录用户的创作灵感以及美好事物。目前,电子类的涂鸦产品多见于个人电脑领域,用户通过鼠标、触屏、手写板等输入设备,在二维平面上记录所想表现的图形。
现有的涂鸦技术是在终端获取到一张原始图像时,用户可以在该原始图像对应的二维平面上进行涂鸦操作,因此,终端可以根据该涂鸦操作所获取到的触摸点,直接作为绘制点,以在该终端屏幕上进行二维绘制。比如,以圈出该原始图像上的垃圾桶为例,用户可以在该原始图像上,找到垃圾桶对应的显示区域,并通过画圆的方式圈出该垃圾桶,以得到涂鸦后的图像,应当理解,该涂鸦后的图像中的涂鸦图形(即覆盖于垃圾桶上的圈)是由该终端屏幕上的触摸点所构成的二维图形,即涂鸦图形仅具备二维属性,因此,该涂鸦图形将直接覆盖在该原始图像上,即用户随意所画的涂鸦图形是难以与原始图像结合起来,进而会容易导致涂鸦后的图像的展示效果较差。
发明内容
本发明实施例提供一种图像数据处理方法和装置,可以提高对图像数据进行涂鸦的展示效果。
本发明一方面提供了一种图像数据处理方法,包括:
当获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;
获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;
根据所述第二坐标生成目标绘制点对应的绘制渲染数据,并根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。
其中,所述方法还包括:
采集终端周围的环境图像信息,并在所述环境图像信息中提取目标对象的边缘轮廓特征,并根据三维建模参数和所述边缘轮廓特征,生成所述目标对象对应的三维图像数据;
根据所述目标对象对应的三维图像数据创建所述环境图像信息对应的目标三维模型,并生成所述目标三维模型对应的三维绘制指令;
其中,所述目标三维模型中包含所述终端对应的目标视点,以及三维图像数据对应的近平面和远平面;所述近平面和所述远平面用于限定所述三维图像数据在所述目标三维模型中的显示区域;所述目标视点是指所述目标对象在所述终端中的聚焦点。
其中,所述获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,包括:
获取所述屏幕控制点在所述终端屏幕上的二维位置坐标,并获取所述三维绘制指令对应的目标三维模型的投影变换矩阵;
通过所述投影变换矩阵对所述屏幕控制点对应的二维位置坐标进行反投影变换,得到所述屏幕控制点在所述目标三维模型中的三维坐标,并将所述屏幕控制点在所述目标三维模型中的三维坐标作为第一坐标。
其中,所述获取所述三维绘制指令对应的目标三维模型的投影变换矩阵,包括:
将所述终端屏幕所显示的图像对应的三维图像数据,作为第一图像数据;
在所述目标三维模型中,获取所述目标视点的视角、所述近平面的纵横比、所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
根据所述视角,所述纵横比,所述第一距离和所述第二距离,计算所述终端屏幕对应的第一图像数据的投影变换矩阵。
其中,所述根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标,包括:
在所述目标三维模型中,获取所述目标视点的第一视点坐标,基于所述绘制指令在所述近平面和远平面之间创建所述屏幕控制点所映射的目标绘制点对应的绘制平面,并将所述绘制平面到所述目标视点之间的距离作为第三距离;
获取所述目标视点和所述屏幕控制点之间的延长线,并将所述延长线与所述绘制平面的交点,作为所述屏幕控制点所映射的目标绘制点;
计算所述第三距离和所述第一距离之间的比值,并根据所述比值、所述第一视点坐标和所述第一坐标,确定所述目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标。
其中,所述根据所述第二坐标生成目标绘制点对应的绘制渲染数据,包括:
将所述第二坐标添加至所述三维绘制指令对应的绘制队列,并根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,对所述历史绘制点和所述目标绘制点之间的渲染路径进行渲染,得到三维绘制轨迹;所述三维绘制轨迹包含所述目标绘制点在终端屏幕上的二维位置坐标所对应的绘制渲染数据;
则所述根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示,包括:
获取所述第一图像数据对应的投影变换矩阵,并将所述三维绘制轨迹和所述第一图像数据进行融合,得到第一融合图像数据,并获取所述第一融合图像数据的每个体像素点的三维坐标,作为三维像素坐标;
通过所述投影变换矩阵,确定所述三维像素坐标投影至所述终端屏幕上的二维位置坐标,并基于所述三维像素坐标对应的二维位置坐标显示投影后的第一融合图像数据;所述投影后的第一融合图像数据中包含投影后的三维绘制轨迹。
其中,所述根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,对所述历史绘制点和所述目标绘制点之间的渲染路径进行渲染,得到三维绘制轨迹,包括:
获取所述屏幕控制点对应的目标渲染格式,并获取所述绘制队列中的历史绘制点,并将所述历史绘制点在所述目标三维模型中的三维坐标,作为历史坐标;
根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,确定所述历史坐标和所述第二坐标之间的渲染路径;
按照所述目标渲染格式对所述渲染路径进行渲染,得到所述三维绘制指令对应的三维绘制轨迹。
其中,所述方法还包括:
若所述目标视点的第一视点坐标切换为第二视点坐标,则根据所述第二视点坐标更新所述目标视点的视角,所述近平面的纵横比,所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
在所述目标三维模型中,根据更新后的视角、更新后的纵横比、更新后的第一距离和更新后的第二距离,更新投影变换矩阵;
根据所述更新后的视角更新所述终端屏幕上所显示的图像的三维图像数据,并将更新后的所述终端屏幕上所显示的图像的三维图像数据作为第二图像数据;
将所述第二图像数据与所述三维绘制轨迹进行融合,得到第二融合图像数据;
通过更新后的投影变换矩阵,将所述第二融合图像数据投影至所述终端屏幕,并显示投影后的第二融合图像数据。
本发明实施例一方面提供了一种图像数据处理装置,包括:
控制点获取模块,用于当获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;
第一坐标确定模块,用于获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标;
第二坐标确定模块,用于根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;
渲染数据生成模块,用于根据所述第二坐标生成目标绘制点对应的绘制渲染数据;
渲染数据显示模块,用于根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。
其中,所述装置,还包括:
图像信息采集模块,用于采集终端周围的环境图像信息,并在所述环境图像信息中提取目标对象的边缘轮廓特征,并根据三维建模参数和所述边缘轮廓特征,生成所述目标对象对应的三维图像数据;
目标模型创建模块,用于根据所述目标对象对应的三维图像数据创建所述环境图像信息对应的目标三维模型,并生成所述目标三维模型对应的三维绘制指令;
其中,所述目标三维模型中包含所述终端对应的目标视点,以及三维图像数据对应的近平面和远平面;所述近平面和所述远平面用于限定所述三维图像数据在所述目标三维模型中的显示区域;所述目标视点是指所述目标对象在所述终端中的聚焦点。
其中,所述第一坐标确定模块包括:
二维坐标获取单元,用于获取所述屏幕控制点在所述终端屏幕上的二维位置坐标;
投影矩阵获取单元,用于获取所述三维绘制指令对应的目标三维模型的投影变换矩阵;
反投影变换单元,用于通过所述投影变换矩阵对所述屏幕控制点对应的二维位置坐标进行反投影变换,得到所述屏幕控制点在所述目标三维模型中的三维坐标,并将所述屏幕控制点在所述目标三维模型中的三维坐标作为第一坐标。
其中,所述投影矩阵获取单元包括:
第一数据确定子单元,用于将所述终端屏幕所显示的图像对应的三维图像数据,作为第一图像数据;
参量获取子单元,用于在所述目标三维模型中,获取所述目标视点的视角、所述近平面的纵横比、所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
变换矩阵确定子单元,用于根据所述视角,所述纵横比,所述第一距离和所述第二距离,计算所述终端屏幕对应的第一图像数据的投影变换矩阵。
其中,所述第二坐标确定模块包括:
绘制平面创建单元,用于在所述目标三维模型中,获取所述目标视点的第一视点坐标,基于所述绘制指令在所述近平面和远平面之间创建所述屏幕控制点所映射的目标绘制点对应的绘制平面,并将所述绘制平面到所述目标视点之间的距离作为第三距离;
绘制点确定单元,用于获取所述目标视点和所述屏幕控制点之间的延长线,并将所述延长线与所述绘制平面的交点,作为所述屏幕控制点所映射的目标绘制点;
第二坐标确定单元,用于计算所述第三距离和所述第一距离之间的比值,并根据所述比值、所述第一视点坐标和所述第一坐标,确定所述目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标。
其中,所述渲染数据生成模块包括:
坐标添加单元,用于将所述第二坐标添加至所述三维绘制指令对应的绘制队列;
绘制轨迹确定单元,用于根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,对所述历史绘制点和所述目标绘制点之间的渲染路径进行渲染,得到三维绘制轨迹;所述三维绘制轨迹包含所述目标绘制点在终端屏幕上的二维位置坐标所对应的绘制渲染数据;
则所述渲染数据显示模块,具体用于获取所述第一图像数据对应的投影变换矩阵,并将所述三维绘制轨迹和所述第一图像数据进行融合,得到第一融合图像数据,并获取所述第一融合图像数据的每个体像素点的三维坐标,作为三维像素坐标,并通过所述投影变换矩阵,确定所述三维像素坐标投影至所述终端屏幕上的二维位置坐标,并基于所述三维像素坐标对应的二维位置坐标显示投影后的第一融合图像数据;所述投影后的第一融合图像数据中包含投影后的三维绘制轨迹。
其中,所述绘制轨迹确定单元包括:
历史坐标获取子单元,用于获取所述屏幕控制点对应的目标渲染格式,并获取所述绘制队列中的历史绘制点,并将所述历史绘制点在所述目标三维模型中的三维坐标,作为历史坐标;
渲染路径确定子单元,用于根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,确定所述历史坐标和所述第二坐标之间的渲染路径;
绘制轨迹确定子单元,用于按照所述目标渲染格式对所述渲染路径进行渲染,得到所述三维绘制指令对应的三维绘制轨迹。
其中,所述渲染数据显示模块,还用于若所述目标视点的第一视点坐标切换为第二视点坐标,则根据所述第二视点坐标更新所述目标视点的视角,所述近平面的纵横比,所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
其中,所述渲染数据显示模块,还用于在所述目标三维模型中,根据更新后的视角、更新后的纵横比、更新后的第一距离和更新后的第二距离,更新投影变换矩阵;
其中,所述渲染数据显示模块,还用于根据所述更新后的视角更新所述终端屏幕上所显示的图像的三维图像数据,并将更新后的所述终端屏幕上所显示的图像的三维图像数据作为第二图像数据;
其中,所述渲染数据显示模块,还用于将所述第二图像数据与所述三维绘制轨迹进行融合,得到第二融合图像数据;
其中,所述渲染数据显示模块,还用于通过更新后的投影变换矩阵,将所述第二融合图像数据投影至所述终端屏幕,并显示投影后的第二融合图像数据。
本发明一方面提供了一种图像数据处理装置,包括:处理器和存储器;
所述处理器与存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行本发明实施例中上述一方面中的方法。
本发明一方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行本发明实施例中上述一方面中的方法。
本发明实施例在获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;根据所述第二坐标生成目标绘制点对应的绘制渲染数据,并根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。可见,本发明在获取到三维绘制指令时,可以获取二维平面上的屏幕控制点,并可进一步确定该屏幕控制点所映射的目标控制点在该目标三维模型中的位置坐标,以使用户针对终端屏幕上的操作可以间接反投影到该目标三维模型中,以产生在空间中画画的效果,然后,可以进一步将该目标三维模型中所产生的绘制渲染数据投影回该终端屏幕进行显示,以改善终端屏幕中图像数据的展示效果,进而提高对图像数据进行涂鸦的展示效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种网络架构的结构示意图;
图2是本发明实施例提供的一种分享目标图像数据的示意图;
图3是本发明实施例提供的一种变换控制点的二维位置坐标的示意图;
图4是本发明实施例提供的一种图像数据处理方法的流程示意图;
图5是本发明实施例提供的一种获取屏幕控制点的示意图;
图6是本发明实施例提供的一种投影变换的示意图;
图7是本发明实施例提供的一种空间坐标变换的示意图;
图8是本发明实施例提供的一种绘制坐标入栈的示意图;
图9是本发明实施例提供的另一种图像数据处理方法的流程示意图;
图10是本发明实施例提供的一种获取第一融合图像数据的示意图;
图11是本发明实施例提供的一种获取第二融合图像数据的示意图;
图12是本发明实施例提供的一种图像数据处理装置的结构示意图;
图13是本发明实施例提供的另一种图像数据处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本发明实施例提供的一种网络架构的结构示意图。如图1所示,所述网络架构可以包括服务器2000以及客户终端集群;所述客户终端集群可以包括多个客户终端,如图1所示,具体包括客户终端3000a、客户终端3000b、…、客户终端3000n;为便于理解,本发明实施例可以在图1所示的多个客户终端中选择一个客户终端作为目标客户终端。
如图1所示,所述服务器2000用于存储每个客户终端所上传的目标图像数据,所述目标图像数据可以包括:二维图像数据、三维图像数据以及融合图像数据;
其中,所述二维图像数据可以为图1所示的每个客户终端所采集到的其周围的环境图像信息;
其中,所述三维图像数据为所述目标客户终端对所述二维图像数据进行三维建模后所得到的具有立体展示属性的图像数据;所述立体展示属性是指所述三维图像数据具有平移特性和旋转特性,即在虚拟世界中,可以从不同视角上看到该目标三维模型中的三维图像数据。
其中,所述融合图像数据为对所述三维图像数据进行涂鸦绘制后所得到的具有立体展示属性的图像数据,即可以理解为用户在虚拟世界中所绘制的图像内容与所述三维图像数据进行融合后所得到的图像数据。
应当理解,在本发明实施例中,所述目标图像数据可以为所述融合图像数据,即该目标客户终端可以将在虚拟世界中所绘制得到的包含所述用户所绘制的图像内容的图像数据上传至所述服务器2000。
其中,客户终端3000a、客户终端3000b、…、客户终端3000n可以分别与所述服务器2000进行网络连接,以分别向所述服务器上传所述目标图像数据。
为更好的理解本方案,本发明实施例可以所述目标客户终端为客户终端3000a为例,以便于描述该客户终端3000a与所述服务器2000之间的数据交互关系,即该目标客户终端(客户终端3000a)可以将获取到的目标图像数据上传给所述服务器2000,然后,所述服务器2000可以进一步将所述目标图像数据下发给与目标客户终端具有好友关系的其它客户终端。可见,所述目标客户终端通过所述服务器2000,可以将所述目标图像数据分享至其它客户终端(比如,图1所示的客户终端3000b)。
当然,所述目标客户终端也可以通过所述服务器2000,接收与该目标客户终端具有好友关系的其它客户终端所分享的目标图像数据。
为便于理解,进一步地,请参见图2,是本发明实施例提供的一种分享目标图像数据的示意图。如图2所示,所述目标客户终端可以通过摄像头(该摄像头可以集成于所述目标客户终端,当然,该摄像头也可以独立于所述目标客户终端)获取该目标客户终端周围的环境图像信息,即该目标客户终端可以对其周围环境信息进行扫描,以将扫描到的多个角度下的二维图像数据(即该目标客户终端的终端屏幕上所显示的图像)作为环境图像信息,并将该环境图像信息中目标对象(比如,图2所示的篮球)的拐点(即外形轮廓特征)输入该目标客户终端中的三维建模模块(比如,终端系统中提供的增强现实工具模块,它具备的AR(Augmented Reality,增强现实)技术可以将现实世界套在虚拟世界并进行互动,即该三维建模模块可以实时计算摄影机影像的位置及角度,并可以加上相应图像、视频、3D模型),以得到所述环境图像信息对应的三维图像数据,并在虚拟世界中,构建包含所述三维图像数据的目标三维模型,作为目标三维模型,并生成与该目标三维模型对应的三维绘制指令。换言之,所述目标客户终端在完成对所述环境图像信息的三维建模之后,可以根据该三维绘画指令产生一个用于提示用户可以开始使用AR画笔功能的用户操作界面,以指示用户在该用户操作界面对应的按键区域(即确认使用AR画笔的按键)进行选择操作,以根据该选择操作确认使用AR画笔功能;所述三维绘制指令用于指示该目标客户终端可以在获取到选择操作时,确定使用AR画笔模块中的AR画笔功能。因此,当该目标客户终端接收到该用户在该三维绘制指令对应的用户操作界面进行的选择操作时,可以根据该选择操作,确认使用AR画笔功能,即用户可以开始对该终端屏幕所显示图像对应的三维图像数据进行涂鸦,因此,所述目标客户终端可以进一步获取该用户针对其终端屏幕的屏幕控制点。
应当理解,当所述目标客户终端为携带三维建模模块的智能终端(比如,智能手机)时,所述屏幕控制点可以理解为用户在其终端屏幕上的触摸点(比如,手指按压在该终端屏幕上所获取到的触摸点),可选地,当所述目标客户终端为AR设备(比如,AR眼镜)时,所述屏幕控制点还可以理解为与该AR眼镜具有网络连接关系的控制设备所产生的控制信号在其终端屏幕上的控制点。
为便于更好的理解本方案,所述目标客户终端可以为图2所示的客户终端3000a。为了将该现实世界中的目标客户终端变为三维虚拟空间(即虚拟世界)中的画笔,以体现出在虚拟世界中进行虚拟画画的效果,需要将目标用户(即持有该目标客户终端的用户)手指接触到终端屏幕的二维位置坐标转换为世界坐标系下的三维坐标。换言之,所述目标客户终端需对现实世界中触摸点的二维位置坐标进行反投影变换,以转换为虚拟世界中触摸点在所述目标三维模型中的三维坐标。进一步地,请参见图3,是本发明实施例提供的一种变换控制点的二维位置坐标的示意图。
如图3所示,所述目标客户终端可以为图3所示的客户终端3000a,该目标客户终端可以获取该屏幕控制点在该终端屏幕所显示图像上的二维位置坐标(比如,图3所示的坐标(u,v)即为该屏幕控制点的二维位置坐标),即该二维位置坐标可以理解为该屏幕控制点在现实世界中的坐标位置。其次,该目标客户终端还可以获取该终端屏幕所显示图像对应的三维图像数据的投影变换矩阵;然后,该目标客户终端可以进一步根据该屏幕控制点对应的二维位置坐标,以及该三维图像数据的投影变换矩阵,确定该屏幕控制点在该目标三维模型中的三维坐标。即所述目标客户终端可以通过该投影变换矩阵,对现实世界中屏幕控制点的二维位置坐标(即坐标(u,v))进行反投影变换(该反投影变换也可以称之为仿射变换),以得到图3所示的世界坐标系下该屏幕控制点对应的三维坐标(即{X1,Y1,Z1})。所述世界坐标系为虚拟世界中的坐标系,且所述目标三维模型位于所述虚拟世界中,为便于理解,本发明可以将所述虚拟世界中所述三维图像数据中每个体像素点的三维坐标,称之为三维像素坐标。
如图3所示,所述目标客户终端在得到所述世界坐标系下屏幕控制点的三维坐标时,可以进一步在该世界坐标系下,将所述屏幕控制点对应的三维坐标,作为第一坐标,即该第一坐标为{X1,Y1,Z1}。然后,所述目标客户终端可以进一步在如图3所示的所述世界坐标系下,将所述屏幕控制点对应的第一坐标进一步进行转换,以在该世界坐标系下,得到该屏幕控制点映射在绘制平面上的点的三维坐标。所述绘制平面为该目标三维模型中所创建的一个虚拟平面,因此,可以将该屏幕控制点映射在该虚拟平面上的点称之为目标绘制点,即该目标绘制点在该目标三维模型中的三维坐标可以为{X2,Y2,Z2},于是,该目标客户终端可以进一步将所述目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标,即该第二坐标为{X2,Y2,Z2}。最后,所述目标客户终端可以根据该第二坐标生成所述目标绘制点对应的绘制渲染数据(即虚拟世界中,用户所绘制的内容),并可以进一步基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。
应当理解,在目标用户点击进入AR画笔模块之后,该目标用户可以进一步使用该AR画笔模块中的AR画笔功能,即该目标用户通过在该终端屏幕上绘制,可以产生在空间中绘画的效果。比如,用户可以在该终端屏幕所显示的图像上按压或轻触该终端屏幕,进而该目标客户终端可以获取该按压或轻触操作所产生的触摸点的二维位置坐标,并将该触摸点作为该终端屏幕上的屏幕控制点;然后所述目标客户终端可以根据上述图3所对应实施例中所描述的对该屏幕控制点对应的第一坐标的获取过程,得到该触摸点在该目标三维模型中的三维坐标,然后所述目标客户终端可以进一步对该触摸点对应的三维坐标进行空间坐标变换,得到该触摸点所映射的目标绘制点在该目标三维模型中的三维坐标,进而当该目标客户终端对该目标绘制点对应的三维坐标进行渲染时,可以得到该目标绘制点对应的绘制渲染数据。
为便于理解,在该虚拟世界中,该目标绘制点对应的绘制渲染数据的渲染效果,本发明实施例以所述目标绘制点对应的绘制渲染数据为一个气泡图像为例,即目标客户终端可以在该虚拟世界中,按照目标渲染格式(比如,该目标渲染格式中的笔刷效果样式为气泡样式)对该目标绘制点进行渲染,可以得到该目标绘制点对应的气泡图像。因此,当目标用户在该终端屏幕上来回滑动时,可以对应的获取到该来回滑动过程中所产生的多个触摸点,进而可以在虚拟世界中,对应的找到每个触摸点所映射的绘制点,应当理解,所述绘制点包含历史绘制点和目标绘制点,所述目标绘制点为该目标客户终端最新获取到的触摸点在该目标三维模型中所映射于绘制平面上的点,因此,对于该虚拟世界中的每个绘制点,均可以找到对应的绘制平面。于是,通过将这些绘制平面上的绘制点进行顺序连接,可以得到相应的渲染路径,进而可以在虚拟世界中对这些绘制点所构成的渲染路径进行渲染,以得到三维绘制轨迹。
应当理解,所述三维绘制轨迹中包含所述目标绘制点对应的绘制渲染数据,因此,当所述目标绘制点对应的绘制渲染数据为一个气泡图像时,该三维绘制轨迹可以理解为一连串顺序排布的气泡图像,进而最终可以得到上述图2所对应实施例中所显示的投影后的三维绘制轨迹的效果图,即投影后的三维绘制轨迹可以为上述图2所对应实施例中的环绕篮球的环形圈。可见,本发明实施例可以将现实世界中针对终端屏幕的二维滑动轨迹,演变为虚拟世界中的三维绘制轨迹,进而可以改善该终端屏幕内图像数据的展示效果。
此外,所述目标客户终端(即客户终端3000a)还可以进一步将该终端屏幕中的融合图像数据(比如,上述图2所示的目标图像数据)分享至上述图2所示的客户终端3000b。
其中,所述目标客户终端获取所述屏幕控制点对应的第一坐标,以及所述目标控制点对应的第二坐标,以及基于所述第二坐标生成所述目标绘制点对应的绘制渲染数据的具体过程,可以参见如下图4至图11对应的实施例。
进一步地,请参见图4,是本发明实施例提供的一种图像数据处理方法的流程示意图。如图4所示,所述方法可以包括:
S101,当获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;
具体地,目标终端可以在三维建模后,得到目标三维模型,并可以进一步生成所述目标三维模型对应的三维绘制指令;其次,所述目标终端可以根据该三维绘制指令显示用户操作界面(所述用户操作界面可以为上述图1所对应实施例中的所述用户操作界面),并可以进一步获取用户在该用户操作界面中的选择操作,并根据该选择操作确认使用AR画笔功能,即用户可以开始对该终端屏幕所显示图像对应的三维图像数据进行涂鸦;然后,所述目标客户终端可以进一步获取该用户针对其终端屏幕的屏幕控制点。
其中,所述三维绘制指令用于指示该目标终端,在接收到用户的选择操作时,可以调用该目标终端中的目标渲染格式,比如,可以使用默认的AR画笔功能。所述AR画笔功能位于AR画笔模块,用户在该AR画笔模块中可以选择各式各样的渲染格式,所述目标渲染格式可以包括,笔刷颜色,笔刷线条样式以及笔刷效果样式等。比如,笔刷线条样式可以为实直线;笔刷效果样式可以为气泡样式或水滴样式,这里将不对该目标渲染格式中具体的笔刷效果格式进行限制。
若所述目标终端为携带三维建模功能的智能终端,比如,该智能终端中内置有三维建模模块,例如,上述图1所对应实施例中的AR工具模块,则可以对扫描的周围环境信息进行三维建模,以得到目标三维模型,并生成该目标三维模型对应的三维绘制指令。因此,该智能终端可以根据该三维绘制指令,获取与该三维绘制指令对应的渲染格式,作为虚拟世界中用户所绘制内容所对应的目标渲染格式。其中,所述虚拟世界中用户所绘制内容即为用户在终端屏幕上的屏幕控制点映射至所述虚拟空间所构成的绘制内容,所述屏幕控制点可以理解为该智能终端所获取到的针对其终端屏幕所显示图像的触摸点。
可选地,若所述目标终端为AR设备,则所述屏幕控制点可以理解为与该AR设备具有网络连接关系的控制设备所产生的控制信号在其终端屏幕上对应的控制点。进一步地,请参见图5,是本发明实施例提供的一种获取屏幕控制点的示意图。如图5所示,所述目标终端为AR眼镜,所述控制设备为图5所示的目标控制器(例如,智能手环),应当理解,在不同的应用场景中,该目标控制器可以为AR穿戴设备,也可以为AR手持设备。由于该目标控制器与该AR眼镜具有网络连接关系,因此,当佩戴该目标控制器的用户的手在空中挥动时,可以获取到该目标控制器与该AR眼镜之间的控制信号,与此同时,该AR眼镜还可以根据接收到的控制信号,进一步通过定位器对该目标控制器的位置信息进行定位,以确定该目标控制器与该AR眼镜之间的位置坐标,并根据所述位置坐标可以进一步确定该目标控制器在该AR眼镜的终端屏幕上的屏幕控制点。
其中,所述定位器可以为摄像头定位器,可选地,所述定位器还可以为光场定位器,因此,通过所述定位器对该目标控制器的位置信息进行定位的具体过程属于现有技术范畴,因此,这里将不对其进行继续赘述。
为了更好地理解本方案,本发明实施例将以所述目标终端为所述智能终端(比如,智能手机)为例,从而可以相应用户在该终端屏幕所显示图像上的触摸操作,进而可以根据该触摸操作获取屏幕控制点(即触摸点)在该终端屏幕上的二维位置坐标,该二维位置坐标可参见上述图2所对应实施例中对所述屏幕控制点的描述,这里将不再继续进行赘述。
其中,所述触摸操作包括但不限于:按压操作或者滑屏操作。通常,在具有触控屏功能的终端设备中,其触控屏的结构包括至少三层:屏幕玻璃层、触控面板层和显示面板层。其中屏幕玻璃层为保护层,触控面板层用于感知用户的触控操作,显示面板层用于显示图像。
应当理解,所述屏幕控制点可以理解为按压所述终端屏幕时所产生的一个默认触摸直径为r的触摸点;然而,当用户使用手指在所述终端屏幕上来回滑动时,即在该终端屏幕所显示的图像对应的目标显示区域连续滑动时,手指滑动时所形成的规则、且规律的图形,可以作为该目标终端中的触摸屏所对应的滑动操作轨迹,且在该滑动操作轨迹中,可根据手指在接触触摸屏时的默认触摸直径r进一步提取位于所述目标显示区域上的至少一个触摸点,作为终端屏幕上的屏幕控制点。例如,可以在滑动操作轨迹中提取到两个触摸点,并可以将这两个触摸点一并作为该终端屏幕上的屏幕控制点。
为更好地理解本方案,本发明实施例以所述屏幕控制点为一个触摸点为例,来描述如何将现实世界中的屏幕控制点的二维位置坐标转换为虚拟世界中的屏幕控制点的三维坐标,以进一步执行步骤S102;应当理解,对于该终端屏幕对应的滑动操作轨迹中的多个触摸点而言,将每个触摸点的二维位置坐标转换为世界坐标系下的三维坐标的具体过程均可参见对所述屏幕控制点的坐标变换的描述。
步骤S102,获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;
具体地,所述目标终端可以获取所述屏幕控制点在所述终端屏幕上的二维位置坐标,并获取所述三维绘制指令对应的目标三维模型的投影变换矩阵,并通过所述投影变换矩阵对所述屏幕控制点对应的二维位置坐标进行反投影变换,得到所述屏幕控制点在所述目标三维模型中的三维坐标,并将所述屏幕控制点在所述目标三维模型中的三维坐标作为第一坐标。然后,所述目标终端可以在所述目标三维模型中,获取所述目标视点的第一视点坐标,并基于所述绘制指令在所述近平面和远平面之间创建所述屏幕控制点所映射的目标绘制点对应的绘制平面,并将所述绘制平面到所述目标视点之间的距离作为第三距离,并获取所述目标视点和所述屏幕控制点之间的延长线,并将所述延长线与所述绘制平面的交点,作为所述屏幕控制点所映射的目标绘制点,并计算所述第三距离和所述第一距离之间的比值,并根据所述比值、所述第一视点坐标和所述第一坐标,确定所述目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标。
其中,所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;
其中,投影变换(比如,透视投影)完成的是如何将目标三维模型中显示的三维图像数据投影到二维视口上进行显示,使得离摄像机近的物体投影后较大,而离摄像机较远的物体投影后较小。应当注意,在该投影变换的过程中主要涉及到两个部分,第一部分是从视椎体(即可以上述图3所示的近平面和远平面之间的棱锥体可以称之为视椎体)内一点投影到近平面(该近平面也可以称之为近剪裁平面)的过程,第二部分是由近剪裁平面缩放的过程,通过这两个步骤可以将上述图3所示的视椎体转换为一个归一化的立方体,因此,在该目标终端的终端屏幕上可以呈现出近大远小的效果。进一步地,请参见图6,是本发明实施例提供的一种投影变换的示意图,该投影变换的目标是将图6所示的视椎体转换为一个归一化的立方体。如图6所示,该视椎体由上、下、左、右、近、远,共6个面组成,且在视锥体内的景物可见,反之则不可见。假设目标视点O目前处于该世界坐标系的坐标原点,即该目标视点O的三维坐标为(0,0,0)。在该视椎体中,可以将图6所示的近平面到目标视点O的距离作为第一距离(该第一距离可以用表示为n),并将图6所示的远平面到视点O的距离作为第二距离(该第二距离可以用表示为f)。假设该视椎体内一点P的三维坐标为(x,y,z),且该点P在近平面上的投影点为P’,且该投影点的三维坐标为(x',y',z'),然后,该点P’经过缩放后的最终投影坐标(即终端屏幕上的二维位置坐标)为P”(x",y",z"),应当理解,投影变换后所得的横轴(X’)的坐标范围是[-1,1],纵轴(Y’)的坐标范围是[-1,1],Z’轴的坐标范围是[0,1](应当理解,在OpenGL中该Z’轴上的取值范围可以是[-1,1]),因此,投影后所得的点P”在Z’轴上的z"值可以理解为虚拟世界中点P对应的深度值(即z值)。
由于图6所示的所有位于线段P'P上的点,最终都会投影到p'点,于是,若这条线段上存在多个点(比如,P1,P2均位于该线段P'P上,且这两个点均会与点P一样投影至近平面上的P')时,该目标终端可以通过比较这三个点的z值大小,以保留具有最小深度值(即z值最小)的点。因此,在将这三个点投影至z'坐标时,可以直接保存每个点的z值。因为在光栅化之前,我们需要对这三个点分别对应的z坐标的倒数进行插值,以在反投影变换(该反投影变换也可以称之为仿射变换)后,可以相应地得到这三个点分别对应的体像素点的属性信息(比如,位置信息、颜色信息等)。
假设所求的投影矩阵为M,那么根据矩阵乘法可知,如下等式可以成立:
PM=P” 公式(1);
其中,P可以理解为视椎体内的点P的三维坐标,P”可以理解为该终端屏幕上点P”的二维位置坐标。在如图6所示的投影变换过程中,该目标终端可以在该目标三维模型中,确定以下四个投影参数,进而可以根据这四个投影参数确定该目标视点当前所处的视点坐标下的投影变换矩阵,即该目标终端可以通过这四个投影参数来求该透视变换中所产生的投影矩阵。这四个投影参数分别是,图6所示的视点(即目标视点)在Y方向的视角(即目标视点O在+Y方向上的可视范围所对应的夹角为θ),该视角下近平面对应的纵横比(该纵横比可以表示为A),近平面到原点的距离(即第一距离为n)及远平面到原点的距离(即第二距离为f),通过这四个参数即可求出上面的投影矩阵M;
因此,在该目标三维模型中,该投影矩阵M可以表示为:
因此,当确定该目标视点在该目标三维模型中的位置坐标时,可以确定该目标视点的视角,以及该视角所对应的视椎体的形状(比如,可以根据视椎体的形状确定第一距离n,第二距离f和纵横比A),同理,还可以根据视椎体的形状确定该虚拟世界中的具有三维坐标的三维像素点(即体像素点)投影到终端屏幕的情况,即通过上述公式(1)可以将目标三维模型中的各体像素点投影变换至终端屏幕上进行显示。其中,在该目标三维模型中,该三维像素点可以称之为体素点,它是三维空间中定义一个点的图像信息的单位。
其中,该投影变换矩阵的获取过程可以描述为:目标终端首先将所述终端屏幕所显示的图像对应的三维图像数据,作为第一图像数据,其次,该目标终端可以在所述目标三维模型中,获取所述目标视点的视角、所述近平面的纵横比、所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;然后,所述目标终端可以根据所述视角,所述纵横比,所述第一距离和所述第二距离,计算所述终端屏幕对应的第一图像数据的投影变换矩阵(该投影变换矩阵的表达式可以如上述公式(2)所示)。
反之,对于所述终端屏幕上的屏幕控制点而言,可以通过获取到的该目标三维模型对应的投影变换矩阵,对其进行反投影变换,以得到该屏幕控制点在该目标三维模型中的三维坐标,即有:
PMM-1=P=P"M-1 公式(3);
其中,M-1为投影变换矩阵M的逆矩阵。由于一个矩阵的逆矩阵的求取过程为现有技术,因此,对于该投影变换矩阵对应的求逆过程,这里将不再继续进行赘述。可见,通过对该屏幕控制点的二维位置坐标进行反投影变换(即放射变换),则可以得到该屏幕控制点在目标三维模型中的三维坐标,因此,所述目标终端可以进一步将该目标控制点对应的三维坐标作为第一坐标,即该第一坐标可以为上述图3所对应实施例中屏幕控制点的三维坐标(即{X1,Y1,Z1})。
因此,所述目标终端获取所述第一坐标的过程可以描述为:目标终端获取所述屏幕控制点在所述终端屏幕上的二维位置坐标,并获取所述三维绘制指令对应的目标三维模型的投影变换矩阵;然后,该目标终端可以进一步通过所述投影变换矩阵对所述屏幕控制点对应的二维位置坐标进行反投影变换,得到所述屏幕控制点在所述目标三维模型中的三维坐标,并将所述屏幕控制点在所述目标三维模型中的三维坐标作为第一坐标。
进一步地,所述目标终端可以根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标。其中,所述屏幕控制点所映射的目标绘制点的第二坐标可以为上述图3所对应实施例中屏幕控制点的三维坐标(即{X2,Y2,Z2})。
其中,在所述目标三维模型中,所述目标视点为该目标终端内虚拟摄像机的聚焦点,该目标视点对应的可视范围即为上述图6所示的视椎体所截取到的显示区域,因此,在该目标视点的+Z轴方向,所述近平面和所述远平面可以用于限定所述三维图像数据在所述目标三维模型中的显示区域。应当理解,图6所示的视椎体即为所该目标三维模型中的一个可视场景。当所述目标视点的视点坐标发生变动时,比如,现实世界中,持有该目标终端的目标用户将该目标终端从第一地理位置A平移至第二地理位置B时,该目标终端内所述目标视点的视点坐标也将相应的发生变化,比如,该目标视点的视点坐标可以从第一视点坐标平移至第二视点坐标(所述第一视点坐标与所述目标终端所处的第一地理位置A对应,所述第二视点坐标与所述目标终端所处的第二地理位置B对应),进而可以更新该终端屏幕中所显示的图像对应的三维图像数据,比如,当该目标终端处于所第一地理位置A时,该终端屏幕中所显示的图像对应的三维图像数据可以称之为第一图像数据,于是,当该目标终端从所述第一地理位置A平移至所述第二地理位置B时,该终端屏幕中所显示的图像对应的三维图像数据,可以由所述第一图像数据切换为第二图像数据,进而更新该终端屏幕中所显示的图像对应的三维图像数据。此时,该更新后的三维图像数据可以理解为第二视点坐标下,该目标视点对应的另一个视椎体内所显示的三维图像数据,换言之,还可以理解为该目标终端基于该目标三维模型所具有的平移特性,将该目标三维模型内的可视场景进行平移,以切换该目标三维模型内的可视场景。
应当理解,为了更好的展现出在空间中绘画的效果,还应当进一步将所述屏幕控制点在虚拟世界中的三维坐标进行空间坐标变换,即通过该空间坐标变换可以使用户在终端屏幕上进行来回滑动所获取到的屏幕控制点,能够映射到该目标三维模型中,以在虚拟世界中,找到该屏幕控制点所映射的目标绘制点。此时,该目标绘制点的深度值将不同于该屏幕控制点的深度值。因此,通过该目标三维模型中的屏幕控制点所映射的所述目标绘制点,可以在该虚拟世界中,产生三维绘画的效果。
因此,该目标终端在通过上述公式(2)确定投影变换矩阵之后,可以进一步得到该投影变换矩阵对应的逆矩阵,从而可以通过该逆矩阵确定所述屏幕控制点对应的第一坐标。然后,所述目标终端还可以进一步确定该屏幕控制点所映射的目标绘制点在该目标三维模型中的三维坐标,并将该目标绘制点在该目标三维模型中的三维坐标,作为第二坐标。
其中,所述第二坐标的获取过程可以为:所述目标终端首先在所述目标三维模型中,获取所述目标视点的第一视点坐标,基于所述绘制指令在所述近平面和远平面之间创建所述屏幕控制点所映射的目标绘制点对应的绘制平面,并将所述绘制平面到所述目标视点之间的距离作为第三距离;然后,所述目标终端可以进一步获取所述目标视点和所述屏幕控制点之间的延长线,并将所述延长线与所述绘制平面的交点,作为所述屏幕控制点所映射的目标绘制点;最后,所述目标终端可以计算所述第三距离和所述第一距离之间的比值,并根据所述比值、所述第一视点坐标和所述第一坐标,确定所述目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标。
如上述图3所示,所述屏幕控制点在该目标三维模型中的第一坐标为{X1,Y1,Z1},所述目标绘制点在该目标三维模型中的第二坐标为{X2,Y2,Z2},在该世界坐标系下,所述目标绘制点位于上述图3所示的绘制平面上,且该目标绘制点位于上述图3所示的视点(即目标视点)与所述屏幕控制点的延长线上,因此,若所述目标视点(虚拟摄像机机的聚焦点)的视点坐标(即第一视点坐标)为{X3,Y3,Z3},则所述目标终端可以根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标。
进一步地,请参见图7,是本发明实施例提供的一种空间坐标变换的示意图。所述目标视点可以为上述图3所对应实施例中的视点,此时,在上述图3所示的世界坐标系下,可以将该目标视点的视点坐标,作为第一视点坐标,即该第一视点坐标可以为{X3,Y3,Z3},图7所示的屏幕控制点对应的第一坐标可以为上述图3所对应实施例中的屏幕控制点的三维坐标,即该第一坐标为{X1,Y1,Z1}。然后所述目标终端可以将从所述目标视点到所述屏幕控制点的向量,作为第一向量,即该第一向量可以记为{X1-X3,Y1-Y3,Z1-Z3}。由于所述目标绘制点位于该目标视点与所述屏幕控制点的延长线上,同理可得,该目标终端可以将从所述目标视点到所述目标绘制点的向量,作为第二向量,且该第二向量可以记为{X2-X3,Y2-Y3,Z2-Z3}。由于在该近平面和远平面之间创建的绘制平面平行于图7所示的近平面,因此,所述目标终端可以将该绘制平面到所述目标视点的距离(即第三距离),表示为图7所示的距离D2,并将该近平面到所述目标视点的距离(即第一距离),表示为图7所示的距离D1,因此,所述目标终端可以计算所述第三距离和所述第一距离之间的比值(即K=D2/D1);
应当理解,所述远平面到所述目标视点的距离(即第二距离),由于所述屏幕控制点所映射的目标绘制点,处于所述近平面和远平面之间的绘制平面上,且确定所述目标绘制点的坐标的过程中可以不用考虑所述远平面到所述目标视点的距离,因此,并未在图7所示的YOZ平面上展示所述第二距离。
鉴于此,所述绘制点在该目标三维模型中的第二坐标可以表示为:
{X2,Y2,Z2}={K*(X1-X3)+X3,K*(Y1-Y3)+Y3,K*(Z1-Z3)+Z3} 公式(4)
通过该公式(4),可以确定所述屏幕控制点所映射的目标绘制点在该目标三维模型中的第二坐标。
步骤S103,根据所述第二坐标生成目标绘制点对应的绘制渲染数据,并根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。
具体地,所述目标终端可以将上述步骤S102中所得的所述第二坐标添加至所述三维绘制指令对应的绘制队列,并根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,对所述历史绘制点和所述目标绘制点之间的渲染路径进行渲染,得到三维绘制轨迹;然后,所述目标终端可以获取所述第一图像数据对应的投影变换矩阵,并将所述三维绘制轨迹和所述第一图像数据进行融合,得到第一融合图像数据,并获取所述第一融合图像数据的每个体像素点的三维坐标,作为三维像素坐标;最后,所述目标终端可以进一步通过所述投影变换矩阵,确定所述三维像素坐标投影至所述终端屏幕上的二维位置坐标,并基于所述三维像素坐标对应的二维位置坐标显示投影后的第一融合图像数据;
其中,所述投影后的第一融合图像数据中包含投影后的三维绘制轨迹。
其中,所述三维绘制轨迹包含所述目标绘制点在终端屏幕上的二维位置坐标所对应的绘制渲染数据;
应当理解,由于该目标绘制点位于所述视椎体内,因此,该目标用户可以通过该目标终端实时看到该虚拟世界中的绘制内容,即可以实时看到对所述目标绘制点进行渲染后所得的绘制渲染数据。
应当理解,对于针对终端屏幕的每个屏幕控制点而言,可以在虚拟世界中,对应的找到与各屏幕控制点对应的绘制点(所述绘制点包括:历史绘制点和目标绘制点),并记录每个绘制点的绘制顺序,即所述目标客户终端可以将每个绘制点按照所述绘制顺序依次添加进绘制队列(该绘制队列中最新添加的绘制点即为所述目标绘制点,该目标绘制点之前的其它绘制点可以理解为历史绘制点),进而可以得到相应的渲染路径;然后,目标终端可以进一步根据该AR画笔模块中的目标渲染格式,得到与该渲染路径对应的三维绘制轨迹;所述三维绘制轨迹中包含所述目标绘制点对应的绘制渲染数据。
应当理解,在该虚拟世界中,当该目标视点的视点坐标发生平移时,该屏幕控制点所映射的目标绘制点所处的绘制平面也将发生移动。比如,当用户手持该目标终端往后退时,该目标终端内的传感器可以实时检测(或追踪)该目标终端的位置变化情况(即向后平移),从而可以在所述虚拟世界中,将虚拟摄像机的目标视点的视点坐标也相应进行移动,进而可以更新该终端屏幕中所显示图像对应的三维图像数据。
进一步地,请参见图8,是本发明实施例提供的一种绘制坐标入栈的示意图。如图8所示,当目标终端(例如,智能手机)进入AR画笔模块后,所述目标终端可以进一步检测用户手指是否接触屏幕,如果是,则表示用户当前正使用该AR画笔进行绘制,于是,该目标终端可以获取该用户在绘制过程中所产生的触摸点,并将所述触摸点作为所述屏幕控制点。
比如,当用户手持终端位于地理位置A,且在该地理位置A用手指在终端屏幕中由上往下滑动时,该目标终端可以获取该滑动过程中所产生的至少一个触摸点(比如,触摸点K1、触摸点K2和触摸点K3,且这三个触摸点的获取顺序可以为:先获取触摸点K1,再获取触摸点K2,最后获取到触摸点K3)。由于该目标终端是在同一位置(即地理位置A)获取到这三个触摸点,因此,可以理解为该目标终端内的目标视点的视点坐标和视角并未发生变化,于是,该目标终端可以按照所述获取顺序依次将这三个触摸点作为屏幕控制点,或者将这三个触摸点一并作为屏幕控制点。然后,可以在虚拟世界中对应的找到每个触摸点作为所述屏幕控制点时所映射的目标绘制点,即该目标终端可以在同一绘制平面上找到这三个触摸点分别映射的绘制点。
可选地,当用户手持终端,并用手指按住该终端屏幕从地理位置A走到地理位置B,且从地理位置B走到地理位置C时,该目标终端所获取到的屏幕控制点可以理解为针对该终端屏幕的三个触摸点,即在三个不同地理位置上所获取到的触摸点。其中,当该目标终端位于地理位置A时,该触摸点映射到近平面上的点可以称之为图8所示的屏幕控制点E,且该目标终端在该地理位置A所对应的目标视点可以为图8所示的视点1;当该目标终端位于地理位置B时,该触摸点映射到近平面上的点可以称之为图8所示的屏幕控制点F,且该目标终端在该地理位置B所对应的目标视点可以为图8所示的视点2;当该目标终端位于地理位置C时,该触摸点映射到近平面上的点可以称之为图8所示的屏幕控制点G,且该目标终端在该地理位置C所对应的目标视点可以为图8所示的视点3。如图8所示,该目标终端可以在该目标三维模型内对应的找到这三个触摸点分别映射的绘制点,即在同一世界坐标系下,找到位于不同绘制平面上的绘制点;其中,屏幕控制点E所映射的绘制点的三维坐标为{x1,y1,z1},屏幕控制点F所映射的绘制点的三维坐标为{x2,y2,z2},屏幕控制点G所映射的绘制点的三维坐标为{x3,y3,z3}。该目标终端根据在不同地理位置下所获取到的触摸点,可以依次获取到图8所示的屏幕控制点E、屏幕控制点F和屏幕控制点G,因此,在该虚拟世界中,可以将屏幕控制点E和屏幕控制点F分别映射的绘制点称之为历史绘制点,并将这两个历史绘制点分别添加至图8所示的历史队列中的历史渲染路径(比如,可以将屏幕控制点E对应的历史绘制点添加进路径1,可以将屏幕控制点F对应的历史绘制点添加进路径2),并将这两个历史绘制点在该目标三维模型中的三维坐标,称之为历史坐标。其次,该目标终端还可以将屏幕控制点G所映射的绘制点称之为目标绘制点,并将该目标绘制点在该目标三维模型中的三维坐标称之为第二坐标,并将所述第二坐标(即{x3,y3,z3})添加至图8所示的当前队列。应当理解,在该绘制队列中,三维坐标{x1,y1,z1}的渲染顺序优先于三维坐标{x2,y2,z2},且所述三维坐标{x2,y2,z2}的渲染顺序优先于三维坐标{x3,y3,z3}。换言之,如图8所示的所述绘制队列中可以包含当前队列和历史队列,且所述历史队列中各历史绘制点的渲染顺序优先于所述当前队列中所述目标绘制点的渲染顺序。因此,该目标终端可以先取出历史队列里的历史渲染路径进行渲染,然后再进一步渲染当前队列中的目标绘制点。即对于图8所示的绘制队列,其当前的渲染路径可以理解为:可以先取出路径1中的历史绘制点进行渲染,再取出路径2中的历史绘制点进行渲染,最后渲染当前队列中的目标绘制点,即该目标终端可以按照所述目标渲染格式对当前的渲染路径中的各绘制点依次进行渲染,以得到所述三维绘制轨迹。
可见,所述目标终端可以根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,对所述历史绘制点和所述目标绘制点之间的渲染路径进行渲染,以得到三维绘制轨迹。其中,所述三维绘制轨迹中包含所述目标绘制点所对应的绘制渲染数据。
应当理解,对于绘制队列中的多个绘制点而言,所述三维绘制轨迹中包含目标绘制点对应的绘制渲染数据,且包含历史绘制点对应的绘制渲染数据,所述历史绘制点的绘制渲染数据的生成过程可以参见所述目标绘制点对应的绘制渲染数据的生成过程,这里不再继续赘述。
此外,所述目标终端(该目标终端可以为上述图2所对应实施例中的客户终端3000a)在该终端屏幕中显示投影后的三维绘制轨迹之前,还可以预先在虚拟世界中,将所述三维绘制轨迹,与所述终端屏幕中所显示的图像对应的三维图像数据进行融合,以得到所述融合图像数据;然后,该目标终端可以进一步将所述融合图像数据投影至所述终端屏幕进行显示。此时,所述终端屏幕中所显示的图像,可以为将上述图2所对应实施例中的所述融合图像数据进行投影后所得到的图像,并可以进一步将投影后的融合图像数据上传给图2所示的服务器2000,以使所述服务器2000可以将所述投影后的所述融合图像数据下发给图2所示的客户终端3000b。
此外,所述目标终端还可以通过该AR画笔模块中携带的录制功能对整个虚拟世界中的三维绘制轨迹(即图2所示的环形轨迹)的绘制过程进行录制,即所述目标客户终端可以录制生成所述融合图像数据的整个过程,并将录制的包含所述融合图像数据的录制视频上传至图2所示的服务器2000,以使所述服务器2000可以将所述录制视频下发给与该目标客户终端具有好友关系的其它客户终端(比如,上述图2所对应实施例中的客户终端3000b)。可见,所述目标终端可以通过所述服务器2000将所述融合图像数据(即将该融合图像数据作为目标图像数据)分享至与该目标客户终端具有好友关系的其它客户终端。
本发明实施例在获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;根据所述第二坐标生成目标绘制点对应的绘制渲染数据,并根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。可见,本发明在获取到三维绘制指令时,可以获取二维平面上的屏幕控制点,并可进一步确定该屏幕控制点所映射的目标控制点在该目标三维模型中的位置坐标,以使用户针对终端屏幕上的操作可以间接反投影到该目标三维模型中,以产生在空间中画画的效果,然后,可以进一步将该目标三维模型中所产生的绘制渲染数据投影回该终端屏幕进行显示,以改善终端屏幕中图像数据的展示效果,进而提高对图像数据进行涂鸦的展示效果。
进一步地,请参见图9,是本发明实施例提供的另一种图像数据处理方法的流程示意图。如图9所示,所述方法可以包括:
步骤S201,采集终端周围的环境图像信息,并在所述环境图像信息中提取目标对象的边缘轮廓特征,并根据三维建模参数和所述边缘轮廓特征,生成所述目标对象对应的三维图像数据;
具体地,目标终端可以通过摄像头获取该目标客户终端周围的环境图像信息;其中,所述摄像头可以集成于所述目标终端中,可选地,所述摄像头也可以独立于所述目标终端,所述目标终端可以为上述图2所对应实施例中的目标客户终端,因此,该目标终端可以借助于该摄像头对其周围环境信息进行扫描,以将扫描到的多个角度下的二维图像数据(即该目标终端的终端屏幕上所显示的图像)作为环境图像信息。其次,该目标终端可以进一步将该环境图像信息中目标对象(比如,上述图2所对应实施例中的篮球)的拐点(即外形轮廓特征)输入该目标客户终端中的三维建模模块(比如,终端系统中提供的AR工具模块(例如,ARkit模块),应当理解,该三维建模模块中携带重建该目标对象的三维建模参数(比如,包含该目标对象的摄影机影像的位置及角度),该三维建模参数可以内置于所述ARkit模块),以得到所述环境图像信息对应的三维图像数据。
其中,所述目标三维模型中包含所述目标终端对应的目标视点,以及三维图像数据对应的近平面和远平面;所述近平面和所述远平面用于限定所述三维图像数据在所述目标三维模型中的可视区域;所述目标视点是指所述目标对象在所述目标终端中虚拟摄像机内的聚焦点。此时,所述三维建模参数可以理解为用于构建所目标三维模型的投影参量,该投影参量可以包括:目标视点的视角,目标视点的视点坐标,近平面与所述目标视点的距离,远平面与所述目标视点的距离等。应当理解,所述虚拟摄像机中所述目标视点的视角和视点坐标与现实世界中该目标终端内摄像机采集图像时的位置和角度相关。
步骤S202,根据所述目标对象对应的三维图像数据创建所述环境图像信息对应的目标三维模型,并生成所述目标三维模型对应的三维绘制指令;
其中,所述三维绘制指令用于指示该目标客户终端可以在获取到选择操作时,确定使用AR画笔模块中的AR画笔功能。
步骤S203,当获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;
其中,步骤S203的具体执行过程可以参见上述图4所对应实施例中对步骤S101的描述。
应当理解,若所述目标终端为携带三维建模功能的智能终端所述屏幕控制点可以理解为该智能终端所获取到的针对其终端屏幕所显示图像的触摸点。
可选地,若所述目标终端为AR设备,则所述屏幕控制点可以理解为与该AR设备具有网络连接关系的控制设备所产生的控制信号在其终端屏幕上对应的控制点。其中,所述AR设备可以为上述图5所对应实例中对所述AR眼镜的描述,这里将不再继续进行赘述。
步骤S204,获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;
其中,所述步骤S204的具体执行方式可参见上述图4所对应实施例中对步骤S102的描述,这里将不再继续进行赘述。
步骤S205,将所述第二坐标添加至所述三维绘制指令对应的绘制队列,并根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,对所述历史绘制点和所述目标绘制点之间的渲染路径进行渲染,得到三维绘制轨迹;所述三维绘制轨迹包含所述目标绘制点在终端屏幕上的二维位置坐标所对应的绘制渲染数据;
具体地,目标终端可以将上述步骤S204中所得的目标绘制点对应的第二坐标添加至所述三维绘制指令对应的绘制队列;所述绘制队列包括:当前队列和历史队列,所述当前队列是指手指正使用AR画笔进行绘制的目标绘制点所在的队列,所述当前队列中可以包括至少一个绘制点,即所述当前队列中的目标绘制点可以为一个绘制点,也可以为多个绘制点。应当理解,所述历史队列中可以包含多条历史渲染路径,每条历史渲染路径中均包含至少一个历史绘制点。因此,所述目标终端可以根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,确定所述历史绘制点对应的历史坐标和所述目标绘制点对应的第二坐标之间的渲染路径,并进一步按照所述目标渲染格式对所述渲染路径进行渲染,得到所述三维绘制指令对应的三维绘制轨迹。
比如,对于图8所示的绘制队列,其渲染路径可以理解为:可以先取出路径1进行渲染,再取出路径2进行渲染,最后渲染当前队列中的目标绘制点,进而得到所述三维绘制轨迹。即对于该目标终端而言,所述三维绘制轨迹中的每个绘制点将会固定存在于该目标三维模型中。因此,当该目标终端获取到针对该终端屏幕的新的屏幕控制点时,可以将图8所示的该绘制队列中当前队列内的绘制点(即屏幕控制点G所映射的绘制点)作为历史绘制点,并将该屏幕控制点G所映射的绘制点作为新的历史渲染路径添加至所述历史队列,比如,该绘制点所构成的新的历史渲染路径可以为路径3,与此同时,该目标终端还可以将该新的屏幕控制点所映射的目标绘制点的三维坐标添加至所述当前队列,以更新所述绘制队列对应的渲染路径。
应当理解,三维绘制轨迹中每个绘制点(比如,每个历史绘制点)对应的绘制渲染数据的生成过程,均可参见上述图4所对应实施例中对生成所述目标绘制点所对应的绘制渲染数据的具体过程的描述,这里将不再进行赘述。
其中,获取所述三维绘制轨迹的具体过程可以参见上述图8所对应实施例中对所述三维绘制轨迹的获取过程的描述,这里将不再继续进行赘述。
步骤S206,获取所述第一图像数据对应的投影变换矩阵,并将所述三维绘制轨迹和所述第一图像数据进行融合,得到第一融合图像数据,并获取所述第一融合图像数据的每个体像素点的三维坐标,作为三维像素坐标;
进一步地,请参见图10,是本发明实施例提供的一种获取第一融合图像数据的示意图;如图10所示,所述三维绘制轨迹可以为通过上述步骤S205所得的三维绘制轨迹,如图10所示,该三维绘制轨迹可以理解为用户在该虚拟世界中所绘制的笑脸图像,该三维绘制轨迹中包含多条历史渲染路径(即路径1、路径2、路径3、路径4、路径5)中的历史绘制点对应的绘制渲染数据,还包含所述目标绘制点对应的绘制渲染数据。其中,所述第一图像数据为所述终端屏幕所显示图像对应的三维图像数据,即该第一图像数据可以理解为将现实世界套在虚拟世界中所构成的具有立体展示属性的图像数据。该第一图像数据可以为图10所示的第一图像数据。因此,在虚拟世界中,可以将上述步骤S205所得三维绘制轨迹与所述第一图像数据进行融合,即可以将图10所示的第一图像数据和图10所示的三维绘制轨迹进行融合(即进行图像处理),得到图10所示的第一融合图像数据。应当理解,将所述三维绘制轨迹与所述第一图像数据进行融合的过程,可以理解为将两个对象(即所述三维绘制轨迹和所述第一图像数据)的透明度进行混合,以对这两个对象进行图像处理,从而得到如图10所示的第一融合图像数据。当然,对这两个对象对应的图像数据进行混合还可以有其它形式的图像处理方式,本发明实施例将不在此进行一一列举。
步骤S207,通过所述投影变换矩阵,确定所述三维像素坐标投影至所述终端屏幕上的二维位置坐标,并基于所述三维像素坐标对应的二维位置坐标显示投影后的第一融合图像数据;
具体地,所述目标终端在执行完上述步骤S206之后,可以获取到所述第一融合图像数据的每个体像素点的三维坐标,作为三维像素坐标,然后,所述目标终端可以进一步通过上述图4所对应实施例中的所述投影变换矩阵,确定所述三维像素坐标投影至所述终端屏幕上的二维位置坐标,并基于所述三维像素坐标对应的二维位置坐标显示投影后的第一融合图像数据;所述投影后的第一融合图像数据中包含投影后的三维绘制轨迹。
可见,在该目标终端进入AR画笔模块后,用户通过在终端屏幕上进行滑动操作,可以对应的将手指滑动过程对应的渲染路径(即三维路径)按照所述目标渲染格式进行渲染,以得到所述三维绘制轨迹,从而可以产生类似于在空间中绘画的效果,当将该三维绘制轨迹投影至终端屏幕时,可相应地改善该终端屏幕中所显示图像数据的展示效果。
步骤S208,若所述目标视点的第一视点坐标切换为第二视点坐标,则根据所述第二视点坐标更新所述目标视点的视角,所述近平面的纵横比,所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
应当理解,在所述目标三维模型中,所述目标视点为该目标终端内虚拟摄像机的聚焦点,该目标视点对应的可视范围可以为上述图6所示的视椎体所截取到的显示区域,因此,在该目标视点的+Z轴方向,所述近平面和所述远平面可以用于限定所述三维图像数据在所述目标三维模型中的显示区域。应当理解,上述图6所示的视椎体即为所该目标三维模型中的一个可视场景,比如,该可视场景内的三维图像数据可以为上述图10所对应实施例中的第一图像数据,且该第一图像数据对应的目标视点的视点坐标为第一视点坐标。当所述目标视点的视点坐标发生变动时,比如,现实世界中,目标用户在将该目标终端从第一位置A移动至第二位置B,因此,在检测到该目标终端的地理位置发生变动时,该目标终端内所述目标视点的视点坐标也将相应的发生变化(比如,可以由上述图8所示的视点1移动到视点2处),即该目标视点的视点坐标可以从所述第一视点坐标平移至第二视点坐标,进而可以更新该终端屏幕中所显示的图像对应的三维图像数据(即在现实世界中,该目标终端可将当前采集到的环境图像信息,套在所述虚拟世界中,以在该目标三维模型中,得到基于该视点2所对应的视椎体内的三维图像数据)。
步骤S209,在所述目标三维模型中,根据更新后的视角、更新后的纵横比、更新后的第一距离和更新后的第二距离,更新投影变换矩阵;
应当理解,该第二图像数据所对应的所述投影变换矩阵可以为上述图4所对应实施例中的投影变换矩阵的表达式。这里将不对更新所述投影变换矩阵的具体更新过程进行赘述。
步骤S210,根据所述更新后的视角更新所述终端屏幕上所显示的图像的三维图像数据,并将更新后的所述终端屏幕上所显示的图像的三维图像数据作为第二图像数据;
进一步地,请参见图11,是本发明实施例提供的一种获取第二融合图像数据的示意图。如图11所示,该第二融合图像数据为第二图像数据与该三维绘制轨迹进行融合后所得的具有立体展示属性的三维图像数据,其中,该第二图像数据可以理解为该第二视点坐标下所述终端屏幕所显示图像对应的三维图像数据,即相比于上述图10所示的第一图像数据,该第二图像数据可以理解为持有该目标终端的用户从地理位置A后退至地理位置B时,将导致在该终端屏幕上所显示图像的内容发生变化。即此时,该虚拟摄像机可以在该虚拟世界中看更新后的三维图像数据。换言之,该第二融合图像数据中的第二图像数据还可以理解为该目标终端基于该目标三维模型所具有的平移特性,将该目标三维模型的可视场景向后平移后所呈现的三维图像数据。
步骤S211,将所述第二图像数据与所述三维绘制轨迹进行融合,得到第二融合图像数据;
其中,应当理解,该三维绘制轨迹在产生之后,将固定存在于该目标三维模型中,于是,持有该目标终端的用户可以从各个角度上查看该三维绘制轨迹。由于所述目标视点的视点坐标的变化,进而会导致在该终端屏幕上所显示图像的内容发生变化,因此,所形成的第二融合图像数据所包含的体像素点也将不同于与所述第一融合图像数据所包含的体像素点,因为,在该虚拟世界中,+z轴方向的深度信息会发生变化。其中,所述目标终端获取所述第二融合图像数据的过程可参见上述图10所对应实施例中对所述第一融合图像数据的获取过程,这里将不再继续进行赘述。
步骤S212,通过更新后的投影变换矩阵,将所述第二融合图像数据投影至所述终端屏幕,并显示投影后的第二融合图像数据。
应当理解,投影变换后第二融合图像数据中三维绘制轨迹对应的二维位置坐标,不同于投影变换后第一融合图像数据中三维绘制轨迹对应的二维位置坐标。
本发明实施例在获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;根据所述第二坐标生成目标绘制点对应的绘制渲染数据,并根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。可见,本发明在获取到三维绘制指令时,可以获取二维平面上的屏幕控制点,并可进一步确定该屏幕控制点所映射的目标控制点在该目标三维模型中的位置坐标,以使用户针对终端屏幕上的操作可以间接反投影到该目标三维模型中,以产生在空间中画画的效果,然后,可以进一步将该目标三维模型中所产生的绘制渲染数据投影回终端屏幕进行显示,以改善终端屏幕中图像数据的展示效果,进而提高对图像数据进行涂鸦的展示效果。
进一步地,请参见图12,是本发明实施例提供的一种图像数据处理装置的结构示意图。如图12所示,所述图像数据处理装置1可以为上述图1所对应实施例中的目标客户端,所述图像数据处理装置1可以包括:控制点获取模块10,第一坐标确定模块20,第二坐标确定模块30,渲染数据生成模块40,渲染数据显示模块50;进一步地,所述图像数据处理装置1还可以包括:图像信息采集模块60和目标模型创建模块70;
所述控制点获取模块10,用于当获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;
所述第一坐标确定模块20,用于获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标;
其中,所述第一坐标确定模块20包括:二维坐标获取单元201,投影矩阵获取单元202和反投影变换单元203;
所述二维坐标获取单元201,用于获取所述屏幕控制点在所述终端屏幕上的二维位置坐标;
所述投影矩阵获取单元202,用于获取所述三维绘制指令对应的目标三维模型的投影变换矩阵;
所述投影矩阵获取单元202包括:第一数据确定子单元2021,参量获取子单元2022和变换矩阵确定子单元2023;
所述第一数据确定子单元2021,用于将所述终端屏幕所显示的图像对应的三维图像数据,作为第一图像数据;
所述参量获取子单元2022,用于在所述目标三维模型中,获取所述目标视点的视角、所述近平面的纵横比、所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
所述变换矩阵确定子单元2023,用于根据所述视角,所述纵横比,所述第一距离和所述第二距离,计算所述终端屏幕对应的第一图像数据的投影变换矩阵。
其中,所述第一数据确定子单元2021,参量获取子单元2022和变换矩阵确定子单元2023的具体实现方式可参见上述图4所对应实施例中对获取所述投影变换矩阵的具体过程的描述,这里将不再继续进行赘述。
所述反投影变换单元203,用于通过所述投影变换矩阵对所述屏幕控制点对应的二维位置坐标进行反投影变换,得到所述屏幕控制点在所述目标三维模型中的三维坐标,并将所述屏幕控制点在所述目标三维模型中的三维坐标作为第一坐标。
其中,所述二维坐标获取单元201,投影矩阵获取单元202和反投影变换单元203的具体实现方式可参见上述图4所对应实施例中对步骤S102的描述,这里将不再继续进行赘述。
所述第二坐标确定模块30,用于根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;
其中,所述第二坐标确定模块30包括:绘制平面创建单元301,绘制点确定单元302和第二坐标确定单元303;
所述绘制平面创建单元301,用于在所述目标三维模型中,获取所述目标视点的第一视点坐标,基于所述绘制指令在所述近平面和远平面之间创建所述屏幕控制点所映射的目标绘制点对应的绘制平面,并将所述绘制平面到所述目标视点之间的距离作为第三距离;
所述绘制点确定单元302,用于获取所述目标视点和所述屏幕控制点之间的延长线,并将所述延长线与所述绘制平面的交点,作为所述屏幕控制点所映射的目标绘制点;
所述第二坐标确定单元303,用于计算所述第三距离和所述第一距离之间的比值,并根据所述比值、所述第一视点坐标和所述第一坐标,确定所述目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标。
其中,所述绘制平面创建单元301,绘制点确定单元302和第二坐标确定单元303的具体实现方式可参见上述图4所对应实施例中对步骤S102中获取所述第二坐标的具体过程的描述,这里将不再继续进行赘述。
所述渲染数据生成模块40,用于根据所述第二坐标生成目标绘制点对应的绘制渲染数据;
其中,所述渲染数据生成模块40包括:坐标添加单元401和绘制轨迹确定单元402;
所述坐标添加单元401,用于将所述第二坐标添加至所述三维绘制指令对应的绘制队列;
所述绘制轨迹确定单元402,用于根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,对所述历史绘制点和所述目标绘制点之间的渲染路径进行渲染,得到三维绘制轨迹;所述三维绘制轨迹包含所述目标绘制点在终端屏幕上的二维位置坐标所对应的绘制渲染数据;
其中,所述绘制轨迹确定单元402包括:历史坐标获取子单元4021,渲染路径确定子单元4022和绘制轨迹确定子单元4023;
所述历史坐标获取子单元4021,用于获取所述屏幕控制点对应的目标渲染格式,并获取所述绘制队列中的历史绘制点,并将所述历史绘制点在所述目标三维模型中的三维坐标,作为历史坐标;
所述渲染路径确定子单元4022,用于根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,确定所述历史坐标和所述第二坐标之间的渲染路径;
所述绘制轨迹确定子单元4023,用于按照所述目标渲染格式对所述渲染路径进行渲染,得到所述三维绘制指令对应的三维绘制轨迹。
其中,所述历史坐标获取子单元4021,渲染路径确定子单元4022和绘制轨迹确定子单元4023的具体实现方式可参见上述图9所对应实施例中对步骤S205的描述,这里将不再继续进行赘述。
则所述渲染数据显示模块40,具体用于获取所述第一图像数据对应的投影变换矩阵,并将所述三维绘制轨迹和所述第一图像数据进行融合,得到第一融合图像数据,并获取所述第一融合图像数据的每个体像素点的三维坐标,作为三维像素坐标,并通过所述投影变换矩阵,确定所述三维像素坐标投影至所述终端屏幕上的二维位置坐标,并基于所述三维像素坐标对应的二维位置坐标显示投影后的第一融合图像数据;所述投影后的第一融合图像数据中包含投影后的三维绘制轨迹。
其中,所述坐标添加单元401和绘制轨迹确定单元402的具体实现方式可参见上述图4所对应实施例中对步骤S103中获取所述三维绘制轨迹的具体过程的描述,这里将不再继续进行赘述。应当理解,对于获取到的三维绘制轨迹,所述终端屏幕还可以进一步通过该渲染数据显示模块40,将该三维绘制轨迹与该终端屏幕所显示的图像对应的三维图像数据进行融合,以得到所述第一融合图像数据,并将该第一融合图像数据投影至该终端屏幕进行显示。
所述渲染数据显示模块50,用于根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。
应当理解,所述三维绘制轨迹包含所述目标绘制点在终端屏幕上的二维位置坐标所对应的绘制渲染数据;即三维绘制轨迹中每个绘制点对应的绘制渲染数据的生成过程均可参见生成所述目标绘制点对应的绘制渲染数据的具体过程的描述,这里将不再进行赘述。
可选地,所述渲染数据显示模块50,还用于若所述目标视点的第一视点坐标切换为第二视点坐标,则根据所述第二视点坐标更新所述目标视点的视角,所述近平面的纵横比,所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
所述渲染数据显示模块50,还用于在所述目标三维模型中,根据更新后的视角、更新后的纵横比、更新后的第一距离和更新后的第二距离,更新投影变换矩阵;
所述渲染数据显示模块50,还用于根据所述更新后的视角更新所述终端屏幕上所显示的图像的三维图像数据,并将更新后的所述终端屏幕上所显示的图像的三维图像数据作为第二图像数据;
所述渲染数据显示模块50,还用于将所述第二图像数据与所述三维绘制轨迹进行融合,得到第二融合图像数据;
所述渲染数据显示模块50,还用于通过更新后的投影变换矩阵,将所述第二融合图像数据投影至所述终端屏幕,并显示投影后的第二融合图像数据。
其中,所述控制点获取模块10,第一坐标确定模块20,第二坐标确定模块30,渲染数据生成模块40,渲染数据显示模块50的具体实现方式可参见上述图4所对应实施例中对步骤S101-步骤S103的描述,这里将不再继续进行赘述。
可选地,所述图像信息采集模块60,用于采集终端周围的环境图像信息,并在所述环境图像信息中提取目标对象的边缘轮廓特征,并根据三维建模参数和所述边缘轮廓特征,生成所述目标对象对应的三维图像数据;
所述目标模型创建模块70,用于根据所述目标对象对应的三维图像数据创建所述环境图像信息对应的目标三维模型,并生成所述目标三维模型对应的三维绘制指令;
其中,所述目标三维模型中包含所述终端对应的目标视点,以及三维图像数据对应的近平面和远平面;所述近平面和所述远平面用于限定所述三维图像数据在所述目标三维模型中的显示区域;所述目标视点是指所述目标对象在所述终端中的聚焦点。
其中,所述图像信息采集模块60和目标模型创建模块70的具体实现方式可参见上述图9所对应实施例中对步骤S201-步骤S202的描述,这里将不再继续进行赘述。
本发明实施例在获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;根据所述第二坐标生成目标绘制点对应的绘制渲染数据,并根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。可见,本发明在获取到三维绘制指令时,可以获取二维平面上的屏幕控制点,并可进一步确定该屏幕控制点所映射的目标控制点在该目标三维模型中的位置坐标,以使用户针对终端屏幕上的操作可以间接反投影到该目标三维模型中,以产生在空间中画画的效果,然后,可以进一步将该目标三维模型中所产生的绘制渲染数据投影回该终端屏幕进行显示,以改善终端屏幕中图像数据的展示效果,进而提高对图像数据进行涂鸦的展示效果。
进一步地,请参见图13,是本发明实施例提供的另一种图像数据处理装置的结构示意图。如图13所示,所述图像数据处理装置1000可以应用于上述图1对应实施例中的目标客户终端,所述图像数据处理装置1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选地可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选地还可以是至少一个位于远离前述处理器1001的存储装置。如图13所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图13所示的图像数据处理装置1000中,网络接口1004主要用于提供网络通信功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
当获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;
获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;
根据所述第二坐标生成目标绘制点对应的绘制渲染数据,并根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。
应当理解,本发明实施例中所描述的图像数据处理装置1000可执行前文图4或图9所对应实施例中对所述图像数据处理方法的描述,也可执行前文图12所对应实施例中对所述图像数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的图像数据处理装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图4或图9所对应实施例中对所述图像数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (15)
1.一种图像数据处理方法,其特征在于,包括:
当获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;
获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,并根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;
根据所述第二坐标生成目标绘制点对应的绘制渲染数据,并根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。
2.根据权利要求1所述的方法,其特征在于,还包括:
采集终端周围的环境图像信息,并在所述环境图像信息中提取目标对象的边缘轮廓特征,并根据三维建模参数和所述边缘轮廓特征,生成所述目标对象对应的三维图像数据;
根据所述目标对象对应的三维图像数据创建所述环境图像信息对应的目标三维模型,并生成所述目标三维模型对应的三维绘制指令;
其中,所述目标三维模型中包含所述终端对应的目标视点,以及三维图像数据对应的近平面和远平面;所述近平面和所述远平面用于限定所述三维图像数据在所述目标三维模型中的显示区域;所述目标视点是指所述目标对象在所述终端中的聚焦点。
3.根据权利要求2所述的方法,其特征在于,所述获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标,包括:
获取所述屏幕控制点在所述终端屏幕上的二维位置坐标,并获取所述三维绘制指令对应的目标三维模型的投影变换矩阵;
通过所述投影变换矩阵对所述屏幕控制点对应的二维位置坐标进行反投影变换,得到所述屏幕控制点在所述目标三维模型中的三维坐标,并将所述屏幕控制点在所述目标三维模型中的三维坐标作为第一坐标。
4.根据权利要求3所述的方法,其特征在于,所述获取所述三维绘制指令对应的目标三维模型的投影变换矩阵,包括:
将所述终端屏幕所显示的图像对应的三维图像数据,作为第一图像数据;
在所述目标三维模型中,获取所述目标视点的视角、所述近平面的纵横比、所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
根据所述视角,所述纵横比,所述第一距离和所述第二距离,计算所述终端屏幕对应的第一图像数据的投影变换矩阵。
5.根据权利要求4所述的方法,其特征在于,所述根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标,包括:
在所述目标三维模型中,获取所述目标视点的第一视点坐标,基于所述绘制指令在所述近平面和远平面之间创建所述屏幕控制点所映射的目标绘制点对应的绘制平面,并将所述绘制平面到所述目标视点之间的距离作为第三距离;
获取所述目标视点和所述屏幕控制点之间的延长线,并将所述延长线与所述绘制平面的交点,作为所述屏幕控制点所映射的目标绘制点;
计算所述第三距离和所述第一距离之间的比值,并根据所述比值、所述第一视点坐标和所述第一坐标,确定所述目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标。
6.根据权利要求4所述的方法,其特征在于,所述根据所述第二坐标生成目标绘制点对应的绘制渲染数据,包括:
将所述第二坐标添加至所述三维绘制指令对应的绘制队列,并根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,对所述历史绘制点和所述目标绘制点之间的渲染路径进行渲染,得到三维绘制轨迹;所述三维绘制轨迹包含所述目标绘制点在终端屏幕上的二维位置坐标所对应的绘制渲染数据;
则所述根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示,包括:
获取所述第一图像数据对应的投影变换矩阵,并将所述三维绘制轨迹和所述第一图像数据进行融合,得到第一融合图像数据,并获取所述第一融合图像数据的每个体像素点的三维坐标,作为三维像素坐标;
通过所述投影变换矩阵,确定所述三维像素坐标投影至所述终端屏幕上的二维位置坐标,并基于所述三维像素坐标对应的二维位置坐标显示投影后的第一融合图像数据;所述投影后的第一融合图像数据中包含投影后的三维绘制轨迹。
7.根据权利要求6所述的方法,其特征在于,所述根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,对所述历史绘制点和所述目标绘制点之间的渲染路径进行渲染,得到三维绘制轨迹,包括:
获取所述屏幕控制点对应的目标渲染格式,并获取所述绘制队列中的历史绘制点,并将所述历史绘制点在所述目标三维模型中的三维坐标,作为历史坐标;
根据所述绘制队列中历史绘制点和所述目标绘制点之间的队列顺序,确定所述历史坐标和所述第二坐标之间的渲染路径;
按照所述目标渲染格式对所述渲染路径进行渲染,得到所述三维绘制指令对应的三维绘制轨迹。
8.根据权利要求7所述的方法,其特征在于,还包括:
若所述目标视点的第一视点坐标切换为第二视点坐标,则根据所述第二视点坐标更新所述目标视点的视角,所述近平面的纵横比,所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
在所述目标三维模型中,根据更新后的视角、更新后的纵横比、更新后的第一距离和更新后的第二距离,更新投影变换矩阵;
根据所述更新后的视角更新所述终端屏幕上所显示的图像的三维图像数据,并将更新后的所述终端屏幕上所显示的图像的三维图像数据作为第二图像数据;
将所述第二图像数据与所述三维绘制轨迹进行融合,得到第二融合图像数据;
通过更新后的投影变换矩阵,将所述第二融合图像数据投影至所述终端屏幕,并显示投影后的第二融合图像数据。
9.一种图像数据处理装置,其特征在于,包括:
控制点获取模块,用于当获取到三维绘制指令时,根据所述三维绘制指令获取终端屏幕上的屏幕控制点;
第一坐标确定模块,用于获取所述屏幕控制点在所述三维绘制指令对应的目标三维模型中的三维坐标,作为第一坐标;
第二坐标确定模块,用于根据所述目标三维模型中目标视点的第一视点坐标、所述第一坐标,确定所述屏幕控制点所映射的目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标;所述目标绘制点是指位于嵌入在所述目标三维模型中的绘制平面上的点;
渲染数据生成模块,用于根据所述第二坐标生成目标绘制点对应的绘制渲染数据;
渲染数据显示模块,用于根据所述第二坐标确定所述目标绘制点映射到所述终端屏幕上的二维位置坐标,并基于所述目标绘制点对应的二维位置坐标对所述绘制渲染数据进行显示。
10.根据权利要求9所述的装置,其特征在于,还包括:
图像信息采集模块,用于采集终端周围的环境图像信息,并在所述环境图像信息中提取目标对象的边缘轮廓特征,并根据三维建模参数和所述边缘轮廓特征,生成所述目标对象对应的三维图像数据;
目标模型创建模块,用于根据所述目标对象对应的三维图像数据创建所述环境图像信息对应的目标三维模型,并生成所述目标三维模型对应的三维绘制指令;
其中,所述目标三维模型中包含所述终端对应的目标视点,以及三维图像数据对应的近平面和远平面;所述近平面和所述远平面用于限定所述三维图像数据在所述目标三维模型中的显示区域;所述目标视点是指所述目标对象在所述终端中的聚焦点。
11.根据权利要求10所述的装置,其特征在于,所述第一坐标确定模块,包括:
二维坐标获取单元,用于获取所述屏幕控制点在所述终端屏幕上的二维位置坐标;
投影矩阵获取单元,用于获取所述三维绘制指令对应的目标三维模型的投影变换矩阵;
反投影变换单元,用于通过所述投影变换矩阵对所述屏幕控制点对应的二维位置坐标进行反投影变换,得到所述屏幕控制点在所述目标三维模型中的三维坐标,并将所述屏幕控制点在所述目标三维模型中的三维坐标作为第一坐标。
12.根据权利要求11所述的装置,其特征在于,所述投影矩阵获取单元包括:
第一数据确定子单元,用于将所述终端屏幕所显示的图像对应的三维图像数据,作为第一图像数据;
参量获取子单元,用于在所述目标三维模型中,获取所述目标视点的视角、所述近平面的纵横比、所述近平面与所述当前视点之间的第一距离以及所述远平面与所述当前视点之间的第二距离;
变换矩阵确定子单元,用于根据所述视角,所述纵横比,所述第一距离和所述第二距离,计算所述终端屏幕对应的第一图像数据的投影变换矩阵。
13.根据权利要求12所述的装置,其特征在于,所述第二坐标确定模块包括:
绘制平面创建单元,用于在所述目标三维模型中,获取所述目标视点的第一视点坐标,基于所述绘制指令在所述近平面和远平面之间创建所述屏幕控制点所映射的目标绘制点对应的绘制平面,并将所述绘制平面到所述目标视点之间的距离作为第三距离;
绘制点确定单元,用于获取所述目标视点和所述屏幕控制点之间的延长线,并将所述延长线与所述绘制平面的交点,作为所述屏幕控制点所映射的目标绘制点;
第二坐标确定单元,用于计算所述第三距离和所述第一距离之间的比值,并根据所述比值、所述第一视点坐标和所述第一坐标,确定所述目标绘制点在所述目标三维模型中的三维坐标,作为第二坐标。
14.一种图像数据处理装置,其特征在于,包括:处理器和存储器;
所述处理器与存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1-8任一项所述的方法。
15.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810791620.XA CN110163942B (zh) | 2018-07-18 | 2018-07-18 | 一种图像数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810791620.XA CN110163942B (zh) | 2018-07-18 | 2018-07-18 | 一种图像数据处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110163942A true CN110163942A (zh) | 2019-08-23 |
CN110163942B CN110163942B (zh) | 2023-02-14 |
Family
ID=67645142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810791620.XA Active CN110163942B (zh) | 2018-07-18 | 2018-07-18 | 一种图像数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110163942B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110675313A (zh) * | 2019-09-27 | 2020-01-10 | 珠海金山网络游戏科技有限公司 | 一种二维平面中的定位方法及装置 |
CN111489428A (zh) * | 2020-04-20 | 2020-08-04 | 北京字节跳动网络技术有限公司 | 图像生成方法、装置、电子设备及计算机可读存储介质 |
CN111651056A (zh) * | 2020-06-10 | 2020-09-11 | 浙江商汤科技开发有限公司 | 一种沙盘演示方法、装置、计算机设备及存储介质 |
CN111784823A (zh) * | 2020-07-03 | 2020-10-16 | 江苏徐工工程机械研究院有限公司 | 轻量化三维模型防测绘显示方法和装置、存储介质 |
CN112308757A (zh) * | 2020-10-19 | 2021-02-02 | 武汉中科通达高新技术股份有限公司 | 一种数据展示方法和移动终端 |
CN112348967A (zh) * | 2020-10-29 | 2021-02-09 | 国网浙江省电力有限公司 | 一种电力设备三维模型与实时视频无缝融合的方法 |
CN112529769A (zh) * | 2020-12-04 | 2021-03-19 | 威创集团股份有限公司 | 二维图像适应屏幕的方法及系统、计算机设备和存储介质 |
CN112686990A (zh) * | 2021-01-07 | 2021-04-20 | 腾讯科技(深圳)有限公司 | 一种三维模型显示方法、装置、存储介质和计算机设备 |
CN112783585A (zh) * | 2020-07-21 | 2021-05-11 | 华人运通(上海)云计算科技有限公司 | 界面调整方法、装置、电子设备、车辆及存储介质 |
CN114661399A (zh) * | 2022-03-23 | 2022-06-24 | 中电莱斯信息系统有限公司 | 一种基于空间几何的三维可视化大屏构建方法 |
CN116490884A (zh) * | 2020-10-21 | 2023-07-25 | 西安大医集团股份有限公司 | 医学图像处理方法、设备及放疗系统 |
WO2023140785A3 (zh) * | 2022-01-24 | 2023-11-16 | 脸萌有限公司 | 特效图像处理方法、装置、电子设备及存储介质 |
CN118212390A (zh) * | 2024-05-22 | 2024-06-18 | 南京维赛客网络科技有限公司 | 使用虚拟场景画笔进行空间绘制的方法、系统及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104036547A (zh) * | 2014-06-30 | 2014-09-10 | 清华大学 | 基于Leap Motion控制的三维笔刷实时生成网络模型的方法与装置 |
CN105701828A (zh) * | 2016-01-14 | 2016-06-22 | 广州视睿电子科技有限公司 | 一种图像处理方法和装置 |
CN106127859A (zh) * | 2016-06-28 | 2016-11-16 | 华中师范大学 | 一种移动增强现实型涂鸦绘本的真实感生成方法 |
US20170061693A1 (en) * | 2015-09-02 | 2017-03-02 | Jeffrey Kohler | Augmented-reality imaging |
CN107424215A (zh) * | 2017-07-06 | 2017-12-01 | 广州梦巴信息科技有限公司 | 一种数字互动涂鸦系统 |
CN107564089A (zh) * | 2017-08-10 | 2018-01-09 | 腾讯科技(深圳)有限公司 | 三维图像处理方法、装置、存储介质和计算机设备 |
-
2018
- 2018-07-18 CN CN201810791620.XA patent/CN110163942B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104036547A (zh) * | 2014-06-30 | 2014-09-10 | 清华大学 | 基于Leap Motion控制的三维笔刷实时生成网络模型的方法与装置 |
US20170061693A1 (en) * | 2015-09-02 | 2017-03-02 | Jeffrey Kohler | Augmented-reality imaging |
CN105701828A (zh) * | 2016-01-14 | 2016-06-22 | 广州视睿电子科技有限公司 | 一种图像处理方法和装置 |
CN106127859A (zh) * | 2016-06-28 | 2016-11-16 | 华中师范大学 | 一种移动增强现实型涂鸦绘本的真实感生成方法 |
CN107424215A (zh) * | 2017-07-06 | 2017-12-01 | 广州梦巴信息科技有限公司 | 一种数字互动涂鸦系统 |
CN107564089A (zh) * | 2017-08-10 | 2018-01-09 | 腾讯科技(深圳)有限公司 | 三维图像处理方法、装置、存储介质和计算机设备 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110675313A (zh) * | 2019-09-27 | 2020-01-10 | 珠海金山网络游戏科技有限公司 | 一种二维平面中的定位方法及装置 |
CN111489428A (zh) * | 2020-04-20 | 2020-08-04 | 北京字节跳动网络技术有限公司 | 图像生成方法、装置、电子设备及计算机可读存储介质 |
CN111489428B (zh) * | 2020-04-20 | 2023-06-30 | 北京字节跳动网络技术有限公司 | 图像生成方法、装置、电子设备及计算机可读存储介质 |
CN111651056A (zh) * | 2020-06-10 | 2020-09-11 | 浙江商汤科技开发有限公司 | 一种沙盘演示方法、装置、计算机设备及存储介质 |
CN111784823A (zh) * | 2020-07-03 | 2020-10-16 | 江苏徐工工程机械研究院有限公司 | 轻量化三维模型防测绘显示方法和装置、存储介质 |
CN111784823B (zh) * | 2020-07-03 | 2023-10-03 | 江苏徐工工程机械研究院有限公司 | 轻量化三维模型防测绘显示方法和装置、存储介质 |
CN112783585A (zh) * | 2020-07-21 | 2021-05-11 | 华人运通(上海)云计算科技有限公司 | 界面调整方法、装置、电子设备、车辆及存储介质 |
CN112308757A (zh) * | 2020-10-19 | 2021-02-02 | 武汉中科通达高新技术股份有限公司 | 一种数据展示方法和移动终端 |
CN112308757B (zh) * | 2020-10-19 | 2024-03-22 | 武汉中科通达高新技术股份有限公司 | 一种数据展示方法和移动终端 |
CN116490884A (zh) * | 2020-10-21 | 2023-07-25 | 西安大医集团股份有限公司 | 医学图像处理方法、设备及放疗系统 |
CN112348967A (zh) * | 2020-10-29 | 2021-02-09 | 国网浙江省电力有限公司 | 一种电力设备三维模型与实时视频无缝融合的方法 |
CN112529769A (zh) * | 2020-12-04 | 2021-03-19 | 威创集团股份有限公司 | 二维图像适应屏幕的方法及系统、计算机设备和存储介质 |
CN112529769B (zh) * | 2020-12-04 | 2023-08-18 | 威创集团股份有限公司 | 二维图像适应屏幕的方法及系统、计算机设备和存储介质 |
CN112686990A (zh) * | 2021-01-07 | 2021-04-20 | 腾讯科技(深圳)有限公司 | 一种三维模型显示方法、装置、存储介质和计算机设备 |
WO2023140785A3 (zh) * | 2022-01-24 | 2023-11-16 | 脸萌有限公司 | 特效图像处理方法、装置、电子设备及存储介质 |
CN114661399A (zh) * | 2022-03-23 | 2022-06-24 | 中电莱斯信息系统有限公司 | 一种基于空间几何的三维可视化大屏构建方法 |
CN118212390A (zh) * | 2024-05-22 | 2024-06-18 | 南京维赛客网络科技有限公司 | 使用虚拟场景画笔进行空间绘制的方法、系统及存储介质 |
CN118212390B (zh) * | 2024-05-22 | 2024-08-23 | 南京维赛客网络科技有限公司 | 使用虚拟场景画笔进行空间绘制的方法、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110163942B (zh) | 2023-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110163942A (zh) | 一种图像数据处理方法和装置 | |
CN106548516B (zh) | 三维漫游方法和装置 | |
CN108257219B (zh) | 一种实现全景多点漫游的方法 | |
CN115100339B (zh) | 图像生成方法、装置、电子设备和存储介质 | |
CN106157354B (zh) | 一种三维场景切换方法及系统 | |
US20180276882A1 (en) | Systems and methods for augmented reality art creation | |
Portalés et al. | Augmented reality and photogrammetry: A synergy to visualize physical and virtual city environments | |
CN109887003A (zh) | 一种用于进行三维跟踪初始化的方法与设备 | |
JP2004537082A (ja) | 仮想現実環境における実時間バーチャル・ビューポイント | |
CN101477700B (zh) | 面向Google Earth与Sketch Up的真三维立体显示方法 | |
CN109360262A (zh) | 基于cad图生成三维模型的室内定位系统及方法 | |
EP3533218B1 (en) | Simulating depth of field | |
CN101477701A (zh) | 面向AutoCAD和3DS MAX软件的植入式真三维立体渲染方法 | |
WO2014094874A1 (en) | Method and apparatus for adding annotations to a plenoptic light field | |
Sandnes | Sketching 3D immersed experiences rapidly by hand through 2D cross sections | |
Zhuang | Film and television industry cloud exhibition design based on 3D imaging and virtual reality | |
CN111949904A (zh) | 一种基于浏览器的数据处理方法、装置以及终端 | |
US11043019B2 (en) | Method of displaying a wide-format augmented reality object | |
CN116935008A (zh) | 一种基于混合现实的展示交互方法和装置 | |
Shen et al. | Urban planning using augmented reality | |
Teng et al. | Augmented-reality-based 3D Modeling system using tangible interface | |
CN110148086A (zh) | 稀疏深度图的深度补齐方法、装置及三维重建方法、装置 | |
Dong et al. | Resolving incorrect visual occlusion in outdoor augmented reality using TOF camera and OpenGL frame buffer | |
CN114255328A (zh) | 一种基于单视图与深度学习的古文物三维重建方法 | |
TW201019265A (en) | Auxiliary design system and method for drawing and real-time displaying 3D objects |
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 |