发明名称 基于粒子追踪的集成成像微单元图像并行生成方法
摘要 本发明公开了一种基于粒子追踪的集成成像微单元图像并行生成方法,主要用于解决现有微单元图像生成方法并行度差,速度慢的问题。其主要实现步骤是:(1)生成三维地形场景;(2)放置微透镜;(3).放置微单元图像阵列平面;(4)获得像素点编号;(5)发射追踪粒子;(6)移动追踪粒子;(7)用背景颜色替换初始发射点的颜色;(8)用表面颜色替换初始发射点的颜色;(9)判断是否存在追踪粒子;(10)继续移动追踪粒子;(11)判断像素点编号值是否等于N;(12)生成结果。本发明在保证生成微单元图像成像质量的基础上,具有并行度高、运行速度快的优点。
申请公布号 CN103456036B 申请公布日期 2016.01.20
申请号 CN201310392012.9 申请日期 2013.08.31
申请人 西安电子科技大学 发明人 王晓蕊;张启平;李凌澄;袁影;姚凯凯;张建奇;黄曦;刘德连;何国经
分类号 G06T15/06(2011.01)I 主分类号 G06T15/06(2011.01)I
代理机构 陕西电子工业专利中心 61205 代理人 田文英;王品华
主权项 基于粒子追踪的集成成像微单元图像并行生成方法,包括如下步骤:(1)生成三维地形场景:1a)利用一个可见光CCD相机,获得实际三维场景正交投影的可见光图像;利用一个深度相机,获得实际三维场景的深度图像;1b)利用地形网格重建方法,将可见光图像和深度图像转化为三维地形场景;1c)以三维地形场景的中心为原点,将三维地形场景向后的方向设为z轴正方向,三维地形场景向右的方向设为x轴正方向,三维地形场景向上的方向设为y轴正方向,建立坐标系;1d)采用包围盒选择方法,在三维地形场景中选择一个最小包围盒;(2)放置微透镜:在三维地形场景中,选择一个与z轴垂直的微透镜阵列平面,在微透镜阵列平面上放置多个微透镜,各微透镜之间紧密排列;(3)放置微单元图像阵列平面:在三维地形场景中,放置一个与z轴垂直的微单元图像阵列平面,三维地形场景通过微透镜阵列在该平面生成微单元图像阵列,微单元图像阵列中每一幅微单元图像与每一个微透镜一一对应;(4)获得像素点编号:对微单元图像阵列中的每一幅微单元图像的像素点,依次从1到N进行编号,每个像素点获得一个对应的像素点编号,N表示微单元图像像素总数;(5)发射追踪粒子:5a)在1到N的范围内,依次选取每一个像素点编号,在微单元图像阵列中将与所选取像素点编号对应的所有像素点作为初始发射点;5b)从每一个初始发射点发出一个追踪粒子,该追踪粒子穿过与其对应的微透镜中心,在最小包围盒前表面上的停止位置处停止;(6)移动追踪粒子:将发出的所有追踪粒子,在同一个时刻移动一个步进矢量;所述的步进矢量是按照以下步骤获得的:第一步,按照下式,计算步进矢量的第一选择矢量:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>u</mi><mo>=</mo><mrow><mo>(</mo><mn>1</mn><mo>,</mo><mfrac><mi>Y</mi><mi>X</mi></mfrac><mo>,</mo><mfrac><mi>Z</mi><mi>X</mi></mfrac><mo>)</mo></mrow><mo>&times;</mo><mi>s</mi></mrow>]]></math><img file="FDA0000807044330000021.GIF" wi="334" he="126" /></maths>其中,u表示步进矢量的第一选择矢量,X、Y、Z分别表示追踪粒子与发射追踪粒子连线方向的单位矢量对应的x轴、y轴、z轴坐标值,s表示深度图像的像素边长;第二步,按照下式,计算步进矢量的第二选择矢量:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>w</mi><mo>=</mo><mrow><mo>(</mo><mfrac><mi>X</mi><mi>Y</mi></mfrac><mo>,</mo><mn>1</mn><mo>,</mo><mfrac><mi>Z</mi><mi>Y</mi></mfrac><mo>)</mo></mrow><mo>&times;</mo><mi>s</mi></mrow>]]></math><img file="FDA0000807044330000022.GIF" wi="346" he="136" /></maths>其中,w表示步进矢量的第二选择矢量,X、Y、Z分别表示追踪粒子与发射追踪粒子连线方向的单位矢量对应的x轴、y轴、z轴坐标值,s表示深度图像的像素边长;第三步,比较第一选择矢量和第二选择矢量的模值,从二者中选择模值较小的一个矢量作为所述的步进矢量;(7)用背景颜色替换初始发射点的颜色:用三维地形场景背景对应的颜色,替换所有发出追踪粒子在最小包围盒外部的初始发射点的颜色;(8)用表面颜色替换初始发射点的颜色:用追踪粒子各自所在着色小长方体的表面颜色,分别替换在任意一个着色小长方体内部的追踪粒子所对应的初始发射点的颜色;(9)判断是否存在追踪粒子:判断是否存在颜色未被替换的初始发射点发出的追踪粒子,若存在,则执行步骤(10),否则,执行步骤(11);(10)继续移动追踪粒子:将所有颜色未被替换的初始发射点发出的追踪粒子,在同一时刻继续移动一个步进矢量,执行步骤(7);所述的步进矢量是按照以下步骤获得的:第一步,按照下式,计算步进矢量的第一选择矢量:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mi>u</mi><mo>=</mo><mrow><mo>(</mo><mn>1</mn><mo>,</mo><mfrac><mi>Y</mi><mi>X</mi></mfrac><mo>,</mo><mfrac><mi>Z</mi><mi>X</mi></mfrac><mo>)</mo></mrow><mo>&times;</mo><mi>s</mi></mrow>]]></math><img file="FDA0000807044330000023.GIF" wi="334" he="131" /></maths>其中,u表示步进矢量的第一选择矢量,X、Y、Z分别表示追踪粒子与发射追踪粒子连线方向的单位矢量对应的x轴、y轴、z轴坐标值,s表示深度图像的像素边长;第二步,按照下式,计算步进矢量的第二选择矢量:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><mi>w</mi><mo>=</mo><mrow><mo>(</mo><mfrac><mi>X</mi><mi>Y</mi></mfrac><mo>,</mo><mn>1</mn><mo>,</mo><mfrac><mi>Z</mi><mi>Y</mi></mfrac><mo>)</mo></mrow><mo>&times;</mo><mi>s</mi></mrow>]]></math><img file="FDA0000807044330000031.GIF" wi="336" he="126" /></maths>其中,w表示步进矢量的第二选择矢量,X、Y、Z分别表示追踪粒子与发射追踪粒子连线方向的单位矢量对应的x轴、y轴、z轴坐标值,s表示深度图像的像素边长;第三步,比较第一选择矢量和第二选择矢量的模值,从二者中选择模值较小的一个矢量作为所述的步进矢量;(11)判断像素点编号值是否等于N:判断初始发射点对应的像素点编号值是否与微单元图像像素的总数N相等,若相等,则执行步骤(12),否则,执行步骤(5);(12)生成结果:将微单元图像阵列作为生成结果。
地址 710071 陕西省西安市太白南路2号