CN105007480A - 一种三维数据的裸眼3d显示方法及系统 - Google Patents
一种三维数据的裸眼3d显示方法及系统 Download PDFInfo
- Publication number
- CN105007480A CN105007480A CN201510392209.1A CN201510392209A CN105007480A CN 105007480 A CN105007480 A CN 105007480A CN 201510392209 A CN201510392209 A CN 201510392209A CN 105007480 A CN105007480 A CN 105007480A
- Authority
- CN
- China
- Prior art keywords
- eye
- engine
- eye view
- dimensional data
- bore hole
- 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
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明提供了一种三维数据的裸眼3D显示方法及系统。一种三维数据的裸眼3D显示方法包括:根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区;调用所述3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图;将所述3D左眼视图、3D右眼视图分别对应显示在所述裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。本发明可以得到物体逼真的立体影像,真实地显示三维物体,使用户直观地看到复杂三维物体中的细节,可以在移动终端中实现,可交互操作便于用户手势操作从不同角度观察物体,实时的旋转、平移、缩放所观察物体。
Description
技术领域
本发明涉及裸眼3D显示领域,尤其涉及一种三维数据的裸眼3D显示方法及系统。
背景技术
目前,利用专业三维软件设计出的三维物体的三维数据是三维空间的,由于显示技术的局限,只能在平面的显示器上通过展示有透视、光照、颜色信息的平面图来展示三维物体。用平面图进行展示,对结构相对简单的物体,还可以较好的展示物体信息,但对于对较为复杂的物体,如发动机构造图,由于细节太多,平面图所展示出的立体感知效果就不够理想了。专业三维软件的模型,主要用于专业人员之间的交流,一般在电脑显示器上显示,对于信息交流、产品展示,教育教学,在使用移动的便利性上有着巨大的限制,从而限制了立体显示的应用范围。销售行业人员在所售产品因体积重量等限制无法携带时,通过资料也无法很好展示。工业制造产品的设计人员,在交流设计成果,展示设计成果时受到地理局限。在3D打印方面,用户在得到三维数据文件,打印前预览效果不够直观。
发明内容
本发明实施例提供一种三维数据的裸眼3D显示方法及系统,用于解决通过裸眼3D技术来显示三维数据,使用户3D体验更逼真的问题。
本发明实施例采用以下技术方案:
一种三维数据的裸眼3D显示方法,该方法包括:
根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区;
调用所述3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图;
将所述3D左眼视图、3D右眼视图分别对应显示在所述裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
优选的,所述调用所述3D引擎的绘图指令之前,还包括:将获取到的通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给所述3D引擎。
优选的,所述将所述3D左眼视图、3D右眼视图分别对应显示在所述裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上,包括:
判断所述裸眼3D显示屏的像素区域是否对应所述裸眼3D显示屏的3D左眼图显示区,若是,则在该像素区域显示3D左眼视图的对应区域,若不是,则在该像素区域显示3D右眼视图的对应区域。
优选的,所述调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图,包括:
针对预设的用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D右眼视图;
针对预设的用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图。
优选的,所述用于模拟人的左眼视线方向和所述用于模拟人的右眼视线方向均为从所述相机位置指向三维数据的物体预设中心的方向,且所述用于模拟人的左眼视线方向和所述用于模拟人的右眼视线方向相差2至10度。
优选的,所述绘制所述三维数据的3D左眼视图和3D右眼视图时,包括:
判断当前绘制的像素区域是否对应所述3D右眼视区,若是,则在所述像素区域绘制所述3D右眼视图,若不是,则在所述像素区域绘制所述3D左眼视图。
优选的,所述调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图,包括:
通过触屏获取到用户输入的操作指令特征,根据预置算法对所述操作指令特征进行处理,更新所述3D引擎的相应绘图指令参数;
针对更新后的3D引擎的绘图指令参数调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图。
优选的,所述通过触屏获取到用户输入的操作指令特征,根据预置算法对所述操作指令特征进行处理,更新所述3D引擎的相应绘图指令参数,包括:
若通过触屏实时获取到用户输入的旋转操作指令向量,根据预置的旋转算法对所述旋转操作指令特征向量进行处理,更新所述3D引擎的相机位置参数和相机视线参数;
若通过触屏实时获取到用户输入的平移操作指令向量,根据预置的平移算法对所述平移操作指令向量进行处理,更新所述3D引擎的相机位置参数和缩放基准点;
若通过触屏实时获取到用户输入的缩放操作指令距离,根据预置的缩放算法对所述缩放操作指令距离进行处理,更新所述3D引擎的缩放系数。
一种三维数据的裸眼3D显示系统,该系统包括:
获取显示区单元,用于根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区;
绘图单元,用于调用所述3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图;
显示单元,用于将所述3D左眼视图、3D右眼视图分别对应显示在所述裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
优选的,所述绘图单元,具体用于:针对预设的用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D右眼视图;针对预设的用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图。
优选的,所述绘制单元,具体用于:
判断当前绘制的像素区域是否对应所述3D右眼视区,若是,则在所述像素区域绘制所述3D右眼视图,若不是,则在所述像素区域绘制所述3D左眼视图。
优选的,所述绘图单元包括:
参数更新模块,用于通过触屏获取到用户输入的操作指令特征,根据预置算法对所述操作指令特征进行处理,更新所述3D引擎的相应绘图指令参数;
更新绘制模块,用于针对更新后的3D引擎的绘图指令参数调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图。
优选的,所述显示单元,具体用于:
判断所述裸眼3D显示屏的像素区域是否对应所述裸眼3D显示屏的3D左眼图显示区,若是,则在该像素区域显示3D左眼视图的对应区域,若不是,则在该像素区域显示3D右眼视图的对应区域。
与现有技术相比,本发明一种三维数据的裸眼3D显示方法及系统,具有以下有益效果:在智能终端利用裸眼3D技术结合3D引擎,可以得到物体逼真的的立体影像,真实地显示三维物体,使用户直观的看到复杂三维物体中的细节,可以在移动终端中实现,可交互操作便于用户手势操作从不同角度观察物体,实时的旋转、平移、缩放所观察物体。
附图说明
图1是本发明提供的一种三维数据的裸眼3D显示方法的第一个实施例的方法流程图。
图2是本发明提供的一种三维数据的裸眼3D显示方法及系统中的裸眼3D显示屏的上柱镜或光栅的排列位置示意图。
图3是本发明提供的一种三维数据的裸眼3D显示方法的第二个实施例的方法流程图。
图4是本发明提供的一种三维数据的裸眼3D显示方法的第三个实施例的方法流程图。
图5是本发明提供的一种三维数据的裸眼3D显示系统的第一个实施例的结构框图。
图6是本发明提供的一种三维数据的裸眼3D显示系统的第二个实施例的结构框图。
图7是本发明提供的一种三维数据的裸眼3D显示系统的第三个实施例的结构框图。
具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出根据本发明提供的一种三维数据的裸眼3D显示方法第一个实施例的方法流程图。本实施例的一种三维数据的裸眼3D显示方法主要由智能终端来执行。其中,所述智能终端的硬件装置包括但不限于:个人电脑、笔记本电脑、手机、平板电脑等。本实施例中,将3D左眼视图和3D右眼视图完全绘制好后进行判断显示。该智能终端为带有柱镜或光栅的显示屏为裸眼3D显示屏,该方法包括以下步骤:
步骤101:根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区。
在3D左眼图显示区,裸眼3D显示屏上柱镜或光栅将显示图像折射给左眼区域,在3D右眼图显示区,裸眼3D显示上柱镜或光栅屏将显示图像折射给右眼区域。其中,左眼区域为使用裸眼3D显示屏时用户左眼的理想观看区域,右眼区域为使用裸眼3D显示屏时用户左眼的理想观看区域。
例如,图2中示意的是柱镜竖贴且每个柱镜覆盖两个像素的情况,此情况下,奇数列像素为右眼图显示区,偶数列像素为左眼图显示区。
步骤102:调用3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图。
其中,3D左眼视图为模拟人左眼看到的3D物体的视图,3D右眼视图为模拟人右眼看到的3D物体的视图。绘制预先获取的三维数据的3D左眼视图和3D右眼视图,具体为在预设的显示组件上绘制三维数据的3D左眼视图和3D右眼视图,显示组件为屏幕上的一个视频窗口。
具体的,针对预设的用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D右眼视图。针对预设的用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D左眼视图。
其中,3D引擎可以为但不限于Anroid平台中的opengl es引擎,3D引擎绘图之前,会利用3D引擎接口,传给3D引擎一些数据,如在opengl es引擎中的如下数据:三维坐标数据、顶点法向量数据、纹理坐标数据、照明光源的空间位置、物体各方向的位移、物体相对原始坐标旋转的角度、照相机的空间位置、照相机的朝向、显示的空间范围、显示的投影方式,缩放系数,纹理图片等,3D引擎接收这些数据后,会自动在专门的显示组件上,画出我需要的物体图像。在opengl es引擎中,用于模拟人的右眼位置或左眼位置的3D引擎相机位置参数即为照相机的空间位置和用于模拟人的右眼视线或左眼视线方向的3D引擎相机方向参数即为照相机的朝向,在绘制三维数据的3D左眼视图和3D右眼视图时,opengl es引擎中其他参数均相同,仅照相机的空间位置和照相机的朝向有所不同,绘制出的3D左眼视图和3D右眼视图相差一个视差。
本实施例中,用于模拟左眼位置的3D引擎相机位置参数和用于模拟右眼位置的3D引擎相机位置参数与三维数据的物体预设中心的距离均为物体最大直径的5至6倍,用于模拟人的左眼视线方向和用于模拟人的右眼视线方向均为从相机位置指向三维数据的物体预设中心的方向,且用于模拟人的左眼视线方向和用于模拟人的右眼视线方向相差2至8度,优选相差6度左右。
例如,三维数据的物体预设中心为坐标原点,用于模拟右眼位置的3D引擎相机位置参数与三维数据的物体预设中心的距离为物体最大直径的5倍,则用于模拟右眼位置的3D引擎相机位置参数A为:[sin(a)*5b,0,cos(a)*5b],用于模拟人的右眼视线方向的3D引擎相机方向参数为用于模拟左眼位置的3D引擎相机位置参数为,[sin(a+6°)*5b,0,cos(a+6°)*5b],其中,b为物体最大直径,a为预设角度。
优选的,调用3D引擎的绘图指令之前,还包括步骤104:将获取到的通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给3D引擎。
例如,将至少一个stl格式文件和/或至少一个obj格式文件解析成与opengl es引擎匹配的三维数据,并传送给opengl es引擎。具体的,读取至少一个stl格式文件和/或至少一个obj格式文件,将其中的三维坐标数据、纹理坐标数据(如果有的话)、顶点法向量数据,读取到内存重新组装成opengl引擎接口可接收的数据形式(一种数组形式)。由于不同格式的数据组织方式不一样,所以读取的时候,会根据各格式的组织方式,找到显示需要的数据,读进opengl es引擎,便于应用在3D设计的成果展示或3D打印的前期预览中,且通过安卓平台可以不受地理限制地,随时随地的进行展示。将其解析方法为本领域技术人员可以实现,在此不再赘述。
步骤103:将3D左眼视图、3D右眼视图分别对应显示在裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
优选的,判断裸眼3D显示屏的像素区域是否对应裸眼3D显示屏的3D左眼图显示区,若是,则在该像素区域显示3D左眼视图的对应区域,其中,对应区域为与该像素区域的坐标相同的3D左眼视图区域,若不是,则在该像素区域显示3D右眼视图的对应区域,其中,对应区域为与该像素区域的坐标相同的3D右眼视图区域。
如上例中,判断当前绘制的像素区域为奇数列,则对应裸眼3D显示屏的3D右眼图显示区,在该像素区域显示3D左眼视图的对应区域;为偶数列,则对应裸眼3D显示屏的3D左眼图显示区,在该像素区域显示3D左眼视图的对应区域。
图3示出根据本发明提供的一种三维数据的裸眼3D显示方法第二个实施例的方法流程图。本实施例的一种三维数据的裸眼3D显示方法主要由智能终端来执行。本实施例中,一边判断像素区域的对应视图边绘制视图,该智能终端为带有柱镜或光栅的显示屏为裸眼3D显示屏,该方法包括以下步骤:
步骤201:根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区。该步骤的执行过程与步骤101相同。
步骤202:调用3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图。绘制3D左眼视图和3D右眼视图时,判断当前绘制的像素区域是否对应3D右眼视区,若是,则在像素区域绘制3D右眼视图,若不是,则在像素区域绘制3D左眼视图。
绘制三维数据的3D左眼视图时,判断当前绘制的像素区域是否对应3D右眼视区,若不是,则针对预设的用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制三维数据的3D左眼视图。
绘制三维数据的3D右眼视图时,判断当前绘制的像素区域是否对应3D右眼视区,若是,则针对预设的用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D右眼视图。
优选的,调用3D引擎的绘图指令之前,还包括步骤221:将获取到的通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给所述3D引擎。
步骤203:将3D左眼视图、3D右眼视图分别对应显示在裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
图4示出根据本发明提供的一种三维数据的裸眼3D显示方法第三个实施例的方法流程图。本实施例的一种三维数据的裸眼3D显示方法主要由智能终端来执行。本实施例中加入了人机交互步骤,使通过获取用户的操作指令特征,绘制3D左眼视图或3D右眼视图,实现平移、旋转、缩放等操作,该智能终端为带有柱镜或光栅的显示屏为裸眼3D显示屏,该方法包括以下步骤:
步骤301:根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区。该步骤的执行过程与步骤101相同。
其中,绘制预先获取的三维数据的3D左眼视图和3D右眼视图,具体为在预设的显示组件上绘制三维数据的3D左眼视图和3D右眼视图,显示组件为屏幕上的一个视频窗口。
步骤302:调用3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图。
优选的,步骤302中还包括步骤321和步骤322。
步骤321:通过触屏获取到用户输入的操作指令特征,根据预置算法对操作指令特征进行处理,更新3D引擎的相应绘图指令参数。
具体的,根据预置算法对操作指令特征进行处理,更新3D引擎的相应绘图指令参数,包括:
若通过触屏实时获取到用户输入的旋转操作指令向量,根据预置的旋转算法对旋转操作指令特征向量进行处理,更新3D引擎的相机位置参数和相机视线参数。
例如,在Anroid平台中的opengl es引擎中,若通过触屏实时获取到用户输入的单手指滑动向量,预设绕z轴旋转(当然也可以设置为绕其他轴旋转),单手指滑动向量的x轴分量的像素数量乘以单位像素角度得到x轴旋转角度,单手指滑动向量的y轴分量的像素数量乘以单位像素角度作为y轴旋转角度,更新物体相对原始坐标旋转的角度,相当于更新了3D引擎的相机位置参数和相机视线参数。
若通过触屏实时获取到用户输入的平移操作指令向量,根据预置的平移算法对平移操作指令向量进行处理,更新3D引擎的相机位置参数和缩放基准点。
例如,在Anroid平台中的opengl es引擎中,若选中屏幕中的平移工具后,通过触屏实时获取到用户输入的单手指滑动向量,预设z轴固定不动,单手指滑动向量的x轴分量的像素数量乘以单位像素长度得到x轴平移距离,单手指滑动向量的y轴分量的像素数量乘以单位像素长度作为y轴平移距离,将照相机的空间位置向单手滑动向量相反方向平移,分别沿x轴平移x轴平移距离和沿y轴平移y轴平移距离,缩放基准点由于从前在3D物体上,也分别向相反方向沿x轴平移x轴平移距离和沿y轴平移y轴平移距离,最终得到更新3D引擎的照相机的空间位置和3D数据的缩放基准点。
若通过触屏实时获取到用户输入的缩放操作指令距离,根据预置的缩放算法对缩放操作指令距离进行处理,更新3D引擎的缩放系数。
例如,在Anroid平台中的opengl es引擎中,若通过触屏实时获取到用户输入的双手指滑动过程中的距离,3D引擎将当前两指的距离与上次两指距离的比值作为缩放比例乘以上一次绘制的缩放系数,更新了3D引擎的缩放系数。
步骤322:针对更新后的3D引擎的绘图指令参数调用3D引擎的绘图指令,绘制三维数据的3D左眼视图和3D右眼视图。
具体的,针对更新后的3D引擎的绘图指令参数中用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D右眼视图。
针对更新后的3D引擎的绘图指令参数中用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D左眼视图。
优选的,绘制三维数据的3D左眼视图和3D右眼视图时,包括:
判断当前绘制的像素是否对应所述3D右眼视区,若是,则在像素绘制3D右眼视图,若不是则在像素绘制所述3D左眼视图。
优选的,调用3D引擎的绘图指令之前,还包括步骤304:将获取到的通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给所述3D引擎。
步骤303:将3D左眼视图、3D右眼视图分别对应显示在裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
图5示出根据本发明提供的一种三维数据的裸眼3D显示系统第一个实施例的结构框图。本实施例的一种三维数据的裸眼3D显示系统主要由智能终端来执行。其中,智能终端的硬件装置包括但不限于:个人电脑、笔记本电脑、手机、平板电脑等。本实施例中,将3D左眼视图和3D右眼视图完全绘制好后进行判断显示。该智能终端为带有柱镜或光栅的显示屏为裸眼3D显示屏,该系统包括获取显示区单元401、第一绘图单元402和第一显示单元403。
获取显示区单元401,根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区。
在3D左眼图显示区,裸眼3D显示屏上柱镜或光栅将显示图像折射给左眼区域,在3D右眼图显示区,裸眼3D显示上柱镜或光栅屏将显示图像折射给右眼区域。其中,左眼区域为使用裸眼3D显示屏时用户左眼的理想观看区域,右眼区域为使用裸眼3D显示屏时用户左眼的理想观看区域。
例如,图2中示意的是柱镜竖贴且每个柱镜覆盖两个像素的情况,此情况下,奇数列像素为右眼图显示区,偶数列像素为左眼图显示区。
第一绘图单元402,用于调用3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图。
具体的,针对预设的用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D右眼视图。针对预设的用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D左眼视图。
其中,3D引擎可以为但不限于Anroid平台中的opengl es引擎。
本实施例中,用于模拟左眼位置的3D引擎相机位置参数和用于模拟右眼位置的3D引擎相机位置参数与三维数据的物体预设中心的距离均为物体最大直径的5至6倍,用于模拟人的左眼视线方向和用于模拟人的右眼视线方向均为从相机位置指向三维数据的物体预设中心的方向,且用于模拟人的左眼视线方向和用于模拟人的右眼视线方向相差2至8度,优选相差6度左右。
例如,三维数据的物体预设中心为坐标原点,用于模拟右眼位置的3D引擎相机位置参数与三维数据的物体预设中心的距离为物体最大直径的5倍,则用于模拟右眼位置的3D引擎相机位置参数A为:A=[sin(a)*5b,0,cos(a)*5b],用于模拟人的右眼视线方向的3D引擎相机方向参数为用于模拟左眼位置的3D引擎相机位置参数B为A绕y轴旋转6度:B=[sin(a+6°)*5b,0,cos(a+6°)*5b],其中,b为物体最大直径,a为预设角度。
优选的,还包括三维数据获取单元421:将获取到的通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给3D引擎。
第一显示单元403,用于将3D左眼视图、3D右眼视图分别对应显示在裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
优选的,判断裸眼3D显示屏的像素区域是否对应裸眼3D显示屏的3D左眼图显示区,若是,则在该像素区域显示3D左眼视图的对应区域,其中,对应区域为与该像素区域的坐标相同的3D左眼视图区域,若不是,则在该像素区域显示3D右眼视图的对应区域,其中,对应区域为与该像素区域的坐标相同的3D右眼视图区域。
图6示出根据本发明提供的一种三维数据的裸眼3D显示系统第二个实施例的结构框图。本实施例的一种三维数据的裸眼3D显示系统主要由智能终端来执行。本实施例中,一边判断像素区域的对应视图边绘制视图,该智能终端为带有柱镜或光栅的显示屏为裸眼3D显示屏,该系统包括获取显示区单元501、第二绘图单元502、第二显示单元503。
获取显示区单元501,用于根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区。该单元与单元获取显示区单元401相同。
第二绘图单元502,用于调用3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图。
绘制3D左眼视图和3D右眼视图时,判断当前绘制的像素区域是否对应3D右眼视区,若是,则在像素区域绘制3D右眼视图,若不是,则在像素区域绘制3D左眼视图。
绘制三维数据的3D左眼视图时,判断当前绘制的像素区域是否对应3D右眼视区,若不是,则针对预设的用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制三维数据的3D左眼视图。
绘制三维数据的3D右眼视图时,判断当前绘制的像素区域是否对应3D右眼视区,若是,则针对预设的用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D右眼视图。
优选的,还包括三维数据获取单元504:将获取到的通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给所述3D引擎。
第二显示单元503,用于将3D左眼视图、3D右眼视图分别对应显示在裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
图7示出根据本发明提供的一种三维数据的裸眼3D显示系统第三个实施例的方法流程图。本实施例的一种三维数据的裸眼3D显示方法主要由智能终端来执行。本实施例中加入了人机交互步骤,使通过获取用户的操作指令特征,绘制3D左眼视图或3D右眼视图,实现平移、旋转、缩放等操作,该智能终端为带有柱镜或光栅的显示屏为裸眼3D显示屏,该系统包括获取显示区单元601、第三绘图单元602和第三显示单元603。
获取显示区单元601,用于根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区。该单元与单元获取显示区单元401相同。
第三绘图单元602,用于调用3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图。
优选的,第三绘图单元602包括参数更新模块621和更新绘制模块622。
参数更新模块621,用于通过触屏获取到用户输入的操作指令特征,根据预置算法对操作指令特征进行处理,更新3D引擎的相应绘图指令参数。
具体的,根据预置算法对操作指令特征进行处理,更新3D引擎的相应绘图指令参数,包括:
若通过触屏实时获取到用户输入的旋转操作指令向量,根据预置的旋转算法对旋转操作指令特征向量进行处理,更新3D引擎的相机位置参数和相机视线参数。
例如,在Anroid平台中的opengl es引擎中,若通过触屏实时获取到用户输入的单手指滑动向量,预设绕z轴旋转(当然也可以设置为绕其他轴旋转),单手指滑动向量的x轴分量的像素数量乘以单位像素角度得到x轴旋转角度,单手指滑动向量的y轴分量的像素数量乘以单位像素角度作为y轴旋转角度,更新物体相对原始坐标旋转的角度,相当于更新了3D引擎的相机位置参数和相机视线参数。
若通过触屏实时获取到用户输入的平移操作指令向量,根据预置的平移算法对平移操作指令向量进行处理,更新3D引擎的相机位置参数和缩放基准点。
例如,在Anroid平台中的opengl es引擎中,若选中屏幕中的平移工具后,通过触屏实时获取到用户输入的单手指滑动向量,预设z轴固定不动,单手指滑动向量的x轴分量的像素数量乘以单位像素长度得到x轴平移距离,单手指滑动向量的y轴分量的像素数量乘以单位像素长度作为y轴平移距离,将照相机的空间位置向单手滑动向量相反方向平移,分别沿x轴平移x轴平移距离和沿y轴平移y轴平移距离,缩放基准点由于从前在3D物体上,也分别向相反方向沿x轴平移x轴平移距离和沿y轴平移y轴平移距离,最终得到更新3D引擎的照相机的空间位置和3D数据的缩放基准点。
若通过触屏实时获取到用户输入的缩放操作指令距离,根据预置的缩放算法对缩放操作指令距离进行处理,更新3D引擎的缩放系数。
例如,在Anroid平台中的opengl es引擎中,若通过触屏实时获取到用户输入的双手指滑动过程中的距离,3D引擎将当前两指的距离与上次两指距离的比值作为缩放比例乘以上一次绘制的缩放系数,更新了3D引擎的缩放系数。
更新绘制模块622,用于针对更新后的3D引擎的绘图指令参数调用3D引擎的绘图指令,绘制三维数据的3D左眼视图和3D右眼视图。
具体的,针对更新后的3D引擎的绘图指令参数中用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D右眼视图。
针对更新后的3D引擎的绘图指令参数中用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用3D引擎的绘图指令,绘制三维数据的3D左眼视图。
优选的,绘制三维数据的3D左眼视图和3D右眼视图时,包括:
判断当前绘制的像素是否对应所述3D右眼视区,若是,则在像素绘制3D右眼视图,若不是则在像素绘制所述3D左眼视图。
优选的,调用3D引擎的绘图指令之前,还包括步骤604:将获取到的通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给所述3D引擎。
603:将3D左眼视图、3D右眼视图分别对应显示在裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
综上所述,本发明的一种三维数据的裸眼3D显示方法及系统,通过在智能终端利用裸眼3D技术结合3D引擎,可以得到物体逼真的的立体影像,真实地显示三维物体,使用户直观的看到复杂三维物体中的细节,可以在移动终端中实现,可交互,便于用户手势操作从不同角度观察物体,实时的旋转、平移、缩放所观察物体。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (13)
1.一种三维数据的裸眼3D显示方法,其特征在于,包括:
根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区;
调用所述3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图;
将所述3D左眼视图、3D右眼视图分别对应显示在所述裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
2.如权利要求1所述的方法,其特征在于,所述调用所述3D引擎的绘图指令之前,还包括:将获取到的通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给所述3D引擎。
3.如权利要求1所述的方法,其特征在于,所述将所述3D左眼视图、3D右眼视图分别对应显示在所述裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上,包括:
判断所述裸眼3D显示屏的像素区域是否对应所述裸眼3D显示屏的3D左眼图显示区,若是,则在该像素区域显示3D左眼视图的对应区域,若不是,则在该像素区域显示3D右眼视图的对应区域。
4.如权利要求1所述的方法,其特征在于,所述调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图,包括:
针对预设的用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D右眼视图;
针对预设的用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图。
5.如权利要求4所述的方法,其特征在于,所述用于模拟人的左眼视线方向和所述用于模拟人的右眼视线方向均为从所述相机位置指向三维数据的物体预设中心的方向,且所述用于模拟人的左眼视线方向和所述用于模拟人的右眼视线方向相差2至10度。
6.如权利要求1或4所述的方法,其特征在于,所述绘制所述三维数据的3D左眼视图和3D右眼视图时,包括:
判断当前绘制的像素区域是否对应所述3D右眼视区,若是,则在所述像素区域绘制所述3D右眼视图,若不是,则在所述像素区域绘制所述3D左眼视图。
7.如权利要求1所述的方法,其特征在于,所述调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图,包括:
通过触屏获取到用户输入的操作指令特征,根据预置算法对所述操作指令特征进行处理,更新所述3D引擎的相应绘图指令参数;
针对更新后的3D引擎的绘图指令参数调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图。
8.如权利要求7所述的方法,其特征在于,所述通过触屏获取到用户输入的操作指令特征,根据预置算法对所述操作指令特征进行处理,更新所述3D引擎的相应绘图指令参数,包括:
若通过触屏实时获取到用户输入的旋转操作指令向量,则根据预置的旋转算法对所述旋转操作指令特征向量进行处理,更新所述3D引擎的相机位置参数和相机视线参数;
若通过触屏实时获取到用户输入的平移操作指令向量,则根据预置的平移算法对所述平移操作指令向量进行处理,更新所述3D引擎的相机位置参数和缩放基准点;
若通过触屏实时获取到用户输入的缩放操作指令距离,则根据预置的缩放算法对所述缩放操作指令距离进行处理,更新所述3D引擎的缩放系数。
9.一种三维数据的裸眼3D显示系统,其特征在于,包括:
获取显示区单元,用于根据裸眼3D显示屏上柱镜或光栅的排列位置获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区;
绘图单元,用于调用所述3D引擎的绘图指令,绘制预先获取的三维数据的3D左眼视图和3D右眼视图;
显示单元,用于将所述3D左眼视图、3D右眼视图分别对应显示在所述裸眼3D显示屏的3D左眼图显示区、3D右眼图显示区上。
10.如权利要求9所述的系统,其特征在于,所述绘图单元,具体用于:针对预设的用于模拟右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D右眼视图;针对预设的用于模拟左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图。
11.如权利要求9所述的系统,其特征在于,所述绘制单元,具体用于:
判断当前绘制的像素区域是否对应所述3D右眼视区,若是,则在所述像素区域绘制所述3D右眼视图,若不是,则在所述像素区域绘制所述3D左眼视图。
12.如权利要求9所述的系统,其特征在于,所述绘图单元包括:
参数更新模块,用于通过触屏获取到用户输入的操作指令特征,根据预置算法对所述操作指令特征进行处理,更新所述3D引擎的相应绘图指令参数;
更新绘制模块,用于针对更新后的3D引擎的绘图指令参数调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图。
13.如权利要求9所述的系统,其特征在于,所述显示单元,具体用于:
判断所述裸眼3D显示屏的像素区域是否对应所述裸眼3D显示屏的3D左眼图显示区,若是,则在该像素区域显示3D左眼视图的对应区域,若不是,则在该像素区域显示3D右眼视图的对应区域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510392209.1A CN105007480A (zh) | 2015-07-06 | 2015-07-06 | 一种三维数据的裸眼3d显示方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510392209.1A CN105007480A (zh) | 2015-07-06 | 2015-07-06 | 一种三维数据的裸眼3d显示方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105007480A true CN105007480A (zh) | 2015-10-28 |
Family
ID=54379973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510392209.1A Pending CN105007480A (zh) | 2015-07-06 | 2015-07-06 | 一种三维数据的裸眼3d显示方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105007480A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105844581A (zh) * | 2016-04-14 | 2016-08-10 | 北京极维客科技有限公司 | 一种图像绘制方法、装置及设备 |
CN107181939A (zh) * | 2017-05-10 | 2017-09-19 | 廖治文 | 基于摄像头的裸眼三维成像方法及系统 |
CN107404644A (zh) * | 2017-07-27 | 2017-11-28 | 深圳依偎控股有限公司 | 一种基于双摄采集的3d直播显示方法及系统 |
CN107454379A (zh) * | 2017-07-27 | 2017-12-08 | 深圳依偎控股有限公司 | 一种基于图像切换的2d与3d直播转换的方法及系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1892808A (zh) * | 2005-07-05 | 2007-01-10 | 三星Sdi株式会社 | 立体图像显示设备 |
CN1892288A (zh) * | 2005-07-05 | 2007-01-10 | 三星Sdi株式会社 | 立体图像显示设备 |
CN1909676A (zh) * | 2005-08-05 | 2007-02-07 | 三星Sdi株式会社 | 三维图形处理器与使用其的自动立体显示设备 |
CN101340598A (zh) * | 2008-08-07 | 2009-01-07 | 北京衡准科技有限公司 | 一种实现媒体三维播放的方法及装置 |
CN101742348A (zh) * | 2010-01-04 | 2010-06-16 | 中国电信股份有限公司 | 渲染方法与系统 |
CN102387390A (zh) * | 2010-09-02 | 2012-03-21 | 索尼公司 | 图像处理设备、图像处理方法以及计算机程序 |
CN102419702A (zh) * | 2010-09-27 | 2012-04-18 | 北京中娱在线网络科技有限公司 | 一种显示立体画面的方法及装置 |
CN102523473A (zh) * | 2011-12-01 | 2012-06-27 | 中兴通讯股份有限公司 | 一种三维界面显示装置、方法及终端 |
CN102520970A (zh) * | 2011-12-28 | 2012-06-27 | Tcl集团股份有限公司 | 一种立体用户界面的生成方法及装置 |
CN1893675B (zh) * | 2005-07-05 | 2012-11-14 | 三星移动显示器株式会社 | 三维图形处理装置及其立体图像显示装置 |
CN103294387A (zh) * | 2012-02-23 | 2013-09-11 | 宏达国际电子股份有限公司 | 立体成像系统及其方法 |
CN103593821A (zh) * | 2012-08-13 | 2014-02-19 | 上海威塔数字科技有限公司 | 一种三维绘图引擎 |
-
2015
- 2015-07-06 CN CN201510392209.1A patent/CN105007480A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1892808A (zh) * | 2005-07-05 | 2007-01-10 | 三星Sdi株式会社 | 立体图像显示设备 |
CN1892288A (zh) * | 2005-07-05 | 2007-01-10 | 三星Sdi株式会社 | 立体图像显示设备 |
CN1893675B (zh) * | 2005-07-05 | 2012-11-14 | 三星移动显示器株式会社 | 三维图形处理装置及其立体图像显示装置 |
CN1909676A (zh) * | 2005-08-05 | 2007-02-07 | 三星Sdi株式会社 | 三维图形处理器与使用其的自动立体显示设备 |
CN101340598A (zh) * | 2008-08-07 | 2009-01-07 | 北京衡准科技有限公司 | 一种实现媒体三维播放的方法及装置 |
CN101742348A (zh) * | 2010-01-04 | 2010-06-16 | 中国电信股份有限公司 | 渲染方法与系统 |
CN102387390A (zh) * | 2010-09-02 | 2012-03-21 | 索尼公司 | 图像处理设备、图像处理方法以及计算机程序 |
CN102419702A (zh) * | 2010-09-27 | 2012-04-18 | 北京中娱在线网络科技有限公司 | 一种显示立体画面的方法及装置 |
CN102523473A (zh) * | 2011-12-01 | 2012-06-27 | 中兴通讯股份有限公司 | 一种三维界面显示装置、方法及终端 |
CN102520970A (zh) * | 2011-12-28 | 2012-06-27 | Tcl集团股份有限公司 | 一种立体用户界面的生成方法及装置 |
CN103294387A (zh) * | 2012-02-23 | 2013-09-11 | 宏达国际电子股份有限公司 | 立体成像系统及其方法 |
CN103593821A (zh) * | 2012-08-13 | 2014-02-19 | 上海威塔数字科技有限公司 | 一种三维绘图引擎 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105844581A (zh) * | 2016-04-14 | 2016-08-10 | 北京极维客科技有限公司 | 一种图像绘制方法、装置及设备 |
CN105844581B (zh) * | 2016-04-14 | 2019-04-30 | 北京极维科技有限公司 | 一种图像绘制方法、装置及设备 |
CN107181939A (zh) * | 2017-05-10 | 2017-09-19 | 廖治文 | 基于摄像头的裸眼三维成像方法及系统 |
CN107404644A (zh) * | 2017-07-27 | 2017-11-28 | 深圳依偎控股有限公司 | 一种基于双摄采集的3d直播显示方法及系统 |
CN107454379A (zh) * | 2017-07-27 | 2017-12-08 | 深圳依偎控股有限公司 | 一种基于图像切换的2d与3d直播转换的方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104915994A (zh) | 一种三维数据的3d视图绘制方法及系统 | |
US10739936B2 (en) | Zero parallax drawing within a three dimensional display | |
US11275436B2 (en) | Interface-based modeling and design of three dimensional spaces using two dimensional representations | |
CN107248194A (zh) | 一种基于云计算的cae数据三维显示交互方法 | |
WO2015090421A1 (en) | Method and system for providing information associated with a view of a real environment superimposed with a virtual object | |
US20100134601A1 (en) | Method and device for determining the pose of video capture means in the digitization frame of reference of at least one three-dimensional virtual object modelling at least one real object | |
CN105513112A (zh) | 图像处理方法和装置 | |
CN105007480A (zh) | 一种三维数据的裸眼3d显示方法及系统 | |
KR101384205B1 (ko) | 가상 공간 시뮬레이션 방법 | |
CN108133454B (zh) | 空间几何模型图像切换方法、装置、系统及交互设备 | |
WO2010085549A1 (en) | System and method for three-dimensional visualization of geographical data | |
CN105786432A (zh) | 在移动终端上展示虚拟画面的方法及装置 | |
US11250643B2 (en) | Method of providing virtual exhibition space using 2.5-dimensionalization | |
Pietriga et al. | Representation-independent in-place magnification with sigma lenses | |
JP2019146155A (ja) | 画像処理装置、画像処理方法およびプログラム | |
KR101588935B1 (ko) | 가상현실 이미지 프레젠테이션 및 3d 공간 내에서의 컨트롤을 위한 3d 기하학 데이터의 이용방법 | |
KR20190127367A (ko) | 효율적인 데이터 관리를 위한 가상 전시 공간 제공 방법 | |
JP2014203175A (ja) | 情報処理装置、情報処理方法及びプログラム。 | |
US20180213196A1 (en) | Method of projection mapping | |
KR102443299B1 (ko) | 제품 구매 서비스 제공 장치 및 방법 | |
US20220206669A1 (en) | Information processing apparatus, information processing method, and program | |
TWI603288B (zh) | 在3d空間中將3d幾何數據用於虛擬實境圖像的呈現和控制的方法 | |
WO2019163449A1 (ja) | 画像処理装置、画像処理方法およびプログラム | |
Markon et al. | Interactive medical visualization with floating images | |
Schmidt | Blended Spaces: Perception and Interaction in Projection-Based Spatial Augmented Reality Environments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151028 |