基于图像传输的三维远程渲染系统及其方法

文档序号:7955757阅读:300来源:国知局
专利名称:基于图像传输的三维远程渲染系统及其方法
技术领域
本发明涉及一种三维模型的远程渲染展示技术,具体来说,是涉及一种基于图像传输的三维远程渲染系统及其方法。
背景技术
目前,因特网上越来越多的网站通过高精度的三维模型来带给用户真实漂亮的沉浸式虚拟现实展示,然而世界范围内因特网环境的发展仍然不足以满足大数据量的文件快速传输,而通常中等精度的普通大小的单个三维模型可能产生10-100Mb大小的文件,因此在很多情况下都需要一种既能够保证用户交互实时性又能够保证展示的效果的网络渲染展示技术。
以往采用的传统传输方式是将数据按照字节顺序切分成数据包然后通过网络发送到接受端,而接受端必须在收到全部的正确数据包后才能拼成完整数据并进行读取和解析。目前较为常用的Web3D技术标准中,诸如VRML,X3D等技术都是通过下载特殊定制的网络三维模型格式文件到用户端计算机然后由本地计算机进行渲染和展示。这种方案限制了用户的群体,它首先需要足够速度的高速网络接入来保证较短的文件下载时间,目前大多数用户的接入速度可能导致用户花费十分钟以上的时间。另外用户计算机的CPU和图形图象处理器性能需要足够强大来完成三维渲染计算任务,计算机性能的不足就会导致展示效果的下降和用户交互的不方便,对于更为广泛和便捷的手持设备来说,三维渲染任务更为不可接受。另一方面,下载模型文件到本地造成了用户接触到拥有版权的数字作品从而造成了版权侵害的可能性。
渐进式传输技术是通过渐进式图像编码格式来编解码图像数据,利用收到的部分数据就能生成低分辨率的图像数据以用于多分辨率(随着数据到达的增多,分辨率变清晰)的展示,其产生的数据流可以使得客户端仅仅采用部分数据流就产生低分辨率的图像信息从而创造“从粗到细”的显示效果,保证了实时性和高精度的平衡。而通过客户端、服务器端各个层次采用的缓存技术能够很大程度降低系统的响应时间。通过用户交互预测技术能够提前对用户端的请求进行响应,从而用服务器的剩余性能换取用户访问的实时性。
传统的网络三维展示模式下的版权保护通常是通过针对模型文件本身的加密实现,然而相应的被动式的水印技术并不能完全保证模型文件的不可破解。
发明专利申请200510019825.9公开了一种基于图像的三维远程可视化方法,其步骤为客户端接收用户发送的交互命令并解析;客户端向服务器端提交浏览三维模型的请求和用户的视点位置,请求获得精确视图;主服务器解析请求并进行判断,从主服务器或服务提供者的数据库中读取所需模型文件,或者给用户提示;主服务器渲染模型文件生成精确视图;主服务器对视图色彩信息和深度信息进行压缩处理;主服务器通过网络将得到的压缩文件及视点位置后,解压缩后存入缓冲区,并显示色彩信息。在该技术方案中,系统负担大部分都被集中在客户端,且图像数据传输对于目前互联网条件仍然偏高(通常图像大小在10KB-100KB左右,对于普通宽带的1Mbps接入速度来说,需要0.7s左右的时间),其系统响应速度相对传统渲染有一定差距。

