3d
文章平均质量分 56
DCD_Lin
这个作者很懒,什么都没留下…
展开
-
3D【3】人脸重建:Image Based 3D Face Reconstruction: A Survey阅读笔记
该论文是09年的一篇3D人脸重建综述文章。目前的大部分3D人脸重建系统受限于3d扫描设备的一些不足: 1、在扫描过程中要求一定的光线条件 2、无法从多个物体同时获取3D数据 3、没有反射的区域无法获得正确数据(如头发) 4、无法实时 5、如果是激光扫描时,会伤到眼镜 6、在扫描时以及后处理需要人的辅助 7、3D扫描设备的大小和价格限制了现实生活中的应用一个可选的方案是,直接从...原创 2018-02-09 09:22:27 · 3659 阅读 · 0 评论 -
3D【17】深度信息增强:Real-time Shading-based Refinement for Consumer Depth Cameras
该论文的目的是增强RGBD中的深度信息。未完。。原创 2018-05-18 15:40:37 · 1267 阅读 · 1 评论 -
3D【18】深度信息增强:Real-Time Depth Refinement for Specular Objects
还是RGBD深度信息增强。 未完。。原创 2018-05-18 15:42:23 · 588 阅读 · 2 评论 -
3D【14】librealsense 安装
在ubuntu16.04下为creative F200深度摄像机安装librealsense。 首先电脑需要有usb3.0的接口。 先安装依赖包:sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgradesudo apt-get install libusb-1.0-0-...原创 2018-05-07 10:05:58 · 1222 阅读 · 2 评论 -
3D【16】PCL链接到自己的项目时-libvtkproj4 错误
在CMakeList.txt中的target_link_libraries前面加入:list(REMOVE_ITEM PCL_LIBRARIES "vtkproj4")原创 2018-05-14 12:01:25 · 1687 阅读 · 1 评论 -
3D【12】PCL源码安装
ubuntu 16.04 PCL官网有提供deb安装文件,直接就可以安装。但不知道为什么clion一直找不到pcl的库。然后apt-get install libpcl-dev又没有visualization库,所以只好源码安装了。安装过程中会遇到libpq的一个问题://usr/lib/libpq.so.5: undefined reference to `SSL_CTX_new...原创 2018-04-29 18:02:09 · 578 阅读 · 0 评论 -
3D【19】PCL VoxelGrid 下采样
VoxelGrid方法是将3D空间划分成多个很小的体素,然后求处在同一体素内的3d点的中心点作为该体素内的唯一一个3d点,通过这样达到下采样目的。所以应该注意的是该方法不是原来点云的子集,因为很多3d点的位置已经变化了。使用方法如下://#include <pcl/filters/voxel_grid.h>pcl::PointCloud<pcl::PointXYZRGBA...原创 2018-05-26 16:39:26 · 2718 阅读 · 2 评论 -
3D【20】PCL MLS点云平滑
//#include <pcl/surface/mls.h> pcl::search::KdTree<pcl::PointXYZRGBA>::Ptr search(new pcl::search::KdTree<pcl::PointXYZRGBA>); pcl::MovingLeastSquares<pcl::PointXYZRGBA, p原创 2018-05-26 16:46:28 · 4815 阅读 · 0 评论 -
3D【21】PCL 双边滤波
需要注意的是,该滤波的输入点云必须是有组织的,也就是类似图片那样按照宽高来存放的。因此该滤波一般是对从rgbd生成的点云进行处理的。点云坐标刻度:米。//#include <pcl/filters/fast_bilateral.h>pcl::PointCloud<pcl::PointXYZRGBA>::Ptr result(new pcl::PointCloud<...原创 2018-05-26 16:54:30 · 3218 阅读 · 3 评论 -
3D【22】ICP配准:Efficient Variants of the ICP Algorithm
论文年代比较久远,但是内容很不错。论文从速度和效果上,对比了ICP配准过程的6个步骤中每个步骤的一些方法。最后给出了一个效果不错,并且速度比价快的框架,也称fastICP。...原创 2018-05-28 18:48:03 · 1516 阅读 · 0 评论 -
3D【23】ICP配准:point-to-plane
论文:Linear Least-Squares Optimization for Point-to-Plane ICP Surface Registration 这篇论文不是原始的point-to-plane ICP,只是对线性最小二乘法优化point-to-plane 损失函数的推导。...原创 2018-05-29 19:07:52 · 13389 阅读 · 4 评论 -
3D【24】PCA点云法向量估计
点云法向量的估计在很多场景都会用到,比如ICP配准,以及曲面重建。基于PCA的点云法向量估计,其实是从最小二乘法推导出来的。假设我们要估计某一点的法向量,我们需要通过利用该点的近邻点估计出一个平面,然后我们就能计算出该点的法向量。或者可以这么说,通过最小化一个目标函数(要求的参数为法向量),使得该点与其每个近邻点所构成的向量与法向量的点乘为0,也就是垂直: 正常情况下,我们可以将点c看成...原创 2018-06-05 19:50:09 · 20531 阅读 · 7 评论 -
3D【13】在clion中使用PCL
主要是将PCL加入CMakeList.txt中去,不过我还是遇到了一些问题。比如说cmake没有真正的将pcl的头文件目录取进去。 从源码安装好PCL-1.8后,利用find_package(PCL REQUIRED)寻找PCL包,发现能找到,但是include_directories(PCL_INCLUDE_DIRS)无法添加头文件,因此我就自己手动添加。具体是CMakelist.txt如...原创 2018-05-02 13:51:27 · 3556 阅读 · 3 评论 -
3D【15】ubuntu16.04下openni2安装
pcl也支持openni2,但是需要源码安装openni2。安装完之后重新安装一下PCL就行了(可以查看cmake步骤是否找到openni2)。先安装依赖:sudo apt-get install -y g++ python libusb-1.0-0-dev freeglut3-dev doxygen graphvizsudo apt-get install libudev-dev ...原创 2018-05-08 20:10:18 · 4572 阅读 · 1 评论 -
ubuntu下matlab提示libGL error: unable to load driver: nouveau_dri.so
安装一下matlab-support就可以:sudo apt-get install matlab-support原创 2018-02-26 18:39:26 · 1307 阅读 · 0 评论 -
3D【1】人脸重建:Face Alignment Across Large Poses: A 3D Solution中侧脸数据生成实验
论文提出了一个由3d合成侧脸数据的方法,由于最近项目需要,便尝试了该方法。在此记录一些东西。作者给出的数据合成demo中使用的是basel face model(BFM)的人脸3d重建参数,里面用到了pose参数,shape参数。为了合成出自己的数据,我们需要先获取这两个参数。获取这两个参数的方法挺多的,我这边尝试的几个方法分别为:运行作者给定3d重建demo(3DDFA),或者用High-F...原创 2018-02-02 10:12:31 · 5293 阅读 · 12 评论 -
3D【4】人脸重建:Large Pose 3D Face Reconstruction from a Single Image via Direct Volumetric
该论文主要是用CNN直接重建3D人脸,而不是预测3DMM模型的参数,网络结构是漏斗网络( HG)。论文提出了三种方案,第一种是直接从图片重建,第二种是加入了人脸特征点,第三种是多任务(重建+人脸特征点预测)。效果最好的是第二种方法。值得注意的是,该论文不是直接预测顶点的x、y、z坐标。而是将mesh转成voxel,变成一个192*192*200的矩阵。这样就比较适合CNN。我们先看看mesh...原创 2018-02-24 10:24:18 · 4669 阅读 · 5 评论 -
3D【2】非刚性配准:Optimal Step Nonrigid ICP Algorithms for Surface Registration 阅读笔记
最近在研究人脸3d重建的内容,配准是训练出一个类似Basel Face Model的一个前期3d数据处理过程。由于从设备扫描出来的3d人脸的顶点个数非常多,而像BFM这样的模型中一个3d face的顶点为53490个点。为了用一个顶点较少的模板来表示一个从设备扫描出来的3d face,我们需要用到配准算法。在3d face的配准中使用的是非刚性配准,意思是模板除了平移,缩放和旋转之外,还可以变形。...原创 2018-02-06 15:13:41 · 12839 阅读 · 27 评论 -
PCL和vtk安装
ubuntu 16.04 pcl安装可以去https://larrylisky.com/2016/11/03/point-cloud-library-on-ubuntu-16-04-lts/下载deb文件安装,也可以用源码安装 vtk用如下命令安装:sudo add-apt-repository ppa:elvstone/vtk7 sudo apt-get update sudo apt-原创 2018-02-24 16:25:14 · 1917 阅读 · 0 评论 -
3D【7】人脸重建:Hands on Shape from Shading阅读笔记
Shape from Shading(sfs)是一个很基础也很经典的3D重建方法。其基本原理是利用灰度图片的亮度信息,加上亮度生成原理,求得每个像素在3D空间中的法向量,最终根据法向量求得深度信息。 看了不少相关的文章,感觉这篇论文讲的最好懂,里面还有相应的matlab代码。所以想学sfs的同学,可以去看这篇论文。问题描述一张灰度图的亮度信息由4个因素决定: 1、光照:主要是方向,...原创 2018-03-17 16:27:05 · 5445 阅读 · 9 评论 -
3D【5】人脸重建:Learning the Multilinear Structure of Visual Data阅读笔记
该论文主要内容是使用张量分解来表征一个3D人脸,如下公式: 其中B(1)B(1)B_{(1)} 是通过大量数据学习出来的,而A(m)A(m)A^{(m)} 则是重构出 XXX 的系数,⊙⊙\odot 是克罗内克积。克罗内克积:一个3×1的向量和一个4×1的向量进行克罗内克积,会得到12×1的向量。具体的可参考wiki。每个A(m)A(m)A^{(m)} 可以表示不同的大分类,比如光...原创 2018-03-12 17:14:21 · 947 阅读 · 3 评论 -
3D【9】人脸重建:Joint3D Face Reconstruction and Dense Alignment with Position Map Regression
该论文同时预测人脸特征点和3D mesh的顶点坐标x,y,z。人脸特征点没什么好说的,现在已经有很多成功的案例了。主要关注该论文是如何预测顶点坐标的。其实大概想想,就能够大致确定直接预测顶点坐标是有不少困难的。首先是,你不能把所有的顶点拉成一个向量,用全连接层预测;要用卷积层作为输出的话,mesh又不能直接表示成一个固定大小的张量(这正好是用cnn来预测所需要解决的问题,比如将mesh立方体化)。...原创 2018-03-22 17:38:02 · 5846 阅读 · 29 评论 -
3D【6】人脸重建:Multilinear Autoencoder for 3D Face Model Learning
该论文输入的是一个扫描的3d mesh,输出是一个顶点数的3d mesh。这个过程很像NICP的3d人脸配准过程,但是NICP是一个优化的过程。而该方法在学习好了网络后,可以直接使用。使用GPU的话,速度应该可以非常快。该论文还为利用CNN重建3D人脸提供了另一种思路。目前看到的用CNN进行3D人脸重建,其输出要么是3DMM的系数(没有人脸的真是深度信息),要么是将mesh立方体化(一个n1×...原创 2018-03-14 10:59:27 · 3034 阅读 · 0 评论 -
3D【8】鸟类重建:Learning Category-Specific Mesh Reconstruction from Image Collections阅读笔记
该文章直接预测的是平均mesh的坐标偏差,相机参数和纹理uv图。里面有各种损失函数,很值得学习。这篇论文还有个有意思的点,论文用的训练数据是没有对应的3D模型的(也就是一张图片没有对应的3D模型)。训练过程有点像3DMM的重建过程,即先估计3D模型,将模型渲染到2D;然后比较渲染的图片和原始图片的差异,以更新模型的参数。要将这个过程应用在神经网络中,由于渲染是不可导的,因此需要解决渲染这一步骤...原创 2018-03-22 11:43:17 · 1702 阅读 · 0 评论 -
3D【10】网格优化:Laplacian Mesh Optimization
拉普拉斯网格优化与平滑是网格处理的经典算法,其一些基本概念可以作为神经网络预测3D mesh的一些约束,如平滑。我们先来看看一些基本概念。基本概念首先,我们用G=(V,E)G=(V,E)G=(V,E) 来表示一个网格。 其中V=[vT1,vT2,...,vTn]T,vi=[vix,viy,viz]T∈R3V=[v1T,v2T,...,vnT]T,vi=[vix,viy,viz]T∈R...原创 2018-03-29 14:18:57 · 5318 阅读 · 4 评论 -
3D【11】人脸重建:Disentangling Features in 3D Face Shapes for Joint Face Reconstruction and Recognition
这篇文章的思想跟Multilinear Autoencoder for 3D Face Model Learning 本质上是完全一样的。将人脸重建看成是一个线性问题,然后求解线性系数和特征向量。而且训练方法也是一样的。分两步:1、预训练encoder;2、预训练decoder;3、训练整个模型。 两篇文章的区别是:该论文用的是3DMM的理论,而上面我提到的那篇用的是高阶SVD张量分解理论。...原创 2018-04-04 14:53:17 · 1710 阅读 · 0 评论