三维扫描仪

三维扫描仪（3D scanner）是一种科学仪器，用来侦测并分析现实世界中物体或环境的形状（几何构造）与外观资料（如颜色、表面反照率等性质）。搜集到的资料常被用来进行三维重建计算，在虚拟世界中建立实际物体的数位模型。这些模型具有相当广泛的用途，举凡工业设计、瑕疵检测、逆向工程、机器人导引、地貌测量、医学资讯、生物资讯、刑事鉴定、数位文物典藏、电影制片、游戏创作素材等等都可见其应用。三维扫描仪的制作并非仰赖单一技术，各种不同的重建技术都有其优缺点，成本与售价也有高低之分。目前并无一体通用之重建技术，仪器与方法往往受限于物体的表面特性。例如光学技术不易处理闪亮（高反照率）、镜面或半透明的表面，而激光技术不适用于脆弱或易变质的表面。工业计算机断层扫描和结构光三维扫描仪可用于构建三维模型，而无须进行破坏性测试。

## 功能

三维扫描仪的用途是建立物体几何表面的点云（point cloud），这些点可用来插补成物体的表面形状，越密集的点云可以建立更精确的模型（这个过程称做三维重建）。若扫描仪能够取得表面颜色，则可进一步在重建的表面上贴上材质贴图，亦即所谓的材质印射（texture mapping）。

三维扫描仪可类比为照相机，它们的视线范围都呈现圆锥状，资讯的搜集皆限定在一定的范围内。两者不同之处在于相机所抓取的是颜色资讯，而三维扫描仪测量的是距离。由于测得的结果含有深度资讯，因此常以深度影像（depth image）或距离影像（ranged image）称之。

由于三维扫描仪的扫描范围有限，因此常需要变换扫描器与物体的相对位置或将物体放置于电动转盘（turnable table）上，经过多次的扫描以拼凑物体的完整模型。将多个片面模型整合的技术称做影像配准（image registration）或对齐（alignment），其中涉及多种三维比对（3D-matching）方法。

## 技术

三维扫描仪分类为接触式（contact）与非接触式（non-contact）两种，后者又可分为主动扫描（active）与被动扫描（passive），这些分类下又细分出众多不同的技术方法。使用可见光影像达成重建的方法，又称做基于机器视觉（vision-based）的方式，是今日机器视觉研究主流之一。

### 接触式扫描

接触式三维扫描仪透过实际触碰物体表面的方式计算深度，如座标测量机（CMM, Coordinate Measuring Machine）即典型的接触式三维扫描仪。此方法相当精确，常被用于工程制造产业，然而因其在扫描过程中必须接触物体，待测物有遭到探针破坏损毁之可能，因此不适用于高价值物件如古文物、遗迹等的重建作业。此外，相较于其他方法接触式扫描需要较长的时间，现今最快的座标测量机每秒能完成数百次测量，而光学技术如激光扫描仪运作频率则高达每秒一万至五百万次。

### 非接触主动式扫描

主动式扫描是指将额外的能量投射至物体，借由能量的反射来计算三维空间资讯。常见的投射能量有一般的可见光、高能光束、超音波与X射线。

#### 时差测距（Time-of-Flight）

<image>

时差测距（time-of-flight，或称'飞时测距'）的3D激光扫描仪是一种主动式（active）的扫描仪，其使用激光光探测目标物。图中的光达即是一款以时差测距为主要技术的激光测距仪（laser rangefinder）。此激光测距仪确定仪器到目标物表面距离的方式，是测定仪器所发出的激光脉冲往返一趟的时间换算而得。即仪器发射一个激光光脉冲，激光光打到物体表面后反射，再由仪器内的探测器接收讯号，并记录时间。由于光速（speed of light) $c$为一已知条件，光讯号往返一趟的时间即可换算为讯号所行走的距离，此距离又为仪器到物体表面距离的两倍，故若令$t$为光讯号往返一趟的时间，则光讯号行走的距离等于$(c \cdot t) / 2$。显而易见的，时差测距式的3D激光扫描仪，其量测精度受到我们能多准确地量测时间$t$，因为大约3.3皮秒（picosecond；微微秒）的时间，光讯号就走了1毫米。

