一种真三维显示数据生成的方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第! #卷
式展开内部 函 数 $ 通 过 检 验 比 较 % 找到一组比较 合适 的 优 化 选 项 组 合 ! * * % * * % * " ? ,% Y Y !% Y 4 Y * + 可以提高程序代码的执行效率 $ 实验中经过编译 器优化 % 刷新速度提高了 F 帧* % 达到 ! $ 3 " 帧* 3 ! " 代码优化 ! 采用 7 在进行代 码 优 化 之 前 % 5 6 @ * : 10 : 6 0 Q工 具找出程序中的 + 热 点, 代 码% 针对这些代码进行 优化 ) 增加并行执行的指令数 % 充分利用 " 开循环 % T U ` 的指令缓存 # # 数据打包处理 %即对短字长的数据使用宽
,"*-%./ !"#$%& '"(%) *+ !"#$ ,!'0*-1"3%2 1".$%2 ./ !%&$ 4".%2
机# ! 显 卡 为 <K % X ^为% , . ) !K ! # B #>= C hP N \ 上 测 试! 如 图 ! 所 示! 分辨率为 J / 4 ) , (E > D # #$ 颜色值设置为 ! $ ! 深度值设 A # #WC # #! "位# [ ' 6 * 置为 > C位% '" #! 基于 = / , 9 ?G R O处理 M 即应用程序将 F ) ( h 2 提供了 双 缓 存 技 术 ! 8 $ 已经绘制好的图像直接 后台缓存 # [ / O _[ 1 1 ) . $ 中显示 ! 显示 的同时 送到前台缓存 # U . , ( 6[ 1 1 ) . 后台缓存已经开 始 下 一 帧 图 像 的 绘 制 ! 如此循环 首先从后 反复 可 以 提 高 系 统 效 率 % 如 图 D 所 示 ! 台缓 存 中 读 取 体 素 值 ! 包括无符号A位整型红 # & 绿# & 蓝# 颜色值以及> J$ h$ [$ C位浮点型深度 ! 然后按照传输编码协议对读取的体素数 值# I$ 据进行编码 ! 对于 J& h& [D 个无符号 A 位 整数可 采用位运算 ! 比如移位 ! 按 位 与! 按 位 或%对 于 > C 位深 度 值 ! 因 为 是 浮 点 型! 首先转换为整型再移 $写 位 % 最后 再 将 编 码 后 Βιβλιοθήκη Baidu 像 素 值 # % , 4 ) 47 / 6 / 入前台缓存显示即真三维显示数据的传输 %
实验结果发 现 ! 显 示图 像的 刷 新 率 为 > 帧 + ! * 远远低于 ! + % 因 此对 程序 中 读 取 代 码 & 写屏 "帧 * 代码 & 编码等关键代码以及可能影响程序执行效率 的代码进行了速度测试 % 测试方法 是利用计 时函 数6 # $ ! 图像绘制一次 ! 画面帧数累计加 ' G ) h ) 6 K ' G ) % 当6 # $ 达到># 刷新率 U > ' G ) h ) 6 K ' G ) # #G *时 ! X c 等于此时帧数值 !所有值返回初始值 % 如 表 > 所
* " 括J 还 包 括 垂 直 于 屏 幕 的 深 度 值) % h [ 颜色值 !
) >* $ 是目前最新的体 K . )D 79 , 0 G ) 6 . ' O7 ' * 0 / 8 5
数据显示技术之一 ! 它采用了一 种特 别的立 体显 示方式 " 利用 层 叠 屏 幕 的 方 式 显 示 三 维 物 体 % 与 其它三维显示方 式 不 同 ! 固态体积式真三维显示 技术具有如下特点 " 观察者不需要任何的辅 . 由于是空 间 成 像 ! D* 助设备就可以 从 多 个 角 度 直 接 观 察 物 体 ) ! 是真 正的三维立体显示 ' 又有物 / 显示中的 三 维 物 体 既 有 心 理 景 深 ! 理景深 ' 0 直线笛卡尔几何特性可以使三维图像不产 生变形 ' 抗环境干扰 & 体积 1 其系统结构具有抗震动 & 小便于携带 % 以上特点使得这种立体显示技术有望成为未 来立 体 显 示 技 术 的 主 流 ! 并 且 在 航 天& 军 事& 科学 研究 & 医学三维可视化等领域得到广泛应用 % 目前 ! 这种立 体 显 示 技 术 仍 存 在 一 些 有 待 解 决的问题 ! 如三维物体的实时显示效果 & 海量信息 数据优化处理等 % 本文针对三维物体海量数据生
摘 ! 要 固态体积式真三维显示技术是 目 前 最 新 的 体 数 据 显 示 技 术 % 针 对 该 技 术 存 在 的 实 时显示问题提出一种真三 维 显 示 数 据 生 成 的 方 法 % 该 方 法 以 9 ' * / 0c 6 4 ' , = ; L K 为平台通 对三维图像数据进 行 读 取& 压缩编码以及快 过基于 F ) ( h 2 格式的三维模型为例进行实验 ! 8 调 试 通 过! 优 化 代 码 后! 图像显示 速绘制进行了研究 % 程序已在 9 %HH= ; L K 环 境 下 编 译& 的刷新速度为 ! ! 在计算机上初步实现了实时显示 % " 帧+ * 关 ! 键 ! 词 真三维立体显示技术 ' 三维模型 ' 优化代码 ' 实时显示 F ) ( h 2' 8 中图分类号 K ; ! ?' K ; $ > >= ? D !!! 文献标识码 <
!" #$%&
,!'0*-- 1".$%/ 22 22
4".%2
*5 !'()*
图 >! 传输编码协议 U ' = >!% , 4 ' ( . , 6 , O , 0 1 , .4 / 6 / 6 . / ( * G ' * * ' , ( M M8
D ! 实 !! 验
目前 D 常会用到两类应用程 7 图 形 的 处 理!
) C*
!"#$%&'()*" +,7*89 012*,4 342 =>? +,7*89 012*,4
012
*+ ,./ '$()
56
56' 78
:;<
图 D! 真三维显示数据生成流程图 U ' = D!U 0 , `O & / . 6, 1 6 & ) 6 . )D 74 ' * 0 / / 6 /M ) ( ) . / 6 ' , ( M 8 54
一种真三维显示数据生成的方法
! ! D D 夏 ! 果> 吕国强> 胡跃辉> # 特种显示技术教育部重点实验室 ! 安徽 合肥 !! " >= D # # # $! L @ G / ' 0 & 1 6 = Z ' / , G / ' 0 = O , G' !M M 合肥工业大学 仪器科学与光电工程学院 ! 安徽 合肥 !! 合肥工业大学 光电技术研究院 ! 安徽 合肥 !! $ != D # # # $' D= D # # # $
第! "卷!第!期 ! # # $年"月
液!晶!与!显!示
% & ' ( ) * )+ , . ( / 0 , 12 ' ' 4% . * 6 / 0 */ ( 47 ' * 0 / * 3 5 8 5
9 , 0 : ! "! ; , : ! ! < . = ! # # $ 8
文章编号 " # $ > # # ? @ ! ? A # ! # # $ # ! @ # ! ? D @ # B
! # # A @ # $ @ # $'修订日期 ! # # A @ > # @ > D !! 收稿日期 . 计划资助项目 # $ A C D ; , = ! # # ? << # > I D # ! !! 基金项目 国家 -
所以 ! 必需对三维立体图像信息进行编码 ! 每个体 包 括 J& 其 中 J& 素由 ! "位 构 成! h& [& I& %! h& [ 分别是红 & 绿& 蓝 颜 色 分 量 依 次 占 据 ! 位& D 位& D 位! 共占据最高的 A 位 ' I 是 体素 垂直 于屏 幕方向 的相 对 于 屏 幕 外 表 面 的 距 离 ! 即 深 度 值! 占据
)* $ " 序接口 # < X \ F ) ( h 2< X \和 7 ' . ) O 6 E< X \B % 8
+,-"./0123,456
! # $ 开发 F ) ( h 2 是美 国 c ' 0 ' O , (h . / & ' O * \ ( O c h \ 8 8 的一个多 用 途 跨 平 台 的 图 形 应 用 程 序 编 程 接 口 # $ ! 是有 几 百 个 能 够 访 问 图 形 硬 件 所 有 性 能 < X \ 的函数 集 合 %7 ' . ) O 6 E是 V ' O . , * , 1 6开 发 的 一 组 应用程序编程接口 % 相比于 7 ' . ) O 6 E! F ) ( h 2是 8 一个开放的三维 图 形 软 件 包 ! 它独立于窗口系统 和操作系统 ! 能方便地在各平台之间移植 ! 且有着 广泛的硬 件 支 持 % 因 此 ! 本文首先选择 F ) ( h 2 8 作为图形绘制处理引擎 % 在实验中 ! 为方便起见 ! 以9 ' * / 0c 6 4 ' , = ; L K 为开发 环 境 基 于 F ) ( h 2 8 导入 D 4 *三维模型来实现立体显示为例
> ! 引 !! 言
三维立体显示是当前图像处理领域的研究热 点
) > @ D*
成及传输问题提出了一种固态体积式真三维显示 并给出实验结果 % 数据生成的方法 !
% 领域固 态 体 积 式 真 三 维 显 示 # c , 0 ' 4 @ c 6 / 6 )
! ! 真三维显示数据生成方法
生成真三维显示数据的目的是为了高速传输 这些数据 ! 为了 达 到 高 速 的 传 输 大 量 立 体 显 示 数 据 信 息 要 求! 本文通过采用一种数字视频接口 # ! $ 传输方式来传输 7 ' ' 6 / 09 ' * / 0 \ ( 6 ) . 1 / O ) 7 9 \ M 立体显示信息 %7 & 9 \标准 是由 c ' 0 ' ) , (\ G / ) \ ( @ M & 6 ) 0 \ [V 等 公 司 组 成 的 数 字 显 示 工 作 组 于 > $ $ " 年正式推出的 % 采用 7 9 \接 口主 要有 两大 优 点 " 一是 7 大幅 9 \接口能实现大数 据量 的快 速传 输 ! 节 省 了 时 间' 二 是 信 号 在 传 输 过 程 中 没 有 衰 减! 色彩 更 逼 真 %7 9 \支 持 单 像 素 J h [的! "位数 传 输 的 数 字 信 号 没 有 经 过 压 缩 !单 连 接 的 传 据! 输速率可 达 "= + !最 大 的 刷 新 率 能 支 持 到 $h ] * % >$ ! #W># A #WC #P N或 >C # #W>! # #WC #P N 如图 > 所示 ! 真三维显示的每个像素不仅包
表 #! 各部分代码分别运行时图像刷新率 K / ] 0 )>!U X c. ) 0 / 6 ' ( ,4 ' 1 1 ) . ) ( 6 O , 4 ). ( ( ' ( M6 M
! 在X %
各部分代码 # $ 0 J ) / 4 X ' Z ) 0 * M # $ 0 7 . / ` X ' Z ) 0 * M 编码 # 未优化 $
刷新率 # 帧+ $ * ! A > > A
图 !!F ) ( h 2 人脸三维模型正面显示 8 U ' = !! U . , ( 6 ' * ' ) O ), 1D 7& G / (1 / O )G , 4 ) 0] / * ) 4 M 8 , (F ) ( h 2 8
! $ H !
液 !! 晶 !! 与 !! 显 !! 示
! ? " !
液 !! 晶 !! 与 !! 显 !! 示
第! "卷
占据每帧图像第一行体素 > #位' % 是控 制 信 息 ! 的最 后 ! 位 ! 其 余 位 置 零%按 照 上 述 数 据 生 成 方 以分 辨 率 A 测试其显 法! # #WC # # 为 例 进 行 实 验! ! 即人类肉眼可感 受到 示刷新率是否达到 ! " 帧+ * 稳定的三维图像 %
表 ?! 实验方法以及优化前后刷新率对比 Z & ' : 1!! ) U ;5 1 : & 4 * / 62 * @ @ 1 5 1 / 4. 1 4 C 6 2 3 +4 实验方法 利用 Y 未优化 " 1 / ? ,K U L处理 ! 7 利用 Y 未优化 " 1 / ? , 纹理贴图处理 ! 7 利用 Y 未优化 " 1 / ? , 结合 ? = L处理 ! 7 利用 Y 编译器优化 " 1 / ? , 结合 ? = L处理 ! 7 利用 Y 编译器优化 a 1 / ? , 结合 ? = L处理 ! 7 代码优化 " 刷新率 ! 帧* " 3 < F < ! ! " ! #