本项目为本人毕业设计研究内容的展示系统,主要聚焦于三维点云上采样与语义分割应用。该系统包括了三维模型的算法处理展示、三维模型上传与管理、三维模型渲染管理等功能,现将其开源,以方便后续有做三维计算机视觉研究的同学做展示使用,也欢迎star/fork/pr/issue,帮助系统更好的完善 :-)
-
前端依赖:jQuery + Bootstrap3 + ThreeJS + Font-Awesome
-
后端依赖:Django
-
其它依赖:TensorFlow
该模块主要为三维模型的算法处理展示,包括了点云上采样展示、场景上采样展示、分割数据集展示、场景分割展示等功能,展示内容一般为原始模型、处理生成模型和标准模型。
该模块是一个简易的文件管理系统,主要为对三维点云模型进行管理,包括了创建目录、重命名目录、删除目录、上传模型、查看模型、下载模型、移动模型、删除模型、上采样模型、回收站管理等功能。
该模块主要为对三维模型进行网页端的渲染控制,通过调节参数以达到理想的渲染效果。
-
创建虚拟环境visapp并激活(默认当前已在项目根目录PCVisAPP)。
conda create -n pcvisapp python=3.6 --yes conda activate pcvisapp
-
安装Python Package依赖。
pip install -r requirements.txt
-
编译tf算子。注意,如果当前环境不方便安装tensorflow-gpu或者没有GPU可忽略本步骤,但为了确保系统仍能够正常运行,需要将
PointCloudManage/utils.py
中的代码from PointCloudManage.upsample_op.model import Model
注释,并适当修改方法upsample_points
。实际上,方法upsample_points
的目标即调用基于tf的神经网络对三维点云模型进行上采样操作,该方法内也可替换成你的点云处理算法。cd PointCloudManage/upsample_op/tf_ops sh compile_ops.sh
-
运行系统。运行之前需要修改
PointCloudManage/upsample_op/config.py
内CFG.gpu
为可使用的GPU。python manage.py runserver 0.0.0.0:<ip_port>
-
用户权限管理系统
-
渲染页面自动生成系统
[3] Bootstrap · The most popular HTML, CSS, and JS library
[4] Three.js - JavaScript 3D Library
[5] Font Awesome, the iconic font and CSS toolkit
[6] Django - The Web Framework for Perfectionists with Deadlines