The invention discloses a method and a device for displaying large-scale 3D reconstruction scenes in real time. This method takes the large-scale 3D reconstruction of the scene point cloud model or triangular mesh model as input data, processing data through bifurcation tree LOD model of 3D scene, the device processor reads the corresponding data model according to the method of handling and processing the results of real-time output to the display interface. The bifurcation tree data processing, the processing speed is exponential, can overcome the restriction of computer memory, real-time display of large scale 3D scene reconstruction based on point cloud or triangular mesh, and has a good interactive function, scene model and equipment of this method is not limited to three dimensional reconstruction, is also suitable for large data other amount of 3D point cloud or triangular mesh model, it has great theoretical significance and broad application prospects.
【技术实现步骤摘要】
一种实时显示大规模三维重建场景的方法及设备
本专利技术属于三维显示领域,具体涉及一种基于大规模三维重建场景的显示方法及系统。
技术介绍
在计算机视觉中,三维重建是指根据单视图或者多视图的图像重建三维信息的过程。由于单视图的信息不完全,基于单视图进行三维重建需要利用经验知识。而多视图的三维重建相对比较容易,其过程类似于人的双目定位,常用的方法是先对相机进行标定,即计算出相机的二维图像坐标系与世界坐标系的关系,然后利用多个二维图像中的信息重建出三维信息。现有的三维重建方法中,基于图像序列的三维重建方法操作简单,人工干预少,成本低廉,近几年来逐渐成为计算机图形学和计算机视觉领域的研究热点。特别是针对大规模场景的重建,该方法与传统的借助三维扫描设备的三维重建方法相比,无论是在操作性还是在成本控制方面都有着极大的优势。然而,随着三维重建理论的完善和计算机硬件技术的快速发展,三维重建场景的规模和复杂度不断增大,包含成千上万个点云或者三角网格的模型在实际应用中越来越常见。由于受到存储和计算能力的限制,一些常见的三维软件,比如MeshLab、3DMAX、Maya、AutoCAD、UG等,对这些大规模的三维重建场景难以显示或进行实时交互操作。即使GPU的快速发展在一定程度上解决了快速绘制的问题,但由于内存等因素的限制,对于几个G、几个T的数据的大规模场景来说,想要实现实时显示或实时交互操作仍然是难以企及。因此,如何使用尽量少的内存进行高效建模和实时显示大规模三维重建场景,是目前三维重建与显示领域研究的难点和热点问题,不仅有很强的理论意义,还有非常广阔的应用前景。
技术实现思路
...
【技术保护点】
一种实时显示大规模三维重建场景的方法,其特征在于,包括如下步骤:(1)获取待显示三维模型的点云模型数据;(2)对步骤(1)的点云模型数据按照如下步骤进行预处理,得到多层次细节模型数据:(2.1)将点云模型数据中的原始点云集合P的最小包围盒,作为八叉树的结点域D;(2.2)判断结点域D中的三维点的数量是否超过了预设的阈值,是,则执行步骤(2.3)和步骤(2.4);否,则将结点域D中的所有三维点作为八叉树的叶子结点并结束循环,得到叶子结点数据;(2.3)对该结点域D中的点云进行下采样,但只剔除不需要的点,不产生新的点,然后将下采样得到的结点作为八叉树的内部结点,得到内部结点数据;(2.4)将原始点云集合P按照结点域D八等分为八个孩子结点,则对应的原始点云集合P={P1,P2,…,P8},结点域D={D1,D2,…,D8};其中,P1~P8为原始点云集合P的孩子结点,D1~D8分别为孩子结点P1~P8的结点阈;(2.5)对步骤(2.4)中的孩子结点P1~P8执行(2.1)~(2.4),最终得到的叶子结点数据和内部结点数据共同构成多层次细节模型数据;(3)根据当前显示界面的视口大小和对应的分辨 ...
【技术特征摘要】
1.一种实时显示大规模三维重建场景的方法,其特征在于,包括如下步骤:(1)获取待显示三维模型的点云模型数据;(2)对步骤(1)的点云模型数据按照如下步骤进行预处理,得到多层次细节模型数据:(2.1)将点云模型数据中的原始点云集合P的最小包围盒,作为八叉树的结点域D;(2.2)判断结点域D中的三维点的数量是否超过了预设的阈值,是,则执行步骤(2.3)和步骤(2.4);否,则将结点域D中的所有三维点作为八叉树的叶子结点并结束循环,得到叶子结点数据;(2.3)对该结点域D中的点云进行下采样,但只剔除不需要的点,不产生新的点,然后将下采样得到的结点作为八叉树的内部结点,得到内部结点数据;(2.4)将原始点云集合P按照结点域D八等分为八个孩子结点,则对应的原始点云集合P={P1,P2,…,P8},结点域D={D1,D2,…,D8};其中,P1~P8为原始点云集合P的孩子结点,D1~D8分别为孩子结点P1~P8的结点阈;(2.5)对步骤(2.4)中的孩子结点P1~P8执行(2.1)~(2.4),最终得到的叶子结点数据和内部结点数据共同构成多层次细节模型数据;(3)根据当前显示界面的视口大小和对应的分辨率读取相应的多层次细节模型数据并输出至显示界面进行显示;读取和显示通过不同的线程处理。2.一种实时显示大规模三维重建场景的方法,其特征在于,包括如下步骤:(1)获取待显示三维模型的三角网格模型数据;(2)对步骤(1)的三角网格模型数据按照如下步骤进行预处理,得到多层次细节模型数据:(2.1)获取初始三角网格模型的最小立方体包围盒F;(2.2)按照最小立方体包围盒F的主对角线将其六等分成六个四棱锥,每一个四棱锥分别作为一颗二叉树的根结点,建立二叉树;(2.3)判断步骤(2.2)建立的每个二叉树的中的结点对应的四棱锥中的三角网格数量是否超过了预设的阈值,是,则执行步骤(2.4);否,则停止分裂,得到多层次细节模型数据;(2.4)将每个二叉树结点按照对应的四棱锥进行二等分,得到两个下一级的子结点;(2.5)对于每一个子结点回到(2.3)~(2.4),最终得到多层次细节模型数据;(3)根据当前显示界面的视口大小和对应的分辨率读取相应的多层次细节模型数据并输出至显示界面进行显示;读取和显示通过不同的线程处理。3.如权利要求1或2所述的一种实时显示大规模三维重建场景的方法,其特征在于,步骤(3)还包括如下显示相机的步骤:(3.1)在三维重建过程中,每一个相机本身...
【专利技术属性】
技术研发人员:陶文兵,刘子健,孙琨,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。