CN113223144B - 一种三维显示海量数据的处理方法及系统 - Google Patents

一种三维显示海量数据的处理方法及系统 Download PDF

Info

Publication number
CN113223144B
CN113223144B CN202110405740.3A CN202110405740A CN113223144B CN 113223144 B CN113223144 B CN 113223144B CN 202110405740 A CN202110405740 A CN 202110405740A CN 113223144 B CN113223144 B CN 113223144B
Authority
CN
China
Prior art keywords
camera
vector
ray
light
viewpoint
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
Application number
CN202110405740.3A
Other languages
English (en)
Other versions
CN113223144A (zh
Inventor
桑新柱
仲崇力
陈铎
于迅博
李会
颜玢玢
刘娟
黄玲玲
雷建军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202110405740.3A priority Critical patent/CN113223144B/zh
Publication of CN113223144A publication Critical patent/CN113223144A/zh
Application granted granted Critical
Publication of CN113223144B publication Critical patent/CN113223144B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Holo Graphy (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

本发明提供一种三维显示海量数据的处理方法及系统,包括:获取待显示海量数据的初始化参数;基于所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果。本发明所提出的三维显示海量数据处理方法可用于多种三维显示编码图,通过在图形处理器中并行处理,实现实时计算,根据初始参数来计算各视点位置以及各离轴相机光线方向,交互时仅需改变初始相机位置,便于实现交互等操作。

Description

一种三维显示海量数据的处理方法及系统
技术领域
本发明涉及三维显示技术领域,尤其涉及一种三维显示海量数据的处理方法及系统。
背景技术
在显示领域,从黑白显示到彩色显示,从二维显示到三维显示,人们一直在追求更真实的显示效果,而三维显示正逐步使其变为现实。由于三维显示能够还原物体的三维信息,在医疗、军事、教学等领域都有重要应用。
光线跟踪是一种通过模拟光线真实传播,来计算物体颜色等信息的方法,由于每条光线的计算互相独立,因此可以在GPU中并行计算,大幅提升计算速度。
常见的三维显示方式有多种,例如全息显示、水平光场显示和集成成像显示等。一般都是将编码图加载到三维显示器进行三维显示,由于上述三维显示方式需要处理的数据量很大,传统计算全息的点云算法需要遍历物体与全息图的每个点,而集成成像与水平光场显示的编码图需要每个视点的视差图,因此难以达到三维显示编码图的实时计算。
发明内容
本发明提供一种三维显示海量数据的处理方法及系统,用以解决现有技术中存在的缺陷。
第一方面,本发明提供一种三维显示海量数据的处理方法,包括:
获取待显示海量数据的初始化参数;
基于所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;
由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果。
在一个实施例中,所述获取待显示海量数据的初始化参数,具体包括:
初始化相机和三维场景,将所述三维模型的中心设为所述相机的注视点。
在一个实施例中,基于所述初始化参数计算得到全息图,具体包括:
启动光线跟踪,其中光线跟踪线程数为全息图像素数;
由相机向三维场景发射光线;
除去其中不与物体相交的光线后,基于与物体相交的光线计算物体表面颜色,并储存光线长度,确定从相机位置指向注视点的第一单位向量、光线方向的第二单位向量以及击中物体光线长度,基于所述第一单位向量、所述第二单位向量和所述击中物体光线长度,得到所述物体表面深度,根据所述物体表面深度将所述三维场景分成若干层二维图像;
基于预设衍射快速计算方法计算所述若干层二维图像中每一层衍射到全息面后的复振幅;
对所述复振幅进行编码,得到所述全息图。
在一个实施例中,基于所述初始化参数计算得到全视差视点图,具体包括:
确定初始相机三维位置坐标,基于所述初始相机三维位置坐标获得初始相机位置向量;
获取所述初始相机的右方单位向量、上方单位向量和前方单位向量,确定水平视点数、纵向视点数、水平视点间距和纵向视点间距;
获取任意视点相机的所在位置横向视点数和所在位置纵向视点数,基于所述右方单位向量、所述上方单位向量、所述前方单位向量、所述水平视点数、所述纵向视点数、所述水平视点间距、所述纵向视点间距、所述所在位置横向视点数和所述所在位置纵向视点数,计算得到所述初始相机指向所述任意视点相机的第一向量;
由所述第一向量和所述初始相机位置向量计算得到所述任意视点相机的位置;
对每个视点相机启动一次光线跟踪获得每个视点相机对应的视点图,其中每次光线跟踪的线程数为每个视点图的像素数;
以所述初始相机的注视点为各相机公共焦平面的中心,基于所述第一单位向量的长度、所述第一单位向量和从所述初始相机指向公共焦平面的光线单位向量,计算得到从所述初始相机指向所述公共焦平面的光线向量;
基于所述第一向量和所述从所述初始相机指向所述公共焦平面的光线向量,得到从所述任意视点相机指向所述公共焦平面的光线向量;
以所述任意视点相机的位置为起点,基于所述任意视点相机指向所述公共焦平面的光线向量发射光线,得到第一发射光线;
获取所述第一发射光线的跟踪结果,得到所述全视差视点图。
在一个实施例中,基于所述初始化参数计算得到所述水平光场编码图,具体包括:
启动光线跟踪获得水平光场编码图子像素,其中光线跟踪的线程数为编码图子像素数;
根据编码图子像素位置,计算编码图子像素对应的视点;
基于所述初始相机位置向量、所述右方单位向量、所述水平视点数、所述水平视点间距和所述所在位置横向视点数,得到所述第一向量的横向分量,所述横向分量为所述初始相机位置指向光线起点位置的向量;
基于所述横向分量和所述初始相机位置向量,计算得到所述光线起点位置;
以所述初始相机的注视点为各相机公共焦平面的中心,基于所述第一单位向量的长度、所述第一单位向量和从所述初始相机指向编码子像素的光线单位向量,计算得到从所述初始相机指向所述编码子像素的光线向量;
基于所述第一向量和所述从所述初始相机指向所述编码子像素的光线向量,得到从所述光线起点位置指向所述编码子像素的向量;
以所述光线起点位置为起点,基于所述光线起点位置指向所述编码子像素的向量发射光线,得到第二发射光线;
获得每个编码子像素对应所述第二发射光线的颜色,根据每个编码子像素所在红绿蓝通道赋予对应的灰度值,得到所述水平光场编码图。
在一个实施例中,基于所述初始化参数计算得到所述集成成像编码图,具体包括:
启动光线跟踪获得集成成像编码图像素,其中光线跟踪的线程数为编码图像素数;
计算编码图像素对应的视点;
获取所述光线起点位置、所述初始相机的注视点、物体到最佳观看面距离与屏幕到最佳观看面比例、所述初始相机指向所述注视点的向量,基于所述初始相机指向所述注视点的向量和所述物体到最佳观看面距离与屏幕到最佳观看面比例,计算得到所述初始相机到所述公共焦平面的中心向量;
基于从所述初始相机指向所述编码图像素的光线单位向量、所述中心向量和所述中心向量的长度,得到所述初始相机指向所述编码图像素的向量;
以所述光线起点位置为起点,基于所述光线起点位置指向所述编码图像素的向量发射光线,得到第三发射光线;
给所述第三发射光线的跟踪结果赋予编码像素,得到所述集成成像编码图。
在一个实施例中,所述由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果,之后还包括:
若检测到交互或者参数设置发生改变时,重新启动计算,其中交互操作包括旋转和缩放。
第二方面,本发明还提供一种三维显示海量数据的处理系统,包括:
获取模块,用于获取待显示海量数据的初始化参数;
计算模块,用于基于所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;
显示模块,用于由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果。
第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述三维显示海量数据的处理方法的步骤。
第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述三维显示海量数据的处理方法的步骤。
本发明提供的三维显示海量数据的处理方法及系统,通过所提出的三维显示海量数据处理方法可用于多种三维显示编码图,通过在图形处理器中并行处理,实现实时计算,根据初始参数来计算各视点位置以及各离轴相机光线方向,交互时仅需改变初始相机位置,便于实现交互等操作。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的三维显示海量数据的处理方法的流程示意图;
图2是本发明提供的光线跟踪处理三维显示海量数据示意图;
图3是本发明提供的初始三维场景示意图;
图4是本发明提供的光线跟踪示意图;
图5是本发明提供的全息图结果示意图;
图6是本发明提供的光线跟踪离轴相机拍摄视点图示意图;
图7是本发明提供的全视差视点图结果示意图;
图8是本发明提供的光线跟踪计算水平光场编码图示意图;
图9是本发明提供的水平光场编码图结果示意图;
图10是本发明提供的光线跟踪计算集成成像编码图示意图;
图11是本发明提供的集成成像编码图结果示意图;
图12是本发明提供的全息显示效果示意图;
图13是本发明提供的水平光场显示效果示意图;
图14是本发明提供的集成成像显示效果示意图;
图15是本发明提供的三维显示海量数据的处理系统的结构示意图;
图16是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
针对现有技术的不足,本发明提出光线跟踪处理三维显示海量数据的方法,能灵活根据不同设备不同参数计算编码图。
首先对本发明所涉及的多个技术名词给出解释:
光线跟踪:模拟真实光线传播的方法,从相机向三维场景发射光线并来计算每个像素的颜色。每条光线需要确定起点以及方向。由于编程较为灵活,在三维显示中可以用来获取三维场景信息;
全息图:通常应用衍射和干涉的原理,记录物体光波的干涉图样,这个干涉图样称为全息图。当全息图使用适当的再现光照明时,可以复现出物体的光波;
空间光调制器(SLM):是计算全息再现过程中的核心器件。SLM能够实现对输入光波的调制,改变输入光波的相位、振幅等。可以将全息图加载到空间光调制器上实现全息显示;
自由立体显示:不用佩戴任何辅助设备,可以直接为观看者提供立体视觉的显示方式;
光场显示:利用显示设备与光学器件描述空间物点发出光线,并实现自由立体的显示方式称为光场显示。例如水平光场显示和集成成像显示;
视差图:从不同角度对相同场景进行采集,获得的立体图像组称为视差图;
编码图像:根据显示系统的参数,在液晶面板上加载的具有3D物体方向信息的图像称为编码图像。
图1是本发明提供的三维显示海量数据的处理方法的流程示意图,如图1所示,包括:
S1,获取待显示海量数据的初始化参数;
S2,基于所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;
S3,由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果。
具体地,使用光线跟踪技术处理不同三维显示方式需要的计算全息图、水平光场编码图、集成成像编码图、全视差视点图,具体流程见图2所示。各种编码图计算使用同一初始相机,便于交互与计算方式切换。对于计算全息图,从初始相机使用光线跟踪获取三维场景的分层信息,之后通过衍射快速计算来生成计算全息图。对于全视差视点图,根据初始相机的位置计算各视点相机的位置,根据初始相机光线方向计算各视点离轴相机光线方向,每个视点相机分别启动光线跟踪获得视差图。对于水平光场显示编码图以及集成成像显示编码图,在光线跟踪的每条线程中首先计算视点和像素对应关系,之后根据初始相机位置与光线方向计算各条光线的起点和方向,发射光线直接得到编码图,只计算用于编码合成图的像素,大幅减少了计算量。
本发明提出的方法可用于多种三维显示编码图,在图形处理器中并行处理,可实现实时计算,根据初始相机参数来计算各视点位置以及各离轴相机光线方向,交互时仅需改变初始相机位置,便于实现交互等操作。
基于上述实施例,该方法中步骤S1具体包括:
初始化相机和三维场景,将所述三维模型的中心设为所述相机的注视点。
具体地,首先初始化相机与三维场景,相机注视点为三维模型中心,如图3所示,之后根据需要计算的编码图启动不同的计算步骤。
基于上述任一实施例,基于所述初始化参数计算得到全息图,具体包括:
启动光线跟踪,其中光线跟踪线程数为全息图像素数;
由相机向三维场景发射光线;
除去其中不与物体相交的光线后,基于与物体相交的光线计算物体表面颜色,并储存光线长度,确定从相机位置指向注视点的第一单位向量、光线方向的第二单位向量以及击中物体光线长度,基于所述第一单位向量、所述第二单位向量和所述击中物体光线长度,得到所述物体表面深度,根据所述物体表面深度将所述三维场景分成若干层二维图像;
基于预设衍射快速计算方法计算所述若干层二维图像中每一层衍射到全息面后的复振幅;
对所述复振幅进行编码,得到所述全息图。
具体地,首先启动光线跟踪,光线跟踪线程数为全息图像素数,由初始相机向三维场景发射光线,将三维场景进行分层:
对应不与物体相交的光线,不参与分层,对于与物体相交的光线,计算物体表面的颜色,同时储存光线的长度,如图4所示。
Figure BDA0003022244420000091
为从相机位置指向注视点的单位向量,
Figure BDA0003022244420000092
为光线方向的单位向量,d为光线长度。当光线击中物体后,根据下式计算物体所在深度depth:
Figure BDA0003022244420000093
再根据深度信息,将三维场景分成若干层二维图像。
然后对于三维场景的每一层,使用衍射快速计算的方法计算其衍射到全息面后的复振幅,得到全息面的复振幅,对复振幅进行编码,计算得到全息图,如图5所示。
基于上述任一实施例,基于所述初始化参数计算得到全视差视点图,具体包括:
确定初始相机三维位置坐标,基于所述初始相机三维位置坐标获得初始相机位置向量;
获取所述初始相机的右方单位向量、上方单位向量和前方单位向量,确定水平视点数、纵向视点数、水平视点间距和纵向视点间距;
获取任意视点相机的所在位置横向视点数和所在位置纵向视点数,基于所述右方单位向量、所述上方单位向量、所述前方单位向量、所述水平视点数、所述纵向视点数、所述水平视点间距、所述纵向视点间距、所述所在位置横向视点数和所述所在位置纵向视点数,计算得到所述初始相机指向所述任意视点相机的第一向量;
由所述第一向量和所述初始相机位置向量计算得到所述任意视点相机的位置;
对每个视点相机启动一次光线跟踪获得每个视点相机对应的视点图,其中每次光线跟踪的线程数为每个视点图的像素数;
以所述初始相机的注视点为各相机公共焦平面的中心,基于所述第一单位向量的长度、所述第一单位向量和从所述初始相机指向公共焦平面的光线单位向量,计算得到从所述初始相机指向所述公共焦平面的光线向量;
基于所述第一向量和所述从所述初始相机指向所述公共焦平面的光线向量,得到从所述任意视点相机指向所述公共焦平面的光线向量;
以所述任意视点相机的位置为起点,基于所述任意视点相机指向所述公共焦平面的光线向量发射光线,得到第一发射光线;
获取所述第一发射光线的跟踪结果,得到所述全视差视点图。
具体地,如图6所示,首先计算相机阵列位置,设初始相机位置坐标为(x0,y0,z0)以向量表示为:
Figure BDA0003022244420000111
向量
Figure BDA0003022244420000112
分别为指向相机右方,上方,前方的单位向量。设水平与纵向视点数分别为M、N,视点间距分别为a、b。以视点相机C1为例,设视点相机所在横向视点数为m,纵向视点数为n,则从初始相机指向视点相机C1的向量:
Figure BDA0003022244420000113
则视点相机C1的位置为:
Figure BDA0003022244420000114
进一步地,对于每个视点相机,启动一次光线跟踪获得该视点的视点图。每次光线跟踪的线程数为每个视点图的像素数。
在每次光线跟踪中,首先计算每条光线的起点与方向。对于每个视点相机,光线起点即为视点相机位置。由于各视点相机为离轴相机,每个像素对应的光线方向通过初始针孔相机的光线方向计算而来,以图6中视点相机C1的光线
Figure BDA0003022244420000115
为例:
设初始相机注视点O,为各相机公共焦平面中心。从初始相机位置指向注视点的向量为
Figure BDA0003022244420000116
长度为length,初始相机为针孔相机,从初始相机指向焦平面上该像素的光线向量为
Figure BDA0003022244420000117
表示其光线方向的单位向量为
Figure BDA0003022244420000118
则:
Figure BDA0003022244420000119
从初始相机指向视点相机C1的向量为
Figure BDA00030222444200001110
则光线
Figure BDA00030222444200001111
为:
Figure BDA00030222444200001112
基于上述得到的结果,确定光线的起点和方向后即可发射光线,每个视点相机处光线跟踪结果即为该视点的全视差视点图,如图7所示。
基于上述任一实施例,基于所述初始化参数计算得到所述水平光场编码图,具体包括:
启动光线跟踪获得水平光场编码图子像素,其中光线跟踪的线程数为编码图子像素数;
根据编码图子像素位置,计算编码图子像素对应的视点;
基于所述初始相机位置向量、所述右方单位向量、所述水平视点数、所述水平视点间距和所述所在位置横向视点数,得到所述第一向量的横向分量,所述横向分量为所述初始相机位置指向光线起点位置的向量;
基于所述横向分量和所述初始相机位置向量,计算得到所述光线起点位置;
以所述初始相机的注视点为各相机公共焦平面的中心,基于所述第一单位向量的长度、所述第一单位向量和从所述初始相机指向编码子像素的光线单位向量,计算得到从所述初始相机指向所述编码子像素的光线向量;
基于所述第一向量和所述从所述初始相机指向所述编码子像素的光线向量,得到从所述光线起点位置指向所述编码子像素的向量;
以所述光线起点位置为起点,基于所述光线起点位置指向所述编码子像素的向量发射光线,得到第二发射光线;
获得每个编码子像素对应所述第二发射光线的颜色,根据每个编码子像素所在红绿蓝通道赋予对应的灰度值,得到所述水平光场编码图。
具体地,如图8所示,启动光线跟踪,此处光线跟踪的线程数为编码图子像素数,根据编码图子像素位置,计算该子像素对应的视点。
然后计算编码图子像素对应光线跟踪线程的光线起点与光线方向,仍是设初始相机位置坐标为(x0,y0,z0)以向量表示为:
Figure BDA0003022244420000131
设向量
Figure BDA0003022244420000132
为指向相机右方的单位向量,设水平视点数为M,视点间距为a,若子像素对应视点数为m,则初始相机位置指向光线起点位置的向量:
Figure BDA0003022244420000133
则得到光线起点位置:
Figure BDA0003022244420000134
设初始相机注视点O,为焦平面中心。从初始相机位置指向注视点的向量为
Figure BDA0003022244420000135
长度为length,从初始相机指向该编码子像素的光线方向的单位向量为
Figure BDA0003022244420000136
光线向量为
Figure BDA0003022244420000137
则:
Figure BDA0003022244420000138
从初始相机指向光线起点的向量为
Figure BDA0003022244420000139
则光线方向为:
Figure BDA00030222444200001310
同样,在得到上述结果后确定光线的起点和方向后即可发射光线。
最后,在每个子像素得到对应光线的颜色后,根据子像素所在红绿蓝通道,赋予对应的灰度值,得到水平光场编码图,如图9所示。
基于上述任一实施例,基于所述初始化参数计算得到所述集成成像编码图,具体包括:
启动光线跟踪获得集成成像编码图像素,其中光线跟踪的线程数为编码图像素数;
计算编码图像素对应的视点;
获取所述光线起点位置、所述初始相机的注视点、物体到最佳观看面距离与屏幕到最佳观看面比例、所述初始相机指向所述注视点的向量,基于所述初始相机指向所述注视点的向量和所述物体到最佳观看面距离与屏幕到最佳观看面比例,计算得到所述初始相机到所述公共焦平面的中心向量;
基于从所述初始相机指向所述编码图像素的光线单位向量、所述中心向量和所述中心向量的长度,得到所述初始相机指向所述编码图像素的向量;
以所述光线起点位置为起点,基于所述光线起点位置指向所述编码图像素的向量发射光线,得到第三发射光线;
给所述第三发射光线的跟踪结果赋予编码像素,得到所述集成成像编码图。
具体地,如图10所示,启动光线跟踪,此处光线跟踪的线程数为编码图像素数,计算编码像素对应的视点。
进一步地,计算编码像素对应线程的光线起点和方向,仍是设初始相机位置坐标为(x0,y0,z0)以向量表示:
Figure BDA0003022244420000141
向量
Figure BDA0003022244420000142
分别为指向相机右方,上方的单位向量。设水平与纵向视点数分别为M、N,间距分别为a、b,若子像素对应视点为横向视点为m,纵向视点为n,则从初始相机指向光线起点的向量:
Figure BDA0003022244420000143
则光线起点位置:
Figure BDA0003022244420000144
初始相机注视点O,物体到最佳观看面距离与屏幕到最佳观看面比例为b。从相机位置指向注视点的向量为
Figure BDA0003022244420000145
垂直于焦平面,延长线与焦平面相交于中心,则相机到焦平面中心向量为:
Figure BDA0003022244420000146
Figure BDA0003022244420000147
长度为length,从初始相机指向编码像素的光线向量为
Figure BDA0003022244420000148
表示其方向的单位向量为
Figure BDA0003022244420000149
则:
Figure BDA00030222444200001410
初始相机指向光线起点的向量为
Figure BDA00030222444200001411
则光线方向为:
Figure BDA00030222444200001412
进一步地,基于上述结果,确定光线的起点和方向后即可发射光线。
最后,将光线跟踪结果直接赋予编码像素,得到集成成像编码图,如图11所示。
基于上述任一实施例,该方法中步骤S3之后还包括:
若检测到交互或者参数设置发生改变时,重新启动计算,其中交互操作包括旋转和缩放。
具体地,在得到全息图、全视差视点图、水平光场编码图和集成成像编码图之后,加载到三维显示器即可实现三维显示,图12为全息显示效果示意图,图13为水平光场显示效果示意图,图14为集成成像显示效果示意图。
当检测到交互或者参数设置改变时,重新启动计算。交互时的参数处理如下:
旋转时,相机注视点位置不变,初始相机围绕注视点旋转,根据旋转后的相机坐标以及
Figure BDA0003022244420000151
向量重新确定视点相机位置、光线起点、焦平面等。
缩放时,相机朝向
Figure BDA0003022244420000152
向量方向前后移动,若移动前视点间距为a,相机到注视点距离d1,移动后相机到注视点距离为d2,则移动后视点间距调整为:
Figure BDA0003022244420000153
基于上述任一实施例,本发明还提供实验结果来验证本发明所提出方法的有效性,实验的具体参数如表1所示。
表1
计算方式 计算量 计算速度
全息图 1024*1024分辨率,模型分30层 41fps
水平光场编码图 3840*2160分辨率 38fps
集成成像编码图 3840*2160分辨率 47fps
全视差视点图 5*5视点,视点图512*512分辨率 40fps
具体的测试配置为CPU(Intel i7-9750h)和GPU(GTX1660ti)。
下面对本发明提供的三维显示海量数据的处理系统进行描述,下文描述的三维显示海量数据的处理系统与上文描述的三维显示海量数据的处理方法可相互对应参照。
图15是本发明提供的三维显示海量数据的处理系统的结构示意图,如图15所示,包括:获取模块1501、计算模块1502和显示模块1503;其中:
获取模块1501待显示海量数据的初始化参数;计算模块1502所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;显示模块1503述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果。
本发明提出的方法可用于多种三维显示编码图,在图形处理器中并行处理,可实现实时计算,根据初始相机参数来计算各视点位置以及各离轴相机光线方向,交互时仅需改变初始相机位置,便于实现交互等操作。
图16了一种电子设备的实体结构示意图,如图16,该电子设备可以包括:处理器(processor)1610、通信接口(CommunicationsInterface)1620、存储器(memory)1630和通信总线1640,其中,处理器1610,通信接口1620,存储器1630通过通信总线1640完成相互间的通信。处理器1610可以调用存储器1630中的逻辑指令,以执行三维显示海量数据的处理方法,该方法包括:获取待显示海量数据的初始化参数;基于所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果。
此外,上述的存储器1630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的三维显示海量数据的处理方法,该方法包括:获取待显示海量数据的初始化参数;基于所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的三维显示海量数据的处理方法,该方法包括:获取待显示海量数据的初始化参数;基于所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (5)

1.一种三维显示海量数据的处理方法,其特征在于,包括:
获取待显示海量数据的初始化参数;
基于所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;
由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果;
所述获取待显示海量数据的初始化参数,具体包括:
初始化相机和三维场景,将三维模型的中心设为所述相机的注视点;
基于所述初始化参数计算得到全息图,具体包括:
启动光线跟踪,其中光线跟踪线程数为全息图像素数;
由相机向三维场景发射光线;
除去其中不与物体相交的光线后,基于与物体相交的光线计算物体表面颜色,并储存光线长度,确定从相机位置指向注视点的第一单位向量、光线方向的第二单位向量以及击中物体光线长度,基于所述第一单位向量、所述第二单位向量和所述击中物体光线长度,得到物体表面深度,根据所述物体表面深度将所述三维场景分成若干层二维图像;
基于预设衍射快速计算方法计算所述若干层二维图像中每一层衍射到全息面后的复振幅;
对所述复振幅进行编码,得到所述全息图,具体包括:
启动光线跟踪,光线跟踪线程数为全息图像素数,由初始相机向三维场景发射光线,将三维场景进行分层:
对应不与物体相交的光线,不参与分层,对于与物体相交的光线,计算物体表面的颜色,同时储存光线的长度,令
Figure FDA0003602998660000011
为从相机位置指向注视点的单位向量,
Figure FDA0003602998660000021
为光线方向的单位向量,d为光线长度,当光线击中物体后得到:
Figure FDA0003602998660000022
再根据深度信息,将三维场景分成若干层二维图像;
对于三维场景的每一层,使用衍射快速计算的方法计算每一层衍射到全息面后的复振幅,得到全息面的复振幅,对复振幅进行编码,计算得到所述全息图;
基于所述初始化参数计算得到全视差视点图,具体包括:
确定初始相机三维位置坐标,基于所述初始相机三维位置坐标获得初始相机位置向量;
获取所述初始相机的右方单位向量、上方单位向量和前方单位向量,确定水平视点数、纵向视点数、水平视点间距和纵向视点间距;
获取任意视点相机的所在位置横向视点数和所在位置纵向视点数,基于所述右方单位向量、所述上方单位向量、所述前方单位向量、所述水平视点数、所述纵向视点数、所述水平视点间距、所述纵向视点间距、所述所在位置横向视点数和所述所在位置纵向视点数,计算得到所述初始相机指向所述任意视点相机的第一向量;
由所述第一向量和所述初始相机位置向量计算得到所述任意视点相机的位置;
对每个视点相机启动一次光线跟踪获得每个视点相机对应的视点图,其中每次光线跟踪的线程数为每个视点图的像素数;
以所述初始相机的注视点为各相机公共焦平面的中心,基于所述第一单位向量的长度、所述第一单位向量和从所述初始相机指向公共焦平面的光线单位向量,计算得到从所述初始相机指向所述公共焦平面的光线向量;
基于所述第一向量和所述从所述初始相机指向所述公共焦平面的光线向量,得到从所述任意视点相机指向所述公共焦平面的光线向量;
以所述任意视点相机的位置为起点,基于所述任意视点相机指向所述公共焦平面的光线向量发射光线,得到第一发射光线;
获取所述第一发射光线的跟踪结果,得到所述全视差视点图,具体包括:
计算相机阵列位置,设初始相机位置坐标为(x0,y0,z0)以向量表示为:
Figure FDA0003602998660000031
向量
Figure FDA0003602998660000032
分别为指向相机右方,上方,前方的单位向量,设水平与纵向视点数分别为M、N,视点间距分别为a、b,以视点相机C1为例,设视点相机所在横向视点数为m,纵向视点数为n,则从初始相机指向视点相机C1的向量:
Figure FDA0003602998660000033
则视点相机C1的位置为:
Figure FDA0003602998660000034
对于每个视点相机,启动一次光线跟踪获得视点的视点图,每次光线跟踪的线程数为每个视点图的像素数;
在每次光线跟踪中,首先计算每条光线的起点与方向,对于每个视点相机,光线起点即为视点相机位置,由于各视点相机为离轴相机,每个像素对应的光线方向通过初始针孔相机的光线方向计算而来,以视点相机C1的光线
Figure FDA0003602998660000035
进行计算:
设初始相机注视点O,为各相机公共焦平面中心,从初始相机位置指向注视点的向量为
Figure FDA0003602998660000036
长度为length,初始相机为针孔相机,从初始相机指向焦平面上像素的光线向量为
Figure FDA0003602998660000037
表示像素光线方向的单位向量为
Figure FDA0003602998660000038
则:
Figure FDA0003602998660000041
从初始相机指向视点相机C1的向量为
Figure FDA0003602998660000042
则光线
Figure FDA0003602998660000043
为:
Figure FDA0003602998660000044
确定光线的起点和方向后即可发射光线,每个视点相机处光线跟踪结果即为所述全视差视点图;
基于所述初始化参数计算得到所述水平光场编码图,具体包括:
启动光线跟踪获得水平光场编码图子像素,其中光线跟踪的线程数为编码图子像素数;
根据编码图子像素位置,计算编码图子像素对应的视点;
基于所述初始相机位置向量、所述右方单位向量、所述水平视点数、所述水平视点间距和所述所在位置横向视点数,得到所述第一向量的横向分量,所述横向分量为所述初始相机位置指向光线起点位置的向量;
基于所述横向分量和所述初始相机位置向量,计算得到所述光线起点位置;
以所述初始相机的注视点为各相机公共焦平面的中心,基于所述第一单位向量的长度、所述第一单位向量和从所述初始相机指向编码子像素的光线单位向量,计算得到从所述初始相机指向所述编码子像素的光线向量;
基于所述第一向量和所述从所述初始相机指向所述编码子像素的光线向量,得到从所述光线起点位置指向所述编码子像素的向量;
以所述光线起点位置为起点,基于所述光线起点位置指向所述编码子像素的向量发射光线,得到第二发射光线;
获得每个编码子像素对应所述第二发射光线的颜色,根据每个编码子像素所在红绿蓝通道赋予对应的灰度值,得到所述水平光场编码图,具体包括:
启动光线跟踪,此处光线跟踪的线程数为编码图子像素数,根据编码图子像素位置,计算子像素对应的视点;
然后计算编码图子像素对应光线跟踪线程的光线起点与光线方向,设初始相机位置坐标为(x0,y0,z0)以向量表示为:
Figure FDA0003602998660000051
设向量
Figure FDA0003602998660000052
为指向相机右方的单位向量,设水平视点数为M,视点间距为a,若子像素对应视点数为m,则初始相机位置指向光线起点位置的向量:
Figure FDA0003602998660000053
则得到光线起点位置:
Figure FDA0003602998660000054
设初始相机注视点O,为焦平面中心,从初始相机位置指向注视点的向量为
Figure FDA0003602998660000055
长度为length,从初始相机指向编码子像素的光线方向的单位向量为
Figure FDA0003602998660000056
光线向量为
Figure FDA0003602998660000057
则:
Figure FDA0003602998660000058
从初始相机指向光线起点的向量为
Figure FDA0003602998660000059
则光线方向为:
Figure FDA00036029986600000510
然后确定光线的起点和方向后即可发射光线;
在每个子像素得到对应光线的颜色后,根据子像素所在红绿蓝通道,赋予对应的灰度值,得到所述水平光场编码图;
基于所述初始化参数计算得到所述集成成像编码图,具体包括:
启动光线跟踪获得集成成像编码图像素,其中光线跟踪的线程数为编码图像素数;
计算编码图像素对应的视点;
获取所述光线起点位置、所述初始相机的注视点、物体到最佳观看面距离与屏幕到最佳观看面比例、所述初始相机指向所述注视点的向量,基于所述初始相机指向所述注视点的向量和所述物体到最佳观看面距离与屏幕到最佳观看面比例,计算得到所述初始相机到所述公共焦平面的中心向量;
基于从所述初始相机指向所述编码图像素的光线单位向量、所述中心向量和所述中心向量的长度,得到所述初始相机指向所述编码图像素的向量;
以所述光线起点位置为起点,基于所述光线起点位置指向所述编码图像素的向量发射光线,得到第三发射光线;
给所述第三发射光线的跟踪结果赋予编码像素,得到所述集成成像编码图;具体包括:
启动光线跟踪,此处光线跟踪的线程数为编码图像素数,计算编码像素对应的视点;
计算编码像素对应线程的光线起点和方向,设初始相机位置坐标为(x0,y0,z0)以向量表示:
Figure FDA0003602998660000061
向量
Figure FDA0003602998660000062
分别为指向相机右方,上方的单位向量,设水平与纵向视点数分别为M、N,间距分别为a、b,若子像素对应视点为横向视点为m,纵向视点为n,则从初始相机指向光线起点的向量:
Figure FDA0003602998660000063
则光线起点位置:
Figure FDA0003602998660000064
设初始相机注视点O,物体到最佳观看面距离与屏幕到最佳观看面比例为b,从相机位置指向注视点的向量为
Figure FDA0003602998660000071
Figure FDA0003602998660000072
垂直于焦平面,延长线与焦平面相交于中心,则相机到焦平面中心向量为:
Figure FDA0003602998660000073
Figure FDA0003602998660000074
长度为length,从初始相机指向编码像素的光线向量为
Figure FDA0003602998660000075
表示方向的单位向量为
Figure FDA0003602998660000076
则:
Figure FDA0003602998660000077
初始相机指向光线起点的向量为
Figure FDA0003602998660000078
则光线方向为:
Figure FDA0003602998660000079
确定光线的起点和方向后即可发射光线;
将光线跟踪结果直接赋予编码像素,得到集成成像编码图。
2.根据权利要求1所述的三维显示海量数据的处理方法,其特征在于,所述由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果,之后还包括:
若检测到交互或者参数设置发生改变时,重新启动计算,其中交互操作包括旋转和缩放。
3.一种三维显示海量数据的处理系统,其特征在于,包括:
获取模块,用于获取待显示海量数据的初始化参数;
计算模块,用于基于所述初始化参数分别计算得到全息图、全视差视点图、水平光场编码图和集成成像编码图;
显示模块,用于由所述全息图、所述全视差视点图、所述水平光场编码图和所述集成成像编码图获得显示编码图,通过检测所述显示编码图的交互得到所述待显示海量数据的三维显示结果;
所述获取模块具体用于:
初始化相机和三维场景,将三维模型的中心设为所述相机的注视点;
所述计算模块中的基于所述初始化参数计算得到全息图,具体包括:
启动光线跟踪,其中光线跟踪线程数为全息图像素数;
由相机向三维场景发射光线;
除去其中不与物体相交的光线后,基于与物体相交的光线计算物体表面颜色,并储存光线长度,确定从相机位置指向注视点的第一单位向量、光线方向的第二单位向量以及击中物体光线长度,基于所述第一单位向量、所述第二单位向量和所述击中物体光线长度,得到物体表面深度,根据所述物体表面深度将所述三维场景分成若干层二维图像;
基于预设衍射快速计算方法计算所述若干层二维图像中每一层衍射到全息面后的复振幅;
对所述复振幅进行编码,得到所述全息图,具体包括:
启动光线跟踪,光线跟踪线程数为全息图像素数,由初始相机向三维场景发射光线,将三维场景进行分层:
对应不与物体相交的光线,不参与分层,对于与物体相交的光线,计算物体表面的颜色,同时储存光线的长度,令
Figure FDA0003602998660000081
为从相机位置指向注视点的单位向量,
Figure FDA0003602998660000082
为光线方向的单位向量,d为光线长度,当光线击中物体后得到:
Figure FDA0003602998660000083
再根据深度信息,将三维场景分成若干层二维图像;
对于三维场景的每一层,使用衍射快速计算的方法计算每一层衍射到全息面后的复振幅,得到全息面的复振幅,对复振幅进行编码,计算得到所述全息图;
所述计算模块中的基于所述初始化参数计算得到全视差视点图,具体包括:
确定初始相机三维位置坐标,基于所述初始相机三维位置坐标获得初始相机位置向量;
获取所述初始相机的右方单位向量、上方单位向量和前方单位向量,确定水平视点数、纵向视点数、水平视点间距和纵向视点间距;
获取任意视点相机的所在位置横向视点数和所在位置纵向视点数,基于所述右方单位向量、所述上方单位向量、所述前方单位向量、所述水平视点数、所述纵向视点数、所述水平视点间距、所述纵向视点间距、所述所在位置横向视点数和所述所在位置纵向视点数,计算得到所述初始相机指向所述任意视点相机的第一向量;
由所述第一向量和所述初始相机位置向量计算得到所述任意视点相机的位置;
对每个视点相机启动一次光线跟踪获得每个视点相机对应的视点图,其中每次光线跟踪的线程数为每个视点图的像素数;
以所述初始相机的注视点为各相机公共焦平面的中心,基于所述第一单位向量的长度、所述第一单位向量和从所述初始相机指向公共焦平面的光线单位向量,计算得到从所述初始相机指向所述公共焦平面的光线向量;
基于所述第一向量和所述从所述初始相机指向所述公共焦平面的光线向量,得到从所述任意视点相机指向所述公共焦平面的光线向量;
以所述任意视点相机的位置为起点,基于所述任意视点相机指向所述公共焦平面的光线向量发射光线,得到第一发射光线;
获取所述第一发射光线的跟踪结果,得到所述全视差视点图,具体包括:
计算相机阵列位置,设初始相机位置坐标为(x0,y0,z0)以向量表示为:
Figure FDA0003602998660000091
向量
Figure FDA0003602998660000092
分别为指向相机右方,上方,前方的单位向量,设水平与纵向视点数分别为M、N,视点间距分别为a、b,以视点相机C1为例,设视点相机所在横向视点数为m,纵向视点数为n,则从初始相机指向视点相机C1的向量:
Figure FDA0003602998660000101
则视点相机C1的位置为:
Figure FDA0003602998660000102
对于每个视点相机,启动一次光线跟踪获得视点的视点图,每次光线跟踪的线程数为每个视点图的像素数;
在每次光线跟踪中,首先计算每条光线的起点与方向,对于每个视点相机,光线起点即为视点相机位置,由于各视点相机为离轴相机,每个像素对应的光线方向通过初始针孔相机的光线方向计算而来,以视点相机C1的光线
Figure FDA0003602998660000103
进行计算:
设初始相机注视点O,为各相机公共焦平面中心,从初始相机位置指向注视点的向量为
Figure FDA0003602998660000104
长度为length,初始相机为针孔相机,从初始相机指向焦平面上像素的光线向量为
Figure FDA0003602998660000105
表示像素光线方向的单位向量为
Figure FDA0003602998660000106
则:
Figure FDA0003602998660000107
从初始相机指向视点相机C1的向量为
Figure FDA0003602998660000108
则光线
Figure FDA0003602998660000109
为:
Figure FDA00036029986600001010
确定光线的起点和方向后即可发射光线,每个视点相机处光线跟踪结果即为所述全视差视点图;
所述计算模块中的基于所述初始化参数计算得到所述水平光场编码图,具体包括:
启动光线跟踪获得水平光场编码图子像素,其中光线跟踪的线程数为编码图子像素数;
根据编码图子像素位置,计算编码图子像素对应的视点;
基于所述初始相机位置向量、所述右方单位向量、所述水平视点数、所述水平视点间距和所述所在位置横向视点数,得到所述第一向量的横向分量,所述横向分量为所述初始相机位置指向光线起点位置的向量;
基于所述横向分量和所述初始相机位置向量,计算得到所述光线起点位置;
以所述初始相机的注视点为各相机公共焦平面的中心,基于所述第一单位向量的长度、所述第一单位向量和从所述初始相机指向编码子像素的光线单位向量,计算得到从所述初始相机指向所述编码子像素的光线向量;
基于所述第一向量和所述从所述初始相机指向所述编码子像素的光线向量,得到从所述光线起点位置指向所述编码子像素的向量;
以所述光线起点位置为起点,基于所述光线起点位置指向所述编码子像素的向量发射光线,得到第二发射光线;
获得每个编码子像素对应所述第二发射光线的颜色,根据每个编码子像素所在红绿蓝通道赋予对应的灰度值,得到所述水平光场编码图,具体包括:
启动光线跟踪,此处光线跟踪的线程数为编码图子像素数,根据编码图子像素位置,计算子像素对应的视点;
然后计算编码图子像素对应光线跟踪线程的光线起点与光线方向,设初始相机位置坐标为(x0,y0,z0)以向量表示为:
Figure FDA0003602998660000111
设向量
Figure FDA0003602998660000112
为指向相机右方的单位向量,设水平视点数为M,视点间距为a,若子像素对应视点数为m,则初始相机位置指向光线起点位置的向量:
Figure FDA0003602998660000121
则得到光线起点位置:
Figure FDA0003602998660000122
设初始相机注视点O,为焦平面中心,从初始相机位置指向注视点的向量为
Figure FDA0003602998660000123
长度为length,从初始相机指向编码子像素的光线方向的单位向量为
Figure FDA0003602998660000124
光线向量为
Figure FDA0003602998660000125
则:
Figure FDA0003602998660000126
从初始相机指向光线起点的向量为
Figure FDA0003602998660000127
则光线方向为:
Figure FDA0003602998660000128
然后确定光线的起点和方向后即可发射光线;
在每个子像素得到对应光线的颜色后,根据子像素所在红绿蓝通道,赋予对应的灰度值,得到所述水平光场编码图;
所述计算模块中的基于所述初始化参数计算得到所述集成成像编码图,具体包括:
启动光线跟踪获得集成成像编码图像素,其中光线跟踪的线程数为编码图像素数;
计算编码图像素对应的视点;
获取所述光线起点位置、所述初始相机的注视点、物体到最佳观看面距离与屏幕到最佳观看面比例、所述初始相机指向所述注视点的向量,基于所述初始相机指向所述注视点的向量和所述物体到最佳观看面距离与屏幕到最佳观看面比例,计算得到所述初始相机到所述公共焦平面的中心向量;
基于从所述初始相机指向所述编码图像素的光线单位向量、所述中心向量和所述中心向量的长度,得到所述初始相机指向所述编码图像素的向量;
以所述光线起点位置为起点,基于所述光线起点位置指向所述编码图像素的向量发射光线,得到第三发射光线;
给所述第三发射光线的跟踪结果赋予编码像素,得到所述集成成像编码图;具体包括:
启动光线跟踪,此处光线跟踪的线程数为编码图像素数,计算编码像素对应的视点;
计算编码像素对应线程的光线起点和方向,设初始相机位置坐标为(x0,y0,z0)以向量表示:
Figure FDA0003602998660000131
向量
Figure FDA0003602998660000132
分别为指向相机右方,上方的单位向量,设水平与纵向视点数分别为M、N,间距分别为a、b,若子像素对应视点为横向视点为m,纵向视点为n,则从初始相机指向光线起点的向量:
Figure FDA0003602998660000133
则光线起点位置:
Figure FDA0003602998660000134
设初始相机注视点O,物体到最佳观看面距离与屏幕到最佳观看面比例为b,从相机位置指向注视点的向量为
Figure FDA0003602998660000135
Figure FDA0003602998660000136
垂直于焦平面,延长线与焦平面相交于中心,则相机到焦平面中心向量为:
Figure FDA0003602998660000137
Figure FDA0003602998660000138
长度为length,从初始相机指向编码像素的光线向量为
Figure FDA0003602998660000139
表示方向的单位向量为
Figure FDA00036029986600001310
则:
Figure FDA00036029986600001311
初始相机指向光线起点的向量为
Figure FDA0003602998660000141
则光线方向为:
Figure FDA0003602998660000142
确定光线的起点和方向后即可发射光线;
将光线跟踪结果直接赋予编码像素,得到集成成像编码图。
4.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1或2所述三维显示海量数据的处理方法的步骤。
5.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1或2所述三维显示海量数据的处理方法的步骤。
CN202110405740.3A 2021-04-15 2021-04-15 一种三维显示海量数据的处理方法及系统 Active CN113223144B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110405740.3A CN113223144B (zh) 2021-04-15 2021-04-15 一种三维显示海量数据的处理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110405740.3A CN113223144B (zh) 2021-04-15 2021-04-15 一种三维显示海量数据的处理方法及系统

Publications (2)

Publication Number Publication Date
CN113223144A CN113223144A (zh) 2021-08-06
CN113223144B true CN113223144B (zh) 2022-06-21

Family

ID=77087442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110405740.3A Active CN113223144B (zh) 2021-04-15 2021-04-15 一种三维显示海量数据的处理方法及系统

Country Status (1)

Country Link
CN (1) CN113223144B (zh)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0412545D0 (en) * 2004-06-04 2004-07-07 Univ Sussex Three dimensional displays
CN101819375B (zh) * 2010-04-16 2012-05-30 浙江大学 全视差三维显示装置
CN102932646B (zh) * 2011-08-10 2015-07-08 上海易维视科技有限公司 二维图像的多视点显示方法及系统
CN105353582A (zh) * 2015-12-01 2016-02-24 浙江优创信息技术有限公司 一种全息投影的展示系统及基于该系统的操作方法
CN105700320B (zh) * 2016-04-13 2018-06-26 苏州大学 一种基于空间光调制器的全息三维显示方法及装置
CN107563088B (zh) * 2017-09-14 2019-10-01 北京邮电大学 一种基于光线跟踪算法的光场显示设备仿真方法
CN110246146B (zh) * 2019-04-29 2021-07-30 北京邮电大学 基于多次深度图像渲染的全视差光场内容生成方法及装置
CN111812956B (zh) * 2020-06-12 2021-07-06 北京邮电大学 基于体数据的计算全息图生成方法、装置和电子设备

Also Published As

Publication number Publication date
CN113223144A (zh) 2021-08-06

Similar Documents

Publication Publication Date Title
US20130027394A1 (en) Apparatus and method of multi-view rendering
US20160232710A1 (en) Generation of three-dimensional imagery from a two-dimensional image using a depth map
CN110246146A (zh) 基于多次深度图像渲染的全视差光场内容生成方法及装置
GB2546720B (en) Method of and apparatus for graphics processing
US11961250B2 (en) Light-field image generation system, image display system, shape information acquisition server, image generation server, display device, light-field image generation method, and image display method
US20220321857A1 (en) Light field display method and system, storage medium and display panel
CN112184873B (zh) 分形图形创建方法、装置、电子设备和存储介质
US20110128286A1 (en) Image restoration apparatus and method thereof
US20140184600A1 (en) Stereoscopic volume rendering imaging system
CN116188689A (zh) 辐射场的处理方法、存储介质以及计算机终端
WO2012140397A2 (en) Three-dimensional display system
US20180213215A1 (en) Method and device for displaying a three-dimensional scene on display surface having an arbitrary non-planar shape
CN115861508A (zh) 一种图像渲染方法、装置、设备、存储介质及产品
CN113223144B (zh) 一种三维显示海量数据的处理方法及系统
CN114879377B (zh) 水平视差三维光场显示系统的参数确定方法、装置及设备
CN109816765B (zh) 面向动态场景的纹理实时确定方法、装置、设备和介质
CN115830202A (zh) 一种三维模型渲染方法和装置
CN116805349A (zh) 室内场景重建方法、装置、电子设备及介质
CN115841539A (zh) 一种基于可视外壳的三维光场生成方法和装置
CN111327886A (zh) 3d光场渲染方法及装置
US20160148415A1 (en) Depth of field synthesis using ray tracing approximation
CN111010559B (zh) 裸眼三维光场内容的生成方法及装置
WO2022175688A1 (en) Image processing
WO2018071338A1 (en) Virtual reality telepresence
CN108495117B (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