邱文军
摘要:本设计的目的在于构建一个适于个人应用的,方便易操作,价格低廉的3D扫描仪,主要由承载被扫描物体的转盘、景深图像传感器及支架、PC终端构成。其工作的基本过程是根据扫描物体尺寸,固定好摄像头的高度及与被扫描物之间的距离,随着转盘匀速旋转,即可得到被扫描物体的.ply模型,再通过PC端相应的图像处理软件修改模型便得到可直接在3D打印机中打印的.stl文件。通过调试与实验,该扫描仪的扫描效果不错,且可扫描范围较广,并可实现整个人像的扫描。
关键词:3D扫描仪;景深图像传感器;图像处理
中图分类号:TP37 文献标识码:A 文章编号:1009-3044(2015)07-0268-03
Abstract: The purpose of this design is to build an inexpensive 3D scanner which is suitable for personal and convenient to operate. The 3D scanner is consist of turntable, the DOF image sensor, bracket and PC terminal. The first step is to make the camera stable according the distance, size and height of the scanned object. Then the .ply model of the scanned object can be obtained as the turntable rotate at a uniform rate. Finally an .stl files which can be printed directly on the 3D printer will be formed through corresponding software. By debugging and experiments, the scanner works well, which can scan a wider scope and scan the portrait.
Key words: 3D scanner; DOF image sensor;Image processing
3D扫描、3D打印技术是20世纪80年代才兴起的一门新兴的技术,是21世纪制造业最具影响的技术之一。随着计算机与网络技术的发展,信息高速公路加快了科技传播的速度,产品的生命周期越来越短,企业之间的竞争不再只是质量和成本上的竞争,而更重要的是产品上市时间的竞争。因此,通过3D扫描和3D打印增加产品的信息量,以便更快的完成设计及其制造过程,将产品设计和制造过程的时间周期尽量缩短,防止投产后发现问题造成不可挽回的损失。
1 3D 扫描、3D 打印技术及其工作原理
1.1 3D 扫描技术及其工作原理
3D 扫描技术则是利用三维扫描仪,用来侦测并分析物体及环境的形状、构造与外观数据。采集的数据信息用于三维模型重塑计算,从而构建虚拟的数字模型。而传统的扫描是扫描平面的对象,如照片、文本页面、照相底片等。
3D 扫描技术的工作原理:通过激光器和镜头扫描对象,记录扫描对象切面的距离数据并组合成一个三维模型,并在终端设备中显示。
1.2 3D 打印技术及其工作原理
3D 打印技术也称“快速成形技术”,是以数字模型为基础,通过软件分层离散和数控成型系统,利用激光束、热熔喷嘴等方式将打印耗材,如金属粉末、陶瓷粉末、塑料、细胞组织等特殊材料进行逐层堆积黏结,最终叠加成立体型,最终将数字三维模型打印成实物产品。
3D 打印技术的工作原理:根据需求选好打印材料,并将数字三维模型数据输入到3D 打印机中,设备会按照模型数据以层层叠加的方式将模型打印成实物。3D 打印机和2D 打印机的区别在于多了一个维度,实现喷头与介质之间的移动。
2 系统简介
2.1系统方案
自国外推出MakerBot开源三维打印项目后,国内以之为基础开发的个人3D打印机便如雨后春笋般发展起来。但作为3D打印机“复印”功能的3D扫描仪,受众仍然是少数企业,动辄几万甚至十几万的价格是导致无法向个人普及的主要障碍。个人3D扫描的应用则更具生命力,一旦实现普及将在工业设计、艺术造型、儿童玩具等领域引发变革。
最简单的3D扫描仪由摄像头,线激光器及相应的图像处理软件构成,但其扫描效果不佳,不适合扫描体积大的物件。而本设计中的3D扫描仪主要由可控转盘、景深图像传感器及其支架、三维扫描及处理软件等构成。通过调整被扫描物体与传感器之间的距离及传感器的高度,可实现对不同体积的物体的扫描。
2.2系统结构框图
1)景深传感器
景深传感器采用是Kinect。Kinect是微软在2009年6月2日的E3大展上正式公布的XBOX 360体感周边外设。Kinect彻底颠覆了游戏的单一操作,使人机互动的理念更加彻底的展现出来。Kinect是一种3D体感摄影机(开发代号“Project Natal”),同时它导入了即时动态捕捉、影像辨识、麦克风输入、语音辨识、社群互动等功能。
在本系统中,主要运用Kinect采集被扫描物体的三维图像,即景深成像。传统的景深成像技术是使用双摄像头,由两幅图片经过复杂计算处理得到3D图像,用以判断景深。Kinect采用的是红外景深成像,其基本原理是:采用光编码技术,仅用红外对场景进行编码,形成一个具有三维纵深的“体编码”。这种编码来自于激光散斑,是由激光穿透毛玻璃或者照射到粗糙物体以后形成的随机衍射光斑。这些激光散斑具有极高的随机性,并且随着距离的不同会变换图案,也就是说空间中任意两个位置的散斑图案都不可能是相同的,只要在视场空间中打上这样的结构光,整个立体空间就都被标记,某个物体在这个空间中,只需要观察物体上的激光散斑图案,就能得知这个物体在整个空间中的位置。
在系统的设计中,Kinect固定在一个高度可调节的支架上。一方面是为了固定Kinect;另一方面可自动调节Kinect的高度。高度可调的用意在于可以轻松扫描不同高度的物体,特别是在人像扫描中方便快捷。
Kinect扫描过程中,可以在电脑中实时看到扫描得到的图像;扫描结束后可以得到一个.ply格式模型。
2)转盘
转盘用于承载被扫描物体,并利用单片机控制其正传、反转与暂停。利用景深传感器扫描最简单的方法是手持,围绕被扫描物体转一圈即可得到其3D图像。但这种方法得到的图像质量较差,后期修图的工作量较重,有时即使通过修图,最终得到的3D图像效果仍然不好。而将物体置于转盘上,固定景深传感器,通过控制转盘匀速转动,可以得到较好效果的3D图像。
转盘的旋转通过单片机控制电机驱动器驱动电机实现;继电器则可实现旋转过程中的暂停与重启。
3)PC端
PC端一方面是控制单片机,实现对转盘的控制;另一方面则主要是对景深传感器的图像进行处理得到可以打印的.stl文件。本系统中采用的图像处理软件是Meshlab, 是一个开源,方便携带,和可扩展的系统,用于处理、非结构化编辑 3D 三角形网格。该系统发布于2005年年底,旨在提供一套 3D 扫描、 编辑、 清洗、 愈合、 检查、 呈现和转换这种网格的所产生的典型不让小非结构化模型的处理的工具。Meshlab功能强大,常用到的处理过程包括:滤除噪声;图像平滑;空洞填补;多余背景的删除等等。根据扫描后的.ply文件的效果,采用相应的处理,最后保存为.stl格式。
2.3软件设计
下位机软件的主要功能有:
1)与PC通信,接收上位机发出的控制信号;
2)控制圆盘的旋转方向和旋转速度;
3)控制升降台的高低。
上位机软件的主要功能有:
1)控制景深传感器的位置,可在30度~210度之间调整;
2)开启扫描模式;
3)开启扫描模式的同时,控制圆盘与升降台的位置。
3 系统特色
在我们所设计的3D扫描仪中,主要的创新点有三方面:一是采用景深传感器摄像头,相比较线性激光器和普通摄像头组合的扫描效果,前者更胜一筹;二是采用可控转盘承载被扫描物体,因为转速均匀,扫描效果更好;三是采用支架,自动调节景深传感器的高度,大大拓展了可扫描物体的范围,在较高物体的扫描中更为方便快捷。
4 技术说明
本设计中转盘的承重为100Kg,所以理论上可扫描重量在此范围内的物体,同时被扫描物体的高度应该2m以内。为达到较好的扫描效果,转盘与传感器的间距应在1.5m左右,转盘的转速约为4分钟/圈。对于较高物体的扫描,如整个人像的扫描,为得到完整的图像,在扫描过程中,传感器也需在支架上均速地上下运动,一般地,在转盘转过一圈的时间里,传感器需在纵向上扫完整个物体。
5 系统适用范围
本设计结构精简,成本不高,相比较昂贵笨重的工业级3D扫描仪,更适应用于个人及一般商用。可扫描的物体高达2m,重量不超过100Kg,应该说可以实现多数物体的扫描。在商用中,可专门用于人像的扫描与打印,极具市场潜力。此外,在艺术设计,儿童玩具等方面都有广泛应用。如图2所示。
6 结束语
经过近两个月的准备,制作与调试,3D扫描仪基本能达到预期效果。在整个过程中,摄像头的选择上曾多次更改,因为其直接关系到扫描的效果,最终选择了效果较好的Kinect摄像头。在扫描的方法上也多次尝试,才确定了利用可控转盘和可调支架的方法,这使得扫描过程中的人为干扰大大减少,提高了扫描的精度。人像的扫描中,因为人体身高相对较高,而且在扫描过程中很难做到绝对地静止,所以要得到完整,精准的图像曾尝试过很多方法,最终才扫描成功的。PC端处理软件的选择也极为重要。相关的软件很多,每种软件又各有优缺点,在不断地试验中,最终确定了修图软件。通过不断地调整距离、高度,尝试不同的扫描路径,一次次地修改图像最后获得较好的效果。
参考文献:
[1] 李昀芸,吴帮平.3D扫描及3D打印技术在定格动画中的新应用[J].物联网技术,2014(12):72-73.
[2] 刘淑琴.工程电磁场基础及应用[M].机械工业出版社,2011.
[3] 曹广忠,潘剑飞,黄苏丹,等. 磁悬浮系统控制算法及实现[M].清华大学出版社,2013.
[4] 周航慈. 嵌入式系统软件设计中的常用算法[M].北京航空航天大学出版社,2010.