3d重建
文章平均质量分 79
五月的天气
承认平凡 不甘平凡
展开
-
将代码转换成使用cpu训练(pytorch)
由于自己电脑没有GPU资源,有的时候想用自己电脑去测试,就需要将论文中使用CUDA的代码,改成使用cpu的pytorch版本device = 'cuda:0' if torch.cuda.is_available() else 'cpu:0'#使用方法类似如下:# bfm = BFM('BFM/BFM_model_front.mat', device)# model = resnet50_use().to(device)...原创 2021-10-26 09:38:02 · 3637 阅读 · 2 评论 -
正交投影与弱透视投影
当我们假设焦距无限大时,我们在成像平面上会存在一个所谓的正交投影,这个正交投影可以保留平行关系。其每个投影线都是平行的。这个称之为正交投影(orthographic projection)。正交投影的尺度大小是和原始物体的大小一致的,当考虑的正交头像的尺度缩放时,就有了弱透视投影(weak perspective projection)。...转载 2021-09-30 10:20:33 · 1269 阅读 · 0 评论 -
判断一个点是否在三角形内部 以及重心计算
dot product 和 cross product 的区别A dot product of two vectors is also called the scalar product. It is the product of the magnitude of the two vectors and the cosine of the angle that they form with each other. (It is also called the inner product or the原创 2021-09-23 10:38:43 · 462 阅读 · 0 评论 -
Chapter 11 —— Texture Mapping
真实世界任何物体都是有特征的,比如:人脸上的皱纹,塑料上的凹凸不平等等。这些现象在计算机领域被称为:spatially varying surface propertiesspatially varying surface properties :指那些表面属性在不同的地方变化,但并不真正以有意义的方式改变表面的形状。To allow for these effects, all kinds of modeling and rendering systems provide some means f.原创 2021-09-22 10:23:04 · 369 阅读 · 0 评论 -
Chapter 10 - Surface Shading (fundamentals-of-computer-graphics-4th)
To make objects appear to have more volume, it can help to use shading, i.e., the surface is “painted” with light. This chapter presents the most common heuristic shading methods.为了使物体看起来有更多的面,我们可以使用阴影。即:表面是用光“绘制”的。本章介绍最常见的启发式着色方法。Diffuse Shading世界上许多.原创 2021-09-20 11:24:14 · 300 阅读 · 0 评论 -
三维人脸重建中光源部分的理解
球谐函数在光照估计中的应用参考文献:https://blog.csdn.net/tinyzhao/article/details/62419220光照估计就是从图片中获取光照信息,从而降低光照对纹理的影响。传统的光照估计依赖于光源方向和法线方向的估计,而光源方向和法线方向都是一种“估计”,本身就是不够精确的。使用不够精确的参数去估计目标值,就需要使用到一些高级的估计算法,这些算法一般都依赖于对象的统计特征。这样的光照模型过于复杂,其中的每一个过程都会影响最终的结果。在2001年,Basri和Jacob转载 2021-09-19 16:21:38 · 600 阅读 · 0 评论 -
storage format
.ascasc拓展名:它可以表示任何格式,通常是纯文本,这意味着不能从.asc扩展名中假设它内部是什么样子的。它是一种交换格式,这意味着它(通常)不用作分析或主存储的输入,而是用于与其他程序的交换。.obj以下内容来自于这里(作者写的好有条理呀)OBJ是以纯文本的形式存储了模型的顶点、法线和纹理坐标和材质使用信息;在计算机图形学中,考虑到图形求交等计算的问题,这个面通常选择三角形,即模型的表面由若干三角面构成。一个模型文件需要记录的信息就是这些三角面的信息,进一步讲,一个三角面又需要有顶点、法线、原创 2021-09-19 10:55:12 · 283 阅读 · 0 评论 -
论文阅读——Deep 3D Portrait from a Single Image(CVPR2020)
摘要In this paper, we present a learning-based approach for recovering the 3D geometry of human head from a single portrait image. Our method is learned in an unsupervised manner without any ground-truth 3D data. We represent the head geometry with a param原创 2021-08-07 11:26:37 · 553 阅读 · 0 评论 -
Pytorch3d学习记录
Cameras照相机Camera Coordinate Systems 相机坐标系统世界坐标 (Y指向上方,X指向左方,Z指向里面) 相机视图坐标(相机坐标) Camera view coordinate system坐标系原点在向平面上。z轴垂直于图像平面。在PyTorch3D中,我们假设+X点向左,+Y点向上,+Z点指向图像平面。在应用旋转®和平移(T)之后,从世界坐标变成了相机坐标。NDC坐标(也叫view volume)NDC coordinate system这是将物体/场景的渲原创 2021-08-06 16:41:40 · 7303 阅读 · 6 评论 -
计算机图形学零碎学习
MTCNN:Multi-task convolutional neural network(多任务卷积神经网络)将人脸区域检测与人脸关键点检测放在了一起,它的主题框架类似于cascade。总体可分为P-Net、R-Net、和O-Net三层网络结构。转载至https://blog.csdn.net/qq_36782182/article/details/83624357它是2016年中国科学院深圳研究院提出的用于人脸检测任务的多任务神经网络模型,该模型主要采用了三个级联的网络,采用候选框加分类器.原创 2021-07-26 14:35:32 · 290 阅读 · 0 评论 -
《Accurate 3D Face Reconstruction with Weakly-Supervised Learning: From Single Image to Image Set》
论文+代码阅读摘要问题:具有真实地面数据的3D人脸模型是很罕见的提出的方法:1)对一个弱监督学习使用一个混合鲁棒的损失函数来训练,综合考虑了low-level & perception-level 。2)使用多张图片进行重建结果:对遮蔽和大姿态具有鲁棒性 / 在三个数据集上进行测试,并且比较了十五个深度学习的方法,都具有优越性。preliminaries:Models and Outputs3DMM模型* 使用 CNN来回归3DMM模型的参数,使用Res-Net来回归pose,li原创 2021-07-15 10:45:19 · 1748 阅读 · 0 评论 -
tf.train.Saver()
转载地址:https://blog.csdn.net/yz19930510/article/details/80324389tf.train.Saver() 保存和加载模型saver = tf.train.Saver()saver.save(sess, ‘路径 + 模型文件名’)在创建这个 Saver 对象的时候, max_to_keep 参数表示要保留的最近检查点文件的最大数量,创建新文件时,将删除旧文件,默认为 5(即保留最近的 5 个检查点文件),max_to_keep=5。saver =转载 2021-07-09 10:25:58 · 457 阅读 · 0 评论 -
DECA代码阅读
demo_reconstruct.pysys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))sys.path.insert(0,"/path") 的用法:这样新添加的目录path会优先于其他目录被import检查os.path.abspath:获取文件绝对路径os.path.join()函数:连接两个或更多的路径名组件:1.如果各组件名首字母不包含’/’,则函数会自动加上2.如果有一原创 2021-07-08 09:45:40 · 1594 阅读 · 0 评论 -
openCV学习(一)
颜色空间色彩空间变换人眼的色彩空间是RGB,OpenCV默认使用BGROpenCV最常用的是HSV(Hue, Saturation, Value 色调,饱和度,明度)色彩空间。视频为了节省存储,使用的是YUV做移动端开发时,适配问题就需要根据手机屏幕色彩空间的不同来进行调整。HSVHue色相,是360度的一个扇面,不同度数对应不同色彩。Value,明度,即是圆柱体的高,越靠近圆柱体底部,越暗呈现黑色,越往上,越明,呈现白色。Saturation饱和度,是指从中心到边缘,越边缘颜色越纯原创 2021-06-30 20:18:29 · 298 阅读 · 4 评论 -
三维重建(一)
从三维物体到二维成像损失了深度信息,因此直接处理三维数据理应得到更好的结果也是解决问题最直接最根本的方法特征点检测与匹配背景介绍三维模型重建流程:三维点云获取(这些点是没有结构的,但是可能有一些属性,如颜色和法向量) -> 几何结构恢复(由点云到网格表面重建) -> 场景绘制(渲染的过程)三维点云的获取方式:雷达获取 / Kinect / 单目多视角 / 双目立体视觉首先有大量图像(可以是无序的)然后进行运动恢复结构,进行稀疏点云的重建(对相机进行标定,得到相机的所有.原创 2021-06-30 09:45:49 · 3279 阅读 · 7 评论 -
68点人脸关键点定位
人脸对齐/人脸关键点基本概念根据输入的人脸图像,自动定位出面部关键特征点,如眼睛,鼻尖,嘴角点,眉毛以及人脸各部件轮廓点等想要表示形状信息时,使用的是点的集合(向量)2D人脸:5 / 21 / 29 / 68 / 96 / 192等等3D人脸:1000 / 8000点评价人脸关键点性能的指标:NME:Normalized mean error (预测点和基准点之间的欧式距离)CED: Cumulative Errors Distribution (CED) curveNME的计算公原创 2021-06-29 22:24:36 · 9485 阅读 · 4 评论 -
3DMM-Fitting_Pytorch代码阅读
convert_bfm_data.py(transfer original BFM09 to our face model)Scipy是世界上著名的Python开源科学计算库,建立在Numpy之上。它增加的功能包括数值积分、最优化、统计和一些专用函数。 SciPy函数库在NumPy库的基础上增加了众多的数学、科学以及工程计算中常用的库函数。例如线性代数、常微分方程数值求解、信号处理、图像处理、稀疏矩阵等等。BFM模型介绍官网01_MorphableModel.mat(数据主体)BFM模型由534原创 2021-06-28 21:38:14 · 3849 阅读 · 4 评论 -
点云到网格的重建
三维模型的表述方式边界表述法——多面体表述法将物体表面表述成一组封闭物体空间的多边形,其中最常用的是三角形和四边形。 其中三角形表示物体的表面也叫做三角剖分。三角剖分具有以下特性:稳定性强(在进行渲染的时候,三角形投影永远是个三角形,而四面体就不一定,会存在两个顶点重叠的情况)有助于恢复模型的表面细节要求点云稠密且分布均匀最常用的三维模型表述方式——三角网格当你使用meshlab导入的时候,如果其为非流形的,你就需要通过一些手段将其变为流形的 存储面片顶点索引使用顺时针方向存原创 2021-06-25 11:31:30 · 1962 阅读 · 1 评论 -
CS231A Course Notes 1: Camera Models
相机模型 + 对极几何(相机之间的约束)针孔相机模型 / 鱼眼相机模型(无人机使用)针孔相机模型三维空间的物体如何反应在图像上呢?世界坐标系 -> 相机坐标系(这个转换实际上就是一个刚体变换:旋转+平移)相机坐标系 - >世界坐标系 (刚体变换的逆变换)Xw世界坐标Xc相机坐标X_w 世界坐标 X_c 相机坐标Xw世界坐标Xc相机坐标 R是正交矩阵,正交矩阵的逆和它的转置是一样的世界坐标到相机坐标系有些场景里需要绘制相机,所以需要绘制相机位置和朝向。相机坐标系中的z原创 2021-06-23 19:49:59 · 392 阅读 · 0 评论 -
Learning to Regress 3D Face Shape and Expression from an Image without 3D Supervision
摘要从单一图像中估计三维人脸形状必须对光照、头部姿势、表情、面部毛发、化妆和遮挡的变化具有鲁棒性。RingNet利用一个人的多张图像,自动检测出2D面部特征提出的方法目标是从单一的人脸图像估计3D头和脸形状输入的是:2D landmarks 和 identity labelsDuring inference it uses only image pixels; 2D landmarks and identity labels are not used.关键思想:一个人的脸型是不变的,即使原创 2021-06-22 22:58:04 · 940 阅读 · 0 评论 -
3D人脸重建硕博论文阅读
基于人脸单视图的3D人脸重建方法研究(华南理工)摘要基于人脸正视图来开展 3D 人脸重建。在选择人脸正面图像后,采用主动形状模型(Active Shape Model,ASM)算法进行人脸对齐,从而检测出图像中的人脸特征点。接着修改 Facegen 导出的模型作为基准 3D 人脸模型,并建立特征点与模型顶点之间的映射关系。根据这个映射关系,使用径向基函数(Radial Basis Function,RBF)插值算法进行插值,进而将基准 3D 人脸模型形变为个性化的 3D 人脸模型。为了重建具有原创 2021-06-17 09:50:35 · 1523 阅读 · 0 评论