项目工作总结——人脸建模方法研究
这次的项目是结合3D技术做出人脸识别,首先的工作就是了解3D模型,为此,这一阶段的任务就是利用程序作出3D模型并研究3D模型的特点。
我的阶段任务分为两部分:一.考察3D建模对2D素材的要求;二.尽可能多的尝试已有的建模方法。
一.建模的图片要求
关于这方面,确实不好说,我查过了一部分资料,主要为别人的博客,和部分官方对旗下的产品的说明,有几个基本点是共同的:
对于物体:
1.物体不能移动(这个就是废话了。。。。)。
2.物体不要有大量的反射,也不能是半透明。因为光的颜色和亮度在不同角度看是不一样的,会影响到建模,,它可能把光线也算作一种“物体”。
3.物体最好不要只有一种颜色,照片建模软件很难重建纯色的物体。
4.非常薄的物体。软件生成点云时,当拍摄物的一个面非常薄,软件没有办法在上面找到足够多的点并计算出它的形状。此外,沿着薄片的长度方向搜寻点也十分困难。
5.纵横交错的物体。由于软件在照片之间追踪同名点,纵横交错的物体会导致软件遗失很多在某张照片上搜寻出的点。特别是那些看起来非常相似的纵横交错的物体,比如树上的树叶,软件无法确定某个点到底是前一张照片上位于远处的同一个点,还是另外一个点。
还有灯光的要求,但是我只搜索的大概是“合适”的灯光,怎么个合适法。不知道
对于相机。。。。。。emmmmm。。。。搜索到一堆东西,但懂得不多,放链接吧(其实手机的傻瓜相机已经很不错了):
https://www.sohu.com/a/167977948_300353(这是详细的,总体的说明)
http://www.3dcloud.cn/bbs/forum.php?mod=viewthread&tid=161&extra=page%3D1(这是3Dcloud的论坛官方说明,嗯,大概是官方的,链接有放在建模说明里,3Dcloud就是下面我建出来的鬼模型,用的那个建模方法)
http://www.zbddd.com/forum.php?mod=viewthread&tid=122&extra= (以一个点为圆心,半径要一样,匀速转动 ,这样拍出来的照片,在转化模型的时候效果比较好)
二.建模方法
刚开始有点蒙圈,老想着用现成的,就查了好多成熟的软件(甚至是别人家成熟的建模软件),姑且是说一下,展示下我这周没偷懒(然而事实是。。。。我用的心确实不多):
1.首先用的是一个国产的软件,是一个深圳公司的,可以申请20天的免费使用,下载地址(官方):http://www.zwpix.com/gsjj.asp?id=18。不得不说,这公司真是个奇葩,第一次见(可能我软件公司见少了吧)把自家产品挂在百度云上提供下载的,当时看着没开百度云会员的条件下,限速的百度云每秒不到100kb的下载速度,真的是崩溃。。。。弃了,弃了。
2.大名鼎鼎的Autodesk 123D catch,这是是世界级的公司,就是有一点。。。。外国的,被墙限速了(人与人之间为什么不能多一点真诚,这么多限速),在艰难的打开网页,申请账号,从一大堆公司推荐产品中找到123D catch就是已经够烦人了。还好这是个免费软件,可以免费使用,然后就发现自己太天真了。一堆的申请还等着你,同时你还被墙卡着,上不上,下不下。反正我是没有一次填到最后,最后下的中国破解(盗)版,还只有win系统的,我这个mac用户已经mmp了,去了机房还有更坑的。。。。这个单机版只能操作模型,要想2D图片建模还是需要FQ登陆Autodesk公司的账号,利用云服务来合成。够了,我想静静。。
3.然后尝试了一个3Dcloud,就是你在百度上输入“照片建模”的第一个网址,成功居然离自己这么近。然后就是喜闻乐见的注册账号,申请合成。云服务,你需要传照片给服务器,由服务端替你完成工作,然后传模型供你下载(我终于反应过来,好像有哪里不对)。按照步骤一步步来啰,第一个模型就选宅男收藏品中的一个,高达,它大概长这个样子
然后就是拍了大概30多张照片,50多M上传,等了好一会(上传是一段时间,建模又是一段时间大概5分多钟,而且还是不算我前面还有一个等待任务)。
建出来的模型大概是长这个样子:
。。。。。。。。保持微笑。。然后:这什么鬼,我的高达怎么建出来这么个鬼玩意儿,这网站不是逗我吧。
然后看看别人建出来的:
好吧,可能第一部分,照片要求我白写了。。
除此之外,照片建模已经是一门很成熟的技术,现在网上有大量的现成软件可以完成这个任务,方法大同小异,(从我等待3Dcloud时,网站给出的提示可以看出,都是包含了稀疏点云,稠密点云,生成网格等等的步骤),你甚至还能看到清华大学和美国的特拉维夫大学的研究学者写出的根据一张照片建立模型的程序。不过上述大部分软件都是成熟的,有商业价值,已经被应用于绘测,游戏,建筑等领域的商业软件,换句话说就是这些都是别的公司的产品,已被封装的程序,程序放在服务器上,我们只能利用客户端上传资料,建模过程都是服务器完成,我们接触不到源码自然是不可能利用的(法律上也不会允许侵犯专利)。再附加一张3d模型建立和处理方面的软件总结,是中科大教授的一篇介绍,介绍了超多超详细,可以用来大致了解目前3D模型软件的大致现状:http://3dfun.com.tw/3dnews/3d建模与处理软件简介/
然后我终于发现,我是要做的项目是要求对人脸建模,并用来进行认别,也就是必须有源代码,可能还要根据具体需求更改代码功能,em。。。。。发现问题了,我现在做的测试没什么用顶多只是试试别人成熟的技术,了解到相关领域的现状,对我们的项目编写没有太大帮助。中途调转炮口,研究怎样利用代码建模。
首先第一类:别人写好的组件和算法,利用某些软件来进行3D建模。(当然是开源的)
这个目前的主流是VisualSFM(找出各张照片中的特征点,进行两两匹配,根据匹配的结果,利用射影定理计算得到相机位置等场景信息将场景信息与原始照片结合在一起,得到照片中物体的三维点云,以上即是SFM算法建模)
+ CMVS-PMVS(创建稠密点云)
+ Meshlab(进行网格处理,利用三维点云创建三维模型)
当然,还有利用openCV实现SFM算法(大神专属建模方法),上面的主流方法只适用于windows操作系统(用mac的我再次感受到世界深深的恶意),还有Bundler+ CMVS-PMVS和 Meshlab方法可以用在linux系统上,需要用linux系统的命令行来实现,据说成像效果最好(这和我这个冷酷的mac用户有什么关系呢。。。。),缺点是它只能建成一面,“我把物体四周都拍了,他就拆开,前后建在一面,我也是很惆怅。”——来自某个博主的话:https://blog.csdn.net/moneyhoney123/article/details/78318506(建模方法分析)
最后,还是脚踏实地,踏踏实实的用代码写建模吧。。。。才有鬼咧。我没修计算机图形学,这个项目也算事半道出家(也算别人可怜我),让我从头写。。。。。估计项目交差事时我也写不完,上github吧。互联网时代还真是个好时代,共享概念深入人心,我也在github上找到了开源的人脸重建项目,可喜可贺,可喜可贺。。。信不信我掀桌啊,(╯°Д°)╯︵┴┴代码是用scale语言写的。。。我个小白,玩鬼啊。
不说了,都是泪啊,搞个建模搞的烦死了,目前在搭建scale环境,不知道Intellij IDEA能不能用,慢慢来吧。附上github上的源代码地址:
https://github.com/unibas-gravis/scalismo-faces
https://github.com/AaronJackson/vrn
https://github.com/unibas-gravis/basel-face-pipeline
下面是我参考的一些不知道放哪里的小资料,也顺手附上吧:
基于图像的场景三维建模:https://blog.csdn.net/gzq0723/article/details/79597650(照片建模过程及详细算法介绍)
Autodesk 123D如何进行拍照:http://v.youku.com/v_show/id_XMzY0Mzg4ODA0.html(Autodesk 123D 的照片要求介绍,纯英文,可以练练听力)
第一次正规的写博客(上次项目是黑历史,已经丢进记忆的垃圾堆了),不知道怎么写才能完整的写出我的项目阶段汇报,写到后面完全写嗨了,写到放飞自我,下次注意。另外这次博客引用网址过多,完全是依靠别人的经验来解决自己项目的问题,自身感悟过少,同样,下次注意。这次的汇报,让我清楚的认识到了自身基础薄弱,各种能力(自学能力,利用网络的能力)欠缺,以后会注意补正。
转载于:https://www.cnblogs.com/Hellcythe/p/10153551.html
项目工作总结——人脸建模方法研究相关推荐
- 人脸扫描建模_一种基于三维扫描数据的人脸建模方法
一种基于三维扫描数据的人脸建模方法 黄炎辉 1 , 樊养余 1 , 董卫军 2 [摘 要] 三维扫描仪可以准确获取人脸的几何形状与纹理,但原始的人脸扫描 数据仅为一张连续曲面,不符合实际的人脸结构,无 ...
- 模块化多电平换流器matlab建模,模块化多电平换流器电磁暂态高效建模方法研究...
模块化多电平换流器高压直流输电(Modular Multilevel Converter based High Voltage Direct Current, MMC-HVDC)以其独特的技术优势,已 ...
- 利用计算机绘制地质图的思路和方法,基于平面地质图的三维地质建模方法研究...
摘要: 平面地质图综合了地质野外勘察工作成果与地质专家知识,揭示了地区的岩石.地层和地质构造等信息,是人们了解区域地质最易获取和最直接的数据源.研究基于平面地质图的三维地质体建模方法,能够有效地解决缺 ...
- 基于COMSOL多物理场耦合仿真建模方法研究
更多COMSOL相关内容请关注→[COMSOL仿真交流],获取文章PDF格式助力学习 引言 目前,在工程实际中,很多多物理场耦合作用下的实验还不具备开展条件,且无具体的理论指导设计,必须采用数值仿真的 ...
- android 人脸识别 方法研究,基于Android平台的人脸识别技术研究
摘要: 在计算机视觉与模式识别领域中,人脸检测与识别技术是一个非常热门的研究课题,同时也具备非常广阔的商业价值.在诸多的目标检测算法中,基于AdaBoost算法的目标检测方法具有检测速度快,检测效果好 ...
- (论文阅读)基于融合深度卷积神经网络的人脸识别方法研究-褚玉晓
一.基于融合深度卷积神经网络人脸识别方法设计 1.PCA算法提取人脸特征 主要成分分析法(Principal Component Analysis,PCA) 第一步,计算人脸图像的平均值并执行归一化的 ...
- 人脸检测方法研究记录
--------------------- 本文来自 HamTam12 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/sinat_14916279/article/d ...
- 基于matlab的人脸五官边缘检测方法,人脸边缘检测方法研究与仿真
人脸表情是人类情感的主载体之一,它含有丰富的人体行为信息.通过脸部表情能够表达人微妙的情绪反应以及对应的心理状态[1],人脸表情识别技术随着人们对表情信息的日益重视而受到关注,现已成为人们研究的热点. ...
- 统计参数语音合成中的声学模型建模方法研究
阅读中科大雷鸣2012年博士毕业论文后整理个人读书笔记 1. 绪论 传统语音合成的方法 基于HMM的统计参数语音合成(也是本文要讲的重点,参数统计的办法) 基于大量语料的单元挑选与波形拼接 一般的语音 ...
- matlab环面,基于Matlab和UG8.0一次包络环面蜗杆建模方法研究
平面包络环面蜗杆传动具有多齿啮合.承载能力强,传动比大.寿命长.传动平稳等特点,已在工业领域发挥着举足轻重的作用[1].查阅相关论文,孙昌佑文章提到应用VBA二次开发环境编程,在MAT6.0中运行程序 ...
最新文章
- ​​​​​​​2016最新CocoaPods安装与使用
- 【C 语言】指针数据类型 ( 指针类型变量 与 指针指向的内存块 概念区别 | 指针赋值 | 指针运算 | 内存赋值 | 内存取值 | 内存修改注意事项 )
- 3个多月,近3000人参与的源码共读,诚邀加入~
- java策略_java策略模式
- ioc控制反转_深入理解依赖注入(DI)和控制反转(IOC)
- IntelliJ IDEA 2019.3 正式发布,给我们带来哪些新特性?| CSDN 博文精选
- 关于前端样式定位的一些自己的看法
- lucene-SpanQuery跨度查询基础
- 拓端tecdat|R语言用关联规则和聚类模型挖掘处方数据探索药物配伍中的规律
- c#明华rf读卡器_明华MW接触式IC卡智能卡读卡器读写器(U/MRD-EB/ET)
- 人脸识别mtcnn原理
- 一文读懂大比例尺地形图测绘
- SQL:取 分组后 的 按时间倒序 的前5条数据
- python苹果手机触摸_python实现查询苹果手机维修进度
- 使用MapReduce挖掘父子关系
- 上海会计师事务所选哪家?
- [已解决]你的支付授权失败。请核对你的信息并重试,或尝试其他支付方式。请联系你的银行了解更多信息
- 7-2 Binomial Queue
- java中逗号运算符的含义_逗号运算符什么时候有用?
- 蓝桥杯学习记录||1264. 动态求连续区间和 | 线段树
热门文章
- DNS域名解析基础知识
- Spring注解几大注解的区别
- JavaScript 是按值传递还是按引用传递的
- Oracle数据库中NOLOGGING和FORCE LOGGING
- asyncio 文件io高并发_请问这个 asyncio 异步访问页面怎么写可以更加快?
- python扩展库简介_NumPy简介-Python扩展程序库 -- NumPy-编程文章分享
- Unity编辑器控件的使用(—)
- Java Json字符串或Json对象属性查找工具类
- CacheCloud部署与群集申请流程测试
- 安卓手机小说阅读器_粉笔免费小说阅读器app下载-粉笔免费小说阅读器手机版下载v1.0.1...