发明名称 一种空中无缝虚拟漫游系统构建方法
摘要 本发明涉及一种空中无缝虚拟漫游系统构建方法,该方法包括以下步骤:航拍采样点布局、航拍图片采集、序列全景图生成、空中全景图标定、地面场景表达、航路指定、场景绘制及无缝漫游,该方法采用基于图像的绘制技术避免了场景三维重构巨大数据量对系统硬件的苛刻要求,而且通过合理安排空中全景拍摄的采样点,确保了用尽可能少的采样数据获得尽可能丰富的地面场景,进而完成无约束地任意指定航路的无缝沉浸式虚拟漫游。
申请公布号 CN103646424A 申请公布日期 2014.03.19
申请号 CN201310616166.1 申请日期 2013.11.26
申请人 北京空间机电研究所 发明人 张春晓;文高进;林招荣;姚毅刚;安超;王洪民;尚志鸣
分类号 G06T17/30(2006.01)I 主分类号 G06T17/30(2006.01)I
代理机构 中国航天科技专利中心 11009 代理人 范晓毅
主权项 1.一种空中无缝虚拟漫游系统构建方法,其特征在于:包括如下步骤:步骤(一)、航拍采样点布局,即得到最稀疏采样条件下的相邻采样点之间的位置关系,包括相邻采样点之间的视角区域对应的角度α和相邻采样点之间的基线距离B,具体计算公式如下:<![CDATA[<math><mrow><mi>tan</mi><mi>&alpha;</mi><mo>=</mo><mfrac><mrow><mi>h</mi><mo>-</mo><mi>&Delta;h</mi></mrow><mi>B</mi></mfrac></mrow></math>]]></maths><![CDATA[<math><mrow><msup><mrow><mo>(</mo><mi>sin</mi><mi>&alpha;</mi><mo>)</mo></mrow><mn>2</mn></msup><msup><mi>B</mi><mn>2</mn></msup><mo>-</mo><mrow><mo>(</mo><mi>h</mi><mo>&CenterDot;</mo><mi>sin</mi><mn>2</mn><mi>&alpha;</mi><mo>+</mo><mfrac><mrow><mi>&Delta;h</mi><mo>&CenterDot;</mo><msup><mrow><mo>(</mo><mi>sin</mi><mi>&alpha;</mi><mo>)</mo></mrow><mn>2</mn></msup></mrow><mrow><mi>tan</mi><mi>&beta;</mi></mrow></mfrac><mo>)</mo></mrow><mi>B</mi><mo>+</mo><mi>h</mi><mrow><mo>(</mo><mi>h</mi><mo>-</mo><mi>&Delta;h</mi><mo>)</mo></mrow><mo>=</mo><mn>0</mn></mrow></math>]]></maths>其中:<![CDATA[<math><mrow><mi>tan</mi><mi>&beta;</mi><mo>=</mo><mfrac><mrow><mi>B</mi><mo>&CenterDot;</mo><mi>&Delta;h</mi><mo>&CenterDot;</mo><msup><mrow><mo>(</mo><mi>sin</mi><mi>&alpha;</mi><mo>)</mo></mrow><mn>2</mn></msup></mrow><mrow><msup><mrow><mo>(</mo><mi>h</mi><mo>-</mo><mi>B</mi><mi>sin</mi><mi>&alpha;</mi><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><mn>2</mn><mi>hB</mi><mi>sin</mi><mi>&alpha;</mi><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>cos</mi><mi>&alpha;</mi><mo>)</mo></mrow><mo>-</mo><mi>h</mi><mo>&CenterDot;</mo><mi>&Delta;h</mi></mrow></mfrac><mo>;</mo></mrow></math>]]></maths>Δh为高程差;h为航高;β为相邻两个采样点高度感知的角度范围;步骤(二)、在布局采样点处进行航拍图片采集;步骤(三)、将采集得到的航拍图片制作成全景图;步骤(四)、对步骤(三)得到的各个采样点的全景图进行标定,得到全景图之间的位置关系,即得到旋转矩阵R<sub>12</sub>和平移矩阵T<sub>12</sub>,具体方法如下:首先将各个采样点的全景图表示成立方体全景图,由相邻两个全景图之间的匹配点计算相邻两个全景图之间的基本矩阵,基本矩阵<img file="FDA0000422935440000014.GIF" wi="192" he="94" />可以表达为:<![CDATA[<math><mrow><msub><mi>F</mi><mrow><msubsup><mi>face</mi><mi>i</mi><mn>1</mn></msubsup><mo>,</mo><msubsup><mi>face</mi><mi>j</mi><mn>2</mn></msubsup></mrow></msub><mo>=</mo><msup><mrow><mo>(</mo><msub><mi>R</mi><msubsup><mi>face</mi><mi>j</mi><mn>2</mn></msubsup></msub><msup><mi>K</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mo>)</mo></mrow><mi>T</mi></msup><mrow><mo>(</mo><mrow><mo>(</mo><mo>-</mo><msubsup><mi>R</mi><mn>12</mn><mrow><mo>-</mo><mn>1</mn></mrow></msubsup><msub><mi>T</mi><mn>12</mn></msub><mo>)</mo></mrow><mo>&times;</mo><mrow><mo>(</mo><msubsup><mi>R</mi><mn>12</mn><mrow><mo>-</mo><mn>1</mn></mrow></msubsup><msub><mi>R</mi><msubsup><mi>face</mi><mi>i</mi><mn>1</mn></msubsup></msub><msup><mi>K</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mo>)</mo></mrow><mo>)</mo></mrow></mrow></math>]]></maths>其中:<img file="FDA0000422935440000016.GIF" wi="268" he="89" />分别表示立方体全景图的6个表面{L,F,R,B,U,D}中的两个面,<img file="FDA0000422935440000017.GIF" wi="127" he="94" />和<img file="FDA0000422935440000018.GIF" wi="128" he="94" />分别表示了匹配点在相邻两个全景图所在的面相对于面F的旋转矩阵,K是立方体全景图的内参矩阵;由基本矩阵<img file="FDA0000422935440000019.GIF" wi="190" he="94" />分解可以求解出R<sub>12</sub>,T<sub>12</sub>;步骤(五)、地面场景表达,即将地面场景划分为可见性变化区域和可见性一致区域,具体方法为:(1)、以全景图的匹配点构建三角形,形成三角形网格;(2)、判断相邻两个全景图上对应的三角形是否来自空间同一平面,若所述两个三角形经单应阵变换对齐后区域的相关性达到设定的相关性阈值,则所述两个三角形是来自空间同一平面的投影,判定为可见性一致区域;(3)、若所述两个三角形经单应阵变换对齐后区域的相关性未达到设定的相关性阈值,则在所述两个三角形内部继续寻找匹配点,进一步分割,重复步骤(2)进行判断,若两个三角形经单应阵变换对齐后区域的相关性仍未达到设定的相关性阈值,则再进一步分割,重复步骤(2),依此类推,直至分割后的两个三角形面积小于等于设定的最小面积值,若两个三角形经单应阵变换对齐后区域的相关性仍未达到设定的相关性阈值,则判定为可见性变化区域;其中单应阵变换矩阵如下:<![CDATA[<math><mrow><msub><mi>H</mi><mrow><msubsup><mi>face</mi><mi>j</mi><mn>2</mn></msubsup><mo>&RightArrow;</mo><msubsup><mi>face</mi><mi>i</mi><mn>1</mn></msubsup></mrow></msub><mo>=</mo><msubsup><mi>KR</mi><mrow><mi>fa</mi><msub><mi>ce</mi><mi>i</mi></msub></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msubsup><mrow><mo>(</mo><mi>I</mi><mo>-</mo><mfrac><mrow><msub><mi>T</mi><mn>12</mn></msub><msup><mover><mi>&pi;</mi><mo>~</mo></mover><mi>T</mi></msup></mrow><mrow><mn>1</mn><mo>+</mo><msup><mover><mi>&pi;</mi><mo>~</mo></mover><mi>T</mi></msup><msub><mi>T</mi><mn>12</mn></msub></mrow></mfrac><mo>)</mo></mrow><msub><mi>R</mi><mn>12</mn></msub><msub><mi>R</mi><msub><mi>face</mi><mi>j</mi></msub></msub><msup><mi>K</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup></mrow></math>]]></maths>其中,<img file="FDA0000422935440000022.GIF" wi="51" he="59" />是由全景图上三个匹配点确定的空间点<img file="FDA0000422935440000023.GIF" wi="328" he="86" />确定的平面方程,满足下式:<![CDATA[<math><mrow><mover><mi>&pi;</mi><mo>&RightArrow;</mo></mover><mo>=</mo><mfenced open='(' close=')'><mtable><mtr><mtd><mrow><mo>(</mo><mover><msub><mi>X</mi><mn>1</mn></msub><mo>&RightArrow;</mo></mover><mo>-</mo><mover><msub><mi>X</mi><mn>3</mn></msub><mo>&RightArrow;</mo></mover><mo>)</mo></mrow><mo>&times;</mo><mrow><mo>(</mo><mover><msub><mi>X</mi><mn>2</mn></msub><mo>&RightArrow;</mo></mover><mo>-</mo><mover><msub><mi>X</mi><mn>3</mn></msub><mo>&RightArrow;</mo></mover><mo>)</mo></mrow></mtd></mtr><mtr><mtd><mo>-</mo><msup><mover><msub><mi>X</mi><mn>3</mn></msub><mo>&RightArrow;</mo></mover><mi>T</mi></msup><mrow><mo>(</mo><mover><msub><mi>X</mi><mn>1</mn></msub><mo>&RightArrow;</mo></mover><mo>&times;</mo><mover><msub><mi>X</mi><mn>2</mn></msub><mo>&RightArrow;</mo></mover><mo>)</mo></mrow></mtd></mtr></mtable></mfenced><mo>=</mo><mfenced open='(' close=')'><mtable><mtr><mtd><mover><mi>&pi;</mi><mo>~</mo></mover></mtd></mtr><mtr><mtd><mn>1</mn></mtd></mtr></mtable></mfenced><mo>=</mo><msup><mrow><mo>(</mo><msub><mi>&pi;</mi><mn>1</mn></msub><mo>,</mo><msub><mi>&pi;</mi><mn>2</mn></msub><mo>,</mo><msub><mi>&pi;</mi><mn>3</mn></msub><mo>,</mo><mn>1</mn><mo>)</mo></mrow><mi>T</mi></msup></mrow></math>]]></maths>步骤(六)、在采样点包络的区域内,用户指定漫游航路,并在漫游航路上布置多个虚拟视点;步骤(七)、绘制航路上虚拟视点处的全景图,具体方法为:可见性一致区域内的三角形网格由单应阵变换矩阵直接映射,可见性变化区域内的三角形网格由离虚拟视点最近的采样点处的三角形直接映射;步骤(八)、完成虚拟视点处全景图之间的平滑过渡,实现无缝漫游。
地址 100076 北京市丰台区南大红门路1号9201信箱5分箱