发明内容
本发明提供了一种基于图像传输的三维远程渲染方法,有别于传统基于网络的渲染方式,本发明将通过网络传输的内容从三维模型数据变为渲染结果数据,也就是图像数据,并通过渐进式传输、多级缓存及针对用户交互行为的预测等手段提高系统响应速度和降低系统对于网络带宽的要求,同时能够保证高精度三维模型文件版权的保护。
一种基于图像传输的三维远程渲染系统,包括可交互的服务器端和客户端,服务器端设有模型文件管理单元、三维渲染引擎单元、图像编解码压缩单元和网络传输单元,客户端设有网络传输单元和用户交互单元,客户端通过网络传输单元向服务器端发送浏览请求,服务器端接收请求命令后,由模型文件管理单元读取要求浏览的模型文件,经三维渲染引擎单元渲染生成图像数据,生成的图像数据经图像编解码压缩单元压缩通过网络传输单元发送给客户端,客户端对压缩图像数据进行解码通过用户界面进行显示,用户交互单元预测、接收交互事件,向服务器端发送交互请求。
所述的图像编解码压缩单元设有JPEG+LZO编码器、JPEG+BZIP编码器和JPEG2000编码器。
所述的用户交互单元设有用户动作预测器。
上述系统远程渲染三维图像的方法,包括以下步骤(1)服务器端模型文件管理单元预先读取一定数量的模型文件存放于模型文件缓存中;(2)客户端通过网络传输单元向服务器端发送浏览请求命令,服务器端接收、解析命令并判断模型文件缓存中是否存在相应文件,若有,则直接将其交给三维渲染引擎单元;若无,则从模型库中读取模型文件,然后将读入内存的模型数据交给三维渲染引擎单元;(3)三维渲染引擎单元预先将读取的模型文件的一部分进行渲染生成图像数据存放于图像数据缓存中,判断请求的视点对应的渲染结果图像是否存在于图像数据缓存中,若有,则直接传送该数据至图像编解码压缩单元;若无,则采用模型文件管理单元读入的模型数据根据用户发送来的视点信息进行渲染,并将生成的图像数据发送至图像编解码压缩单元;(4)图像编解码压缩单元选择压缩机制对接收的图像数据进行压缩,通过网络传输单元选择对应的传输方式将压缩的图像数据发送给客户端;(5)客户端将接收到的压缩图像数据解压后通过用户界面进行显示;(6)客户端将用户交互单元中用户动作预测器和用户输入结合生成的用户交互事件通过网络通信单元发送给服务器端,判断用户是否产生快速交互,若是,用户交互单元通过渲染本地的低精度模型得到中间过程的低精度图像数据用于展示;若不是或用户停止交互,则重新通过发送交互事件来请求服务器端的高精度图像数据显示,判断交互事件是否符合本地图像数据缓存中的历史视点,若是,则直接调用本地图像数据缓存的图像数据来显示而不发送交互请求;若不是,则将用户交互事件数据发送至服务器端,通过三维渲染引擎单元重新渲染,生成视点对应的图像数据,压缩发送至客户端解码显示。
所述的图像编解码压缩单元的压缩机制包括JPEG+LZO、JPEG+BZIP、JPEG2000。
所述的网络传输单元对应图像编解码压缩单元的压缩机制设有传统传输方式和渐进式传输方式。
本发明通过渐进式传输、多级缓存以及针对用户交互行为的预测等手段达到高实时性和高精度浏览的平衡,向广泛的普通用户提供快速便捷精美的渲染效果展示,解决了在有限带宽、状况复杂的因特网环境下大多数用户都可以快速便捷地通过网络查看高精度三维模型展示,其有益效果主要表现在1、在图像数据经过合理的压缩之后,客户端和服务器端需要传输的数据量比完整的三维模型要小得多,对于提高用户使用时的实时性有较大帮助。
2、由于客户端只需要渲染二维图像,因此对于用户客户端的计算机性能要求并不高,降低了使用系统的门槛。采用基于浏览器的Java Applet作为客户端,使得系统具有较高的可移植性和通用性。
3、仅仅传输图像对于保护通过花费大量人力物力获取的宝贵三维模型数据的版权保护非常有意义,避免了用户直接接触高精度模型文件,系统可以更为主动的限制数据的外泄。
4、较低的带宽占用和硬件要求使得目前越来越普及的移动设备作为终端成为可能,这一点对野外或者运动过程中的参观浏览提供了方便。
5、整个远程渲染系统的构架是分单元设计的,做到单元内的高内聚和单元间的低耦合性,各个单元功能分工相对独立。系统中可以方便的加载和去除某些功能单元,具有高度的可配置性。