激光测距仪每发一个激光讯号只能测量单一点到仪器的距离。因此，扫描仪若要扫描完整的视野（field of view），就必须使每个激光讯号以不同的角度发射。而此款激光测距仪即可透过本身的水平旋转或系统内部的旋转镜（rotating mirrors）达成此目的。旋转镜由于较轻便、可快速环转扫描、且精度较高，是较广泛应用的方式。典型时差测距式的激光扫描仪，每秒约可量测10,000到100,000个目标点。

#### 三角测距（Triangulation）

<image>

三角测距3D激光扫描仪，也是属于以激光光去侦测环境情的主动式扫描仪。相对于飞时测距法，三角测距法3D激光扫描仪发射一道激光到待测物上，并利用摄影机寻找待测物上的激光光点。随着待测物（距离三角测距3D激光扫描仪）距离的不同，激光光点在摄影机画面中的位置亦有所不同。这项技术之所以被称为三角型测距法，是因为激光光点、摄影机，与激光本身构成一个三角形。在这个三角形中，激光与摄影机的距离、及激光在三角形中的角度，是我们已知的条件。透过摄影机画面中激光光点的位置，我们可以决定出摄影机位于三角形中的角度。这三项条件可以决定出一个三角形，并可计算出待测物的距离。在很多案例中，以一线形激光条纹取代单一激光光点，将激光条纹对待测物作扫描，大幅加速了整个测量的行程。National Research Council of Canada是致力于研发三角测距激光扫描技术的协会之一（1978）。

#### 手持激光（Handhold Laser）

手持激光扫描仪透过上述的三角形测距法建构出3D图形：透过手持式装置，对待测物发射出激光光点或线性激光光。以两个或两个以上的侦测器（电耦元件或 位置感测元件）测量待测物的表面到手持激光产品的距离，通常还需要借助特定参考点－通常是具黏性、可反射的贴片－用来当作扫描仪在空间中定位及校准使用。这些扫描仪获得的资料，会被汇入电脑中，并由软件转换成3D模型。手持式激光扫描仪，通常还会综合被动式扫描（可见光）获得的资料（如待测物的结构、色彩分布），建构出更完整的待测物3D模型。

#### 结构光源（Structured Lighting）

将一维或二维的图像投影至被测物上，根据图像的形变情形，判断被测物的表面形状，可以非常快的速度进行扫描，相对于一次测量一点的探头，此种方法可以一次测量多点或大片区域，故能用于动态测量。

#### 调变光（Modulated Lighting）

<image>

调变光三维扫描仪在时间上连续性的调整光线的强弱，常用的调变方式是周期性的正弦波。借由观察影像每个像素的亮度变化与光的相位差，即可推算距离深度。调变光源可采用激光或投影机，而激光光能达到极高之精确度，然而这种方法对于噪声相当敏感。

### 非接触被动式扫描

被动式扫描仪本身并不发射任何辐射线（如激光），而是以测量由待测物表面反射周遭辐射线的方法，达到预期的效果。由于环境中的可见光辐射，是相当容易取得并利用的，大部分这类型的扫描仪以侦测环境的可见光为主。但相对于可见光的其他辐射线，如红外线，也是能被应用于这项用途的。因为大部分情况下，被动式扫描法并不需要规格太特殊的硬件支援，这类被动式产品往往相当便宜。

#### 立体视觉法（Stereoscopic）

传统的立体成像系统使用两个放在一起的摄影机，平行注视待重建之物体。此方法在概念上，类似人类借由双眼感知的影像相叠推算深度（当然实际上人脑对深度资讯的感知历程复杂许多），若已知两个摄影机的彼此间距与焦距长度，而撷取的左右两张图片又能成功叠合，则深度资讯可迅速推得。此法须仰赖有效的图片像素匹配分析（correspondence analysis），一般使用区块比对（block matching）或对极几何（epipolar geometry）算法达成。

