VR应用里面的Photogrammetry技术是什么
http://www.manew.com/thread-49556-1-1.html
具体使用
http://www.didayin.com/archives/632
软件下载
http://labs-download.autodesk.com/us/labs/trials/worldwide/123DCatch.msi
通过对比眼睛所看到的图像,我们的大脑可以感知深度。如果你交替闭上你的双眼,你会发现你看到的物体似乎向左偏移或者向右偏移。距离越近的物体似乎比距离远的物体偏移更多。这就是立体视觉,也是二维图像生成三维物体和空间的核心概念。你的大脑潜意识地利用这些信息进行计算,并告诉你物体离你的距离。同理,Photogrammetry是一种通过比较两个或两个以上的照片,然后利用软件重建物体形状的摄影技术。photogrammetry已经有超过100年的历史。在二战,盟国用来构建入侵地图,发现V2火箭计划,后来美国宇航局为阿波罗计划绘制了月球地形图。这是一个昂贵的、艰苦的过程,要动用大量的工作人员,和大量的专业相机和绘图设备。
自那时起,photogrammetry便开始了漫长的发展道路,现在,您可以从智能手机提取照片,花几分钟处理,然后3D模型就搞定了,而在以前,这可是要大量的专业人员耗费好几个星期才能完成。现如今,摄影扫描先驱们已经把它变成了一种艺术形式。
从这些照片中,你可以发现一些制作3D模型所使用的不同技术,正是它们使3D建模更容易,入门更便宜。最受人欢迎的软件技术要数像David 3D Scanner这样的激光扫描,它使用的是 Microsoft Kinect ,它带有像ReconstructMe这样的软件,或像Autodesk’s 123D Catch, 或 Photoscan这样的消费者摄影软件。
我所见过的最棒的3D扫描就是激光扫描仪,但是它的photogrammetry 稍许落后,激光扫描也需要特殊的设备。使用Microsoft’s Kinect 进行3D扫描则很清晰,因为它可以给你提供实时反馈,如果漏掉什么,你马上就会得知。该产品价格低廉,数百万人已经为他们的Xbox360配备了一款。然而,因为在Kinect的摄像头清晰度相对较低,所以对于细节处理方面不是很令人满意。一旦微软发布 Xbox One的软件开发版, Kinect 2或许会让人很期待。
与其它的3D绘图技术相比,用相机进行photogrammetry,那么大部分的计算工作还是比较容易的。虽然它不像使用像Kinect的封闭系统精简,但photogrammetry的保真度更高,且所用的设备几乎人人都能买得起。因为它采用的只是普通的数码相机,所以photogrammetry的建模尺度质量会随着相机技术的发展日趋完善。而现代数码相机的传感器非常先进,因为需求量大,所以价格也较便宜。
今天,小编来给大家概述一下photogrammetry 的操作流程,以及目前有什么消费者可以运用的软件和硬件。
Photogrammetry软件
比较流行的photogrammetry 软件分别是是Autodesk的 123d Catch 和Agisoft的Photoscan。
Autodesk的123DCatch 是免费的,比较容易使用。您的照片可以在Autodesk的服务器中进行处理,所以你并不需要一个功能强大的计算机。同样的道理,Catch 在配置选项方面几乎让你实现傻瓜操作,精美的印刷表明,Autodesk 的扫描处理效果很强大。
Autodesk的123DCatch
在较低的细节设置上,Photoscan处理速度很快,而且相当易于使用,能够制作出一些效果惊人的模型。虽然179$对于标准版来说并不算便宜,但是比起再购买或建造一个激光扫描仪,这个价格算是非常实惠的。其建模质量也取决于您的家用电脑,特别是内存容量。如果你对细节要求较高,你需要一台RAM尽可能大的电脑。这样的话耗资就比较大了,但如果在建模计算处理过程中Photoscan耗尽内存,可能会有长时间的等待,甚至会崩溃。
这两个程序工作方式类似。你需要从不同的角度拍摄一系列物体的照片,然后将它们导入到软件,对照片的特点进行比较,然后生成带纹理的三维模型。
AGISOFT的PHOTOSCAN
这两款对于源素材有比较高的要求。如果照片像素不高,那你的3D模型质量会受到限制,无论你的软件质量有多好。这就是为什么photogrammetry 只采取优质照片 ,好的照片出来的3D建模效果当然与大有不同。
接下来,我给大家谈谈photogrammetry 的摄影技巧,其基本原则如下:
1.保持清晰的图像
像素有多重要上面已经提到过了,就不多赘述了
2.去掉非必要的信息
如果你不需要背景,就把它掩盖。如果有一个图像没有正确对齐,就去掉它。在3D建模开始工作前,你需要进行删选。
3.图片要详尽
如果想拍摄头部的图片,你需要从耳朵后面多拍些图片。确保你有所有所需要的细节图,因
photogrammetry的硬件
数码相机
你需要一个摄像机拍摄你的源照片,智能手机也可以,但单反拍摄的照片会更好。这里推荐2款。1.尼康D800。这个单反的优势是无与伦比的分辨率(3600万像素),可以捕获到更细微的小细节和更大,更复杂的场景。2.佳能5D Mk III优异的光敏感度,可以帮你提高ISO同时照片降噪效果。这样的话,你就可以保持高速快门和小光圈进行图片拍摄(这点很有用)。相机越好,你处理照片的回旋余地就越多,为您的软件提供较高水平的原始图片。
三脚架
拍摄照片时,三脚架是几乎是必要的,在拍摄照片时,用来固定你的相机和拍摄物体。即使你是用智能手机来拍摄photogrammetry原始照片,三脚架也可以让你的镜头更加一致。使用带球头的三脚架可以让你把数码单反相机向一侧旋转,这对于纵向物体拍摄非常有用,可以充分展示物体的框架,并尽可能地捕捉细节。
光线
我们的目标是拥有高清晰,锐利及平面的图像。为达到这些要求你需要关闭光圈,这意味着你需要更多的光线。良好的照明条件也可以让你降低会导致纹理减少的ISO,还可以提高快门速度,减少运动模糊。
照明甚至可以减少对发光对象的突出效果。从扫描程序来讲,这更易于使用纹理图,而在光照不均匀的环境中,有阴影的区域将展示较少的细节,在加工过程中很难处理。
绿屏
绿屏或其他类似的东西,可以帮助你制作一个数字掩模以切除图像中多余的部分。让屏幕均匀受光,从而使屏幕的颜色不至于反射到你的目标上。通过将屏幕拍摄的照片导入到您的计算机,并且通过使用如Photoscan或Photoshop中的魔术棒工具,或者使用After Effects中的Keylight键控工具对它进行测试。
以上对photogrammetry的软件、硬件和基本原理作了简要的介绍。尽管它看起来像一个黑科技,但它实际上真的值得一用。下次,VR2048可能将会发布一些使用photogrammetry的摄影技巧,我们将模拟一个物体的拍摄及用PhotoScan处理过程。(VR2048)
VR应用里面的Photogrammetry技术是什么的更多相关文章
- 开启Windows8里面的Hyper-V虚拟机功能
首先了解下什么是Hyper-V?也就是虚拟化技术,允许终端用户在同一台机器上运行多个操作系统,支持32位和64位系统,可以直接在Windows 8上创建自己的虚拟机.开启Hyper-V虚拟机需要更多的 ...
- Activity往另外一个Activity传值,Fragment获取另外一个Activity里面的值。
在oneActivity中实现跳转到MainActivity //intent 用来跳转另外一个MainActivity,bundle传值到MainActivity Intent Ma ...
- Java基本概念(2)J2EE里面的2是什么意思
J2EE里面的2是什么意思 J2SE,J2SE,J2ME中2的含义要追溯要1998年.1998年Java 1.2版本发布,1999年发布Java 1.2的标准版,企业版,微型版三个版本,为了区分这三个 ...
- 在wex5平台grid里面的gridselect下拉不能显示汉字问题
当grid里面有gridSelect组件的时候,gridSelect里面的bind-ref是对应的数据库存入字段(int类型),bind-labelRef是对应的计算字段(视图里面的),而option ...
- dede文章调用时过滤调 body里面的style属性和值
dede 发布文章的时候会在里面的标签中添加一些style 属性,现在改网站想去掉这些属性和里面的值,因为文章太多所以就用下面的方法 \include\arc.listview.class.php 在 ...
- 提取数据库字段里面的值,并改变+图片懒加载,jquery延迟加载
要求:手机端打开某个页面的详细信息,因为网速或者别的原因,响应太慢,因为图片大的原因,希望先进来,图片在网页运行的情况再慢慢加载(jquer延迟加载) http://www.w3cways.com/1 ...
- JAVA里面的IO流(一)分类2(节点流和处理流及构造方法概要)
IO流根据处理对象的不同分为节点流和处理流. 直接对文件进行处理的流为节点流: 对流进行包装从而实现对文件的优化处理的流为处理流. 节点流类型: 可以看出,节点流主要分这几大类: 文件流 文件流构造方 ...
- 头文件里面的ifndef /define/endif的作用
c,c++里面,头文件里面的ifndef /define/endif的作用 今天和宿舍同学讨论一个小程序,发现有点地方不大懂······ 是关于头文件里面的一些地方: 例如:要编写头文件test.h ...
- 尝试一下sql server2016里面的json功能
前2天下载了一个2016的rc版本来玩一下,首先感觉是~开发者版本免费啦!!撒花!!!另外一个东西,sql server 2016能支持json 的解析和应用啦,虽然我不知道它的性能如何,先来一发测试 ...
随机推荐
- __NSCFConstantString
-[__NSCFConstantString size]: unrecognized selector sent to instance 0x53ea70 该错误是在我将NSString类型的参数赋值 ...
- mysql中整数类型后面的数字,是不是指定这个字段的长度?比如int(11),11代表11个字节吗?
原文地址: http://www.cnblogs.com/stringzero/p/5707467.html 原先对mysql不太理解,但也没有报错.但理解的不够深入.这次补上. 原来以为int ...
- centos 扩展root根分区的大小
目标:将VolGroup-lv_home缩小到125G,并将剩余的空间添加给VolGroup-lv_root 1.首先查看磁盘使用情况[root@localhost ~]# df -h文件系统 ...
- 折半查找&clock函数
#include <stdio.h>#include <time.h> #define CLOCKS_PER_SEC ((clock_t)1000) int binsearch ...
- Sencha Toucha之Ext.Ajax
Ext.Ajax是Ext.data.Connection的hi一个单实例,不需要使用new或者Ext.create方法创建实例后再使用. 类的继承关系为: Ext.Base Ext.data.Conn ...
- [SAP ABAP开发技术总结]ABAP程序之间数据共享与传递
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 编码实现Spring 利用@Resource注解实现bean的注入,xml实现基本数据类型的注入
首先分析. 1: 肯定要利用dom4j读取xml配置文件,将所有的bean的配置信息读取出来 2: 利用反射技术,实例化所有的bean 3: 写注解处理器, 利用注解和内省实现依赖对象的注入. 4: ...
- SQL SERVER赋权限
--创建登录账户 use master GO EXEC sp_addlogin 'jacky', 'pwd' --EXEC sp_droplogin 'jacky' --删除登陆账户 use Test ...
- ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'db'
1.问题 在刚刚安装MySQL之后,进入到mysql环境下,创建数据库,出现下面的提示信息: ERROR 1044 (42000): Access denied for user ''@'localh ...
- sqlplus命令大全
一.ORACLE的启动和关闭 1.在单机环境下要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下su - oracle a.启动ORACLE系统oracle>svrmgrlSVR ...