图1为本发明的结构示意图;图2为本发明的流程图。
具体实施例方式
如图1所示,一种基于图像传输的三维远程渲染系统,包括可交互的服务器端和客户端,服务器端设有模型文件管理单元2、三维渲染引擎单元4、图像编解码压缩单元9及网络传输单元10。
模型文件管理单元2,在系统接收到用户浏览某件模型的请求时,该单元负责从数据库1读取模型存放位置信息然后读取三维模型文件,由于该单元包含的I/O操作是提高系统响应速度的瓶颈,因此在该单元采用预读取并缓存部分模型文件的机制来进行优化;三维渲染引擎单元4,将读入内存的模型文件进行解析并生成能够直接进行渲染工作的场景数据,目前渲染引擎兼容VRML格式标准的模型文件。该单元在接收到客户端发送来的用户请求后根据用户浏览的视角和距离等信息渲染生成静态图像数据。为了提高系统效率,还对用户访问过的某些视角的图像数据进行缓存便于重复访问。
图像编解码压缩单元9,包括JPEG+LZO编码器6、JPEG+BZIP编码器7和JPEG2000编码器8,各编码器分别对应JPEG+LZO、JPEG+BZIP、JPEG2000压缩机制,图像编解码压缩单元9将渲染引擎生成的图像信息进行压缩处理得到适合网络传输的数据格式以发送到客户端展示,根据需要选择合适的压缩机制进行编解码,其中前两种压缩机制侧重于编解码速度(影响到系统实时性)和压缩率的平衡(LZO/BZIP都具有无损压缩特性,尽管压缩比并非最高,但是压缩/解压缩处理时间都非常短),最后一种压缩机制用于渐进式传输模式,能够向普通用户提供多分辨率的快速显示。三种压缩机制都可以根据系统实际需要改变压缩率配置以换得更短的网络传输时间。
网络传输单元10,负责系统内服务器端和客户端间的数据通信,包括用户交互数据和显示的图像信息。该单元需要配合图像压缩单元以实现渐进式图像数据传输模式,能够传送该压缩方案中的流数据。同时具有根据网络延迟和用户交互频率决定数据传输的策略(数据传输的顺序和放弃传输)。
客户端设有网络传输单元11和用户交互单元14。
用户交互单元14将完成解码的图像数据显示,同时监听用户的交互事件(包括平移、转动、视点跳跃、拖动等交互方式),生成相应的请求数据发送到服务器端。该单元还要对用户交互事件采用预测算法进行预测和补偿来减少系统响应时间,能够根据用户之前的一系列动作甚至历史记录中用户的访问习惯对用户之后的动作进行预测并根据其进行预渲染,在预测错误的情况进行补偿。该单元还负责在客户端对用户访问过的一定数量的图像数据保存作为缓存一定程度上避免数据的重复处理和传输。另一种方式的缓存机制是通过在客户端保存一个低精度的模型用于用户快速动作(比如拖动)过程中的本地低精度渲染展示,在用户慢速动作或者停止时发送请求获得高精度展示数据从而减少网络传输数据量。
如图2所示,系统远程渲染三维图像的方法包括以下步骤(1)服务器端模型文件管理单元2预先读取一定数量的模型文件存放于模型文件缓存3中;(2)客户端通过网络传输单元11向服务器端发送浏览请求命令,服务器端接收、解析命令并判断模型文件缓存3中是否存在相应文件,若有,则直接将其交给三维渲染引擎单元4;若无,则从模型库1中读取模型文件,然后将读入内存的模型数据交给三维渲染引擎单元4;(3)三维渲染引擎单元4预先将读取的模型文件的一部分进行渲染生成图像数据存放于图像数据缓存5中,判断请求的视点对应的渲染结果图像是否存在于图像数据缓存5中,若有,则直接传送该数据至图像编解码压缩单元9;若无,则采用模型文件管理单元2读入的模型数据根据用户发送来的视点信息进行渲染,并将生成的图像数据发送至图像编解码压缩单元9;(4)图像编解码压缩单元9选择压缩机制对接收的图像数据进行压缩,通过网络传输单元10选择对应的传输方式将压缩的图像数据发送给客户端;压缩机制包括JPEG+LZO、JPEG+BZIP和JPEG2000三种对应不同需求的压缩机制,JPEG格式在压缩率和压缩时间上较为平衡,同时由于其较为流行,客户端可以利用J2SE标准中的JPEG解码API较为方便的实现功能,LZO/BZIP算法拥有较快的编解码速度,同时能够提高JPEG文件的压缩率,JPEG2000可以实现渐进式的传输。
对应三种不同压缩机制,网络传输单元设有传统传输方式和渐进式传输方式两种不同的网络传输方式,其中,传统传输方式负责传输JPEG+LZO编码器6和JPEG+BZIP编码器7生成的数据,渐进式传输方式负责传输JPEG2000编码器8生成的数据。
在渐进式传输方式中客户端网络传输单元11可利用收到的部分数据就能生成低分辨率的图像数据用于多分辨率(随着数据到达的增多,分辨率变清晰)的展示。服务器端网络传输单元10中收到的用户交互事件数据可作为三维渲染引擎单元4的输入参数用于控制图像数据的生成。
(5)客户端将接收到的压缩图像数据解压后通过用户界面进行显示;(6)客户端将用户交互单元14中用户动作预测器12和用户输入结合生成的用户交互事件通过网络通信单元11发送给服务器端,判断用户是否产生快速交互,若是,用户交互单元14通过渲染本地的低精度模型得到中间过程的低精度图像数据用于展示;若不是或用户停止交互,则重新通过发送交互事件来请求服务器端的高精度图像数据显示,判断交互事件是否符合本地图像数据缓存13中的历史视点,若是,则直接调用本地图像数据缓存13的图像数据来显示而不发送交互请求;若不是,则将用户交互事件数据发送至服务器端,通过三维渲染引擎单元4重新渲染,生成视点对应的图像数据,压缩发送至客户端解码显示。
权利要求
1.一种基于图像传输的三维远程渲染系统,其特征在于包括可交互的服务器端和客户端,服务器端设有模型文件管理单元、三维渲染引擎单元、图像编解码压缩单元和网络传输单元,客户端设有网络传输单元和用户交互单元,客户端通过网络传输单元向服务器端发送浏览请求,服务器端接收请求命令后,由模型文件管理单元读取要求浏览的模型文件,经三维渲染引擎单元渲染生成图像数据,生成的图像数据经图像编解码压缩单元压缩通过网络传输单元发送给客户端,客户端对压缩图像数据进行解码通过用户界面进行显示,用户交互单元预测、接收交互事件,向服务器端发送交互请求。
2.如权利要求1所述的系统,其特征在于所述的图像编解码压缩单元设有JPEG+LZO编码器、JPEG+BZIP编码器和JPEG2000编码器。
3.如权利要求1所述的系统,其特征在于所述的用户交互单元设有用户动作预测器。
4.一种如权利要求1-3任一所述系统远程渲染三维图像的方法,其特征在于包括以下步骤(1)服务器端模型文件管理单元预先读取一定数量的模型文件存放于模型文件缓存中;(2)客户端通过网络传输单元向服务器端发送浏览请求命令,服务器端接收、解析命令并判断模型文件缓存中是否存在相应文件,若有,则直接将其交给三维渲染引擎单元;若无,则从模型库中读取模型文件,然后将读入内存的模型数据交给三维渲染引擎单元;(3)三维渲染引擎单元预先将读取的模型文件的一部分进行渲染生成图像数据存放于图像数据缓存中,判断请求的视点对应的渲染结果图像是否存在于图像数据缓存中,若有,则直接传送该数据至图像编解码压缩单元;若无,则采用模型文件管理单元读入的模型数据根据用户发送来的视点信息进行渲染,并将生成的图像数据发送至图像编解码压缩单元;(4)图像编解码压缩单元选择压缩机制对接收的图像数据进行压缩,通过网络传输单元选择对应的传输方式将压缩的图像数据发送给客户端;(5)客户端将接收到的压缩图像数据解压后通过用户界面进行显示;(6)客户端将用户交互单元中用户动作预测器和用户输入结合生成的用户交互事件通过网络通信单元发送给服务器端,判断用户是否产生快速交互,若是,用户交互单元通过渲染本地的低精度模型得到中间过程的低精度图像数据用于展示;若不是或用户停止交互,则重新通过发送交互事件来请求服务器端的高精度图像数据显示,判断交互事件是否符合本地图像数据缓存中的历史视点,若是,则直接调用本地图像数据缓存的图像数据来显示而不发送交互请求;若不是,则将用户交互事件数据发送至服务器端,通过三维渲染引擎单元重新渲染,生成视点对应的图像数据,压缩发送至客户端解码显示。
5.如权利要求4所述的方法,其特征在于所述的图像编解码压缩单元的压缩机制包括JPEG+LZO、JPEG+BZIP、JPEG2000。
6.如权利要求4所述的方法,其特征在于所述的网络传输单元对应图像编解码压缩单元的压缩机制设有传统传输方式和渐进式传输方式。
全文摘要
本发明公开了一种基于图像传输的三维远程渲染系统,包括可交互的服务器端和客户端,服务器端设有模型文件管理单元、三维渲染引擎单元、图像编解码压缩单元和网络传输单元,客户端设有网络传输单元和用户交互单元,服务器端接收到客户端通过网络传输单元发送的浏览请求命令后,由模型文件管理单元读取要求浏览的模型文件,经三维渲染引擎单元渲染生成图像数据经图像编解码压缩单元压缩通过网络传输单元发送给客户端,客户端对压缩图像数据进行解码通过用户界面显示。本发明通过渐进式传输、多级缓存以及针对用户交互行为的预测等手段达到高实时性和高精度浏览的平衡,向广泛的普通用户提供快速便捷精美的渲染效果展示。
文档编号H04L29/06GK1845177SQ200610050798
公开日2006年10月11日 申请日期2006年5月17日 优先权日2006年5月17日
发明者鲁东明, 钟鸣宇 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1