使用两个摄影机的立体视觉法又称做双眼视觉法（binocular），另有三眼视觉（trinocular）与其他使用更多摄影机的延伸方法。

#### 色度成形法（Shape from Shading）

早期由B.K.P. Horn等学者提出，使用影像像素的亮度值代入预先设计之色度模型中求解，方程式之解即深度资讯。由于方程组中的未知数多过限制条件，因此须借由更多假设条件缩小解集之范围。例如加入表面可微分性质（differentiability）、曲率限制（curvature constraint）、光滑程度（smoothness）以及更多限制来求得精确的解。此法之后由Woodham衍生出立体光学法。

#### 立体光学法（Photometric Stereo）

为了弥补光度成形法中单张照片提供之资讯不足，立体光学法采用一个相机拍摄多张照片，这些照片的拍摄角度是相同的，其中的差别是光线的照明条件。最简单的立体光学法使用三盏光源，从三个不同的方向照射待测物，每次仅开启一盏光源。拍摄完成后再综合三张照片并使用光学中的完美漫射（perfect diffusion）模型解出物体表面的梯度向量（gradients），经过向量场的积分后即可得到三维模型。此法并不适用于光滑而不近似于朗伯表面（Lambertian surface）的物体。

#### 轮廓法

此类方法是使用一系列物体的轮廓线条构成三维形体。当物体的部分表面无法在轮廓线上展现时，重建后将遗失三维资讯。常见的方式是将待测物放置于电动转盘上，每次旋转一小角度后拍摄其影像，再经由影像处理技巧去除背景并取出轮廓线条，搜集各角度之轮廓线后即可“刻划”成三维模型。

#### 使用者辅助

另外有些方法在重建过程中需要使用者提供资讯，借助人类视觉系统之独特性能，辅助完成重建程序。

这些方式都是基于照片摄影原理，针对同个物体拍摄影像以推算三维资讯。另一种类似的方式是全景重建（panoramic reconstruction），乃是在定点上拍摄四周影像使之得以重建场景环境。

## 重建

透过3D扫描后的点云或表面资料，能够建构出2D图面(平面图、立面图、剖面图等标准图)及3D模型，可利用其他自动化工具将形体重新建造实体，亦可透过视觉化设备提供平面或立体的显示效果，辅助的相关工具：

- 2D图面
- CNC 数控自动机床
- 激光切割(雕刻)机
- 3D模型

<image>

- 3D打印机
- CNC 数控自动机床
- 立体显示器

## 应用

<image>

<image>

### 逆向工程

逆向工程，是一种技术过程，即对一项目标产品进行逆向分析及研究，从而演绎并得出该产品的处理流程、组织结构、功能性能规格等设计要素，以制作出功能相近，但又不完全一样的产品。逆向工程源于商业及军事领域中的硬件分析。其主要目的是，在不能轻易获得必要的生产信息下，直接从成品的分析，推导出产品的设计原理。逆向工程可能会被误认为是对知识产权的严重侵害，但是在实际应用上，反而可能会保护知识产权所有者。例如在集成电路领域，如果怀疑某公司侵犯知识产权，可以用逆向工程技术来寻找证据。

### 文化资产

透过3D扫描可将各种物件进行记录，小至各种文物、艺术品，大至历史建筑、街区建筑甚至整体都市环境都可以透过扫描数字化，作为文化资产上之应用，可分为以下几种用途：

- 纪录样貌
- 未来修复之依据
- 实体复制

## 外部链接

- 3D Photography Course Notes
- MeshLab - Open Source program for aligning, merging, cleaning up and simplifying scanned meshes
- Scanalyze - Open Source program for aligning and merge range data
- Manual 3D scanner 3D scan technology description