Riegl Scan-Pro z420i技术文档

发布时间:


RieglScan-ProZ420i的使用手册
一、界面
(一)窗口信息
下面图片示范的是一个RiSCANPRO主窗口。其中计划任务窗口、读出窗口、信息目录窗口和索引窗口是可移动的。一般可以根据自己的喜欢来设置主窗口。
1.计划任务窗口

这个窗口显示的是一个被称为树状的计划任务结构。该树状显示,包含了计划任务里所储存的所有项目类别(扫描、图像、配置、校准)
2.预览窗口
该窗口被放置在计划任务窗口底部,并显示一个当前正确选择扫描或图像的极小按钮。可通过点击在预览旁边的箭头,来打开和关闭预览窗口。
3.读出窗口
当一个显示(2D3D、扫描或图像)被打开时,你可以在显示窗口移动鼠标指针,窗口将显示鼠标位置信息,诸如:坐标系、强度、色彩(仅针对图像)等等。读出窗口的风格,2D扫描、2D图像和3D扫描显示窗口间是不同的。
坐标系可以采取不同的坐标系统进行显示。转换成其他的坐标系统,只需要在读出窗口



任意处点击右键,并在坐标系统菜单(SOCSPRCSGLCS)中选择一个。
对于不同的坐标系统,是可以采取多个读出窗口来进行显示。所有这些读出窗口将显示同一点的坐标,在一个不同的坐标系统进行变换的将除外。
以下图片显示的是,在SOCS坐标系统中展示的一个2D扫描。

4.信息目录窗口
该窗口可显示来自RiSCANPRO的所以信息。这些信息和计划任务存储在一起,因此,你可以清楚的看到在这个计划任务中所进行的所有操作。
信息案例:加载计划任务,加载(只读)计划任务;保存计划任务;开始数据采集;结束数据采集;以及其他的诸如报警信息和错误信息。
5.索引目录窗口
这个窗口显示一个所有运行的索引清单
(二)主菜单
这是RiScanPro的主菜单

1.计划任务菜单

在这个菜单里,你可以加载、保存或关闭一个计划任务。



菜单中的―Abort‖,用以终止当前运行的数据或图像采集。
通过子菜单中的―New‖,以建立一个新的计划任务或创建计划任务中新的项目(扫描,显示,扫描位置,图像)
2.编辑
这个菜单提供了诸如,编辑,重命名,显示属性,删除等操作,用于对计划任务窗口中当前选择的项目进行操作。
3.显示菜单

通过这个菜单,可以对计划任务管理窗口信息目录窗口数据读出窗口线程控制窗口进行切换(请见主菜单对窗口的描述)
4.工具菜单

Combinedadjustment组合调节,用以运行组合调节Licensemanager:许可管理器,显示许可管理器
Scannerconfiguration:扫描仪配置,在没有采集新的扫描数据情况下,显示一个配置扫描仪的配置对话框。
Options...:选项,显示一个―RiSCANPRO‖设置对话框
(三)工具条

前面几个和其他的一样,需要说明的如下:
1.所选项目属性:显示计划任务窗口中当前选定的项目属性(扫描、图像、扫描位置、



像接点目录等等)
2.3.4.5.
计划任务窗口:转换计划任务窗口(如果窗口处于隐藏状态)读出窗口:显示一个新的(附加的)读出窗口信息目录:转换信息目录窗口
重排窗口:通过该按钮,可在水平、垂直或交迭方向对窗口进行重排。
6.向上/向下窗口:通过该按钮,可快速转换到上个窗口或下个窗口。7.取消:通过该按钮,可取消当前程序步骤(数据或图像采集索引)8.帮助:显示帮助文件

二、创建任务
1.创建一个新的计划任务
通常不通过选择计划任务菜单中的创建新任务而建立一个新的(空的)计划任务,而使用安装的系统默认计划任务,而取代创建新的计划任务。因为使用系统默认的计划任务作为模板,能使你利用现有的校准(照相机、底座、反射体。,仅仅需要删除无用的项目。具体步骤如下:
点击打开系统默认的计划任务("Project""Open...",然后以其他文件名和/或文件保存"Project""Saveas..."
系统默认的计划任务至少包含以下项目:

为了创建新的计划任务,需要对目标文件夹有写入许可权。而且,系统默认计划任务不能被改变,因为它是处于默认写保护的。
2.设置计划任务属性
在计划任务名称上双击,出现"Project..."对话框这个对话框包含三部分:



1General:概述
在这部分,你可以插入诸如操作者、日期、位置等注解。2Instrument:工具
在此部分,为了确保通讯,必须设定连接端口。有不同的连接的端口a.b.
命令端口‖――用于控制和设置驱动器
数据端口‖――用于将数据从驱动器上转移到PC机上。
如果改变任何一个端口,则需要点击选中它,并在出现的可选端口对话框中进行选择。

首先选择连续&平行网络,以确定基本的连接方式。
当选择了连续&平行连接时,需要选择连续端口COMx,波特率(默认为19200)和平行端口RiPTx
当选择网络连接时,需要填写驱动器的IP地址,安装端口并显示个人信息。连接类型
命令端口
数据端口
平行的(i.e.RiPT0,LPT1,...TCP(192.168.0.???,Port:20001
直接连接(联系和/或平行联系的(i.e.COM1,19200Baud网络连接(TCP
TCP(192.168.0.???,Port:20002
如果使用照相机,必须设置照相机的类型。3)关于计划任务
这部分提供了有关计划任务文件的位置和总尺寸等信息。
—————————————————————————————————————坐标系统
RiSCANPRO有不同的坐标系统,最重要的坐标系统描述如下:
扫描仪自身坐标系统(SOCS,是扫描仪交付它的原始数据时的坐标系统。可参考用户手册中有关坐标系统的定义解说。每一个RIEGL3D激光图像传感器数据,都包含每次激光测量的几何信息(笛卡尔X.Y.Z坐标系或极坐标r,,和附加描述(至少强度、可选择的



色彩信息)。如此,RIEGL3D激光图像传感器输出的数据,才能在扫描仪自身坐标系中,建立一个包含附加顶点描述的(有组织的)点云。
计划任务坐标系(PRCS,是一个由用户定义的,对扫描位置上已存坐标系统进行示例的简单坐标系。RiSCANPRO要求在这个计划任务坐标系中的所有几何数据,都能通过单精度的数字(7个重要数字)来进行描述。例如:要求是mm精度,最大的坐标系不超过1Km(=1000m
全球坐标系统(GLCS,是一个内含计划任务坐标系统的坐标系统。通常,在球形系统中,坐标系统能包含超大规模的数字。照相机坐标系统CMCS是安装在扫描仪顶部的,用以采集高分辨率图像的照相机的坐标系统。

以下草图显示的是一个包含GLCSPRCSSOCS坐标系统的案例。目标是一个鸟瞰的建筑物。计划任务坐标系统,是一个以平行于建筑物中心的ypr为轴,建筑物的一个角落PRCS原点的坐标系。PRCS只能建成一个向右的系统。在案例中GLCS是一个向左的系统,例如向北朝东上升。许多用以设立扫描仪进行数据采集的扫描位置,通过spi进行了显示(请参见下面有关扫描位置的详细描述)。每个扫描位置都有它自己的,通过xsp1,ysp1,zsp1标识的局部坐标系统SOCS

———————————————————————————————————————
扫描位置差不多所有应用数据的采集,都需要在不同的位置进行扫描,以期得到建立一个没有缺口或扫描阴影的目标表面所需要的所有数据。不同的扫描区域就作为扫描位置。当开始一个新的计划任务时,例如,开始一个新的数据采集活动,在通过扫描仪进行数据采集前,须先设置一个新的扫描位置(系统默认为ScanPos01。这个扫描位置将保存包含扫描仪详细设置的所有采集数据。



一个扫描位置,是通过它自身的局部坐标系统SOCS来进行描述的。例如,在计划任务坐标系统中的扫描仪位置和方位。位置和方位通常能使用6个参数(3给位置参数,3个旋转参数)或通过一个变换矩阵来进行描述。RiSCANPRO采用一个4×4的矩阵MSOP来表SOP信息(SOP表示传感器的方位和位置)

矩阵包含9个反映旋转的参数(r11r333个变换参数(t1t3。齐次坐标的使用,可以实现单一矩阵中的旋转和变换计算。转换向量就是扫描仪的位置,而且列向量(r1ir2ir3iT就是在PRCS中的局部坐标轴方向。在齐次坐标中的一个3D数据点,可以通过它的3D坐标xyz来进行描述。

注意:改变特定区域的扫描仪方位,就需要使用一个新的扫描位置,除非扫描仪位置没有改变。
每个扫描位置保存这个扫描位置上的所有扫描数据,以扫描仪的二进制数据格式3dd展名进行储存。此外,每个扫描位置包含它的SOP信息。为了将来自扫描仪自身坐标系统SOCS的数据,变换成计划任务坐标系中的数据点,只需要简单的乘上扫描位置的SOPMSOP就可以实现。
可能一个数据点P需要从一个特定扫描位置转换到球形坐标系中,首先需要乘以扫描位MSOP矩阵,而变换到计划任务坐标系中,然后再乘上MPOP矩阵,从计划任务坐标系中再变换到球形坐标系中。

———————————————————————————————————————
3.创建一个新的扫描位置创建一个新的扫描位置,只需要在"Scans"文件夹上点击右键,并选择"Newscanposition"(新的扫描位置)。这个创建的新扫描位置缺省命名为"ScanPosXX",此处的"XX"是一个特定的数字,可以直接输入新名字,也可以通过在扫描位置点击右键并选择"Rename",就可以对扫描位置进行重命名,并且可以赋予它一个包括重要信息的名字。

通过后视来计算方位和位置



你可以通过此项工具,利用一个众所周知的确定点和一个细微目标的坐标系来注册扫描位置。
在操作前,需要先设置扫描仪,确保扫描仪是水平放置的,并且已正确设置了通讯参数,打开想获取的扫描位置,SOP点击右键从菜单上选择后视方位("Backsightingorientation"
利用出现的引导窗口,完成以下步骤:
第一步:在第一页,你需要在全球坐标系中填写扫描仪自身的位置,如果你使用固定在扫描仪上的GPS你可以通过点击从文件读取的按钮"Readfromfile"从一个*.uda格式文件(格式:"Name,X,Y,Z"名称:X,Y,Z,导入坐标系统。打开*.uda格式文件,并从目录上选择一个保存位置。
设备高度("Instrumentheight":插入在地面点和激光束发射口间的垂直偏移,并在扫描仪标题上标示处理。
第二步:在第二页你需要确定如何扫描仪:通过细微目标"viaremoteobject"对北方"againstnorth"。如果选择通过细微目标需要在球形坐标系统中填写细微目标的坐标(这同样可参照第一步中,从*.uda文件中导入GPS数据。)如果选择正对北方需要正对北方排列扫描仪(参考下一步)
第三步:在第三页,你需要排列扫描仪。转动扫描仪,直到细微目标进入望远镜中或点对应北方。为此,你需要使用本页的按钮。单击向左转"Turnleft"向右转"Turnright",将可使扫描仪开始转动。通过点击停止转动来使其停止。另外,你也可以通过键盘上的"A""D"进行向左和向右的转动。扫描仪运动的距离,取决于你安住按钮的时间。
通过使用滑动条来调节画面速度(向左意味着减速,向右意味着加速)。在扫描仪排列以后,通过点击采集来自驱动器的角度按钮("Getanglefromdevice",来从扫描仪读取Φ角。(采用正北向角("Northingangle")时,在每次移动后,不需要调整视场。
第四步:在第四页,你会看到相对一个给定数据的摘要和计算矩阵。
为了真正的将矩阵写入扫描位置的SOP中,需要点击设置SOP"SetSOP"。在矩阵写入SOP前,RiSCANPRO将检查是否有对POP矩阵进行修正的必要。如果你提示要求对这些数值进行确认,SOP将依照新的POP进行修正。

4.采集一个扫描
在采集一个新的扫描前,需要确保驱动器正确连接、开关打开和通讯端口设置正确。第一次扫描(一般、全景。第一步,在一个扫描位置上点击右键,打开"Newscan"对话框,并选择"Newsinglescan...""Newscansequence..."得到一个扫描次序。现在,你可以任意选择一个默认的扫描模式或完全的配置扫描,并通过点击[OK]而开始采集程序。
细节扫描(一般扫描或全景扫描的)
在一个已存扫描位置上点击右键,打开"Newscan"对话框,并选择"Newscan...""Newscansequence..."得到一个扫描次序,然后进行一个细节扫描。
点击登陆扫描对话框(需要花费数秒)。在这个扫描中,你可以通过按住ALT键而定义一个矩形窗口,按住鼠标左键并移动鼠标,矩形框将自动定义新扫描的开始角和结束角。后,通过点击[OK]运行采集程序。

"Newscan"新扫描对话框
通过这个对话框,你可以配置设备并开始一个新扫描采集。在一个扫描位置(ScanPos或一个已存在的扫描上点击右键,打开对话框,选择"Newscan"



"Newscansequence..."得到一个扫描次序。

Additionalforscansequences扫描次序附加信息

有三种扫描模式
1Continousbidirectional:连续双向扫描―――扫描仪在两个方向上扫描;2Triggeredunidirectional:触发单向扫描―――扫描仪仅在一个方向上扫描;3Triggeredbidirectional触发双向扫描―――通过软件控制,扫描仪在两个方向上扫描。
Framecount:帧数―――你希望扫描的帧数
当这个对话框显示时,RiSCANPRO将尝试和设备进行联系并请求个别设定。

在这个程序运行期间,不可以进行改变(灰色――表示输入区域被锁定。)仅可以通过点击[CANCEL]来关闭对话框(不再运行扫描)
当这个程序运行成功时,输入区域显示解锁(显示白色)。现在,你可以进行扫描设定



配置了。如果没有任何设备通讯连接,输入区域将被锁定并显示错误信息。

对话框可分解成四部分:
1)概述:在这部分,你能够插入诸如操作者、日期、地点等等注解。2)设备设置部分
该部分提供了一个包含设备数个延伸设置信息的树型显示。对设备进行几项设置和有多少设置是有效的,取决于你对设备的使用。
Sheet"Scannerconfiguration":扫描仪配置
在右面有用于两种默认的扫描模式一般全景的按钮。
通过这个按钮,你能够快捷容易的对扫描进行配置,因为所有的数值都是自动设置的,并对应于默认的扫描模式。
你也可以自己设定扫描仪的参数。
通过"Beamfocus"组合框,设定电子束的焦距。可以选择"Infinite"无穷大或自己设置电子束焦距。那意味着你能够通过输入一个距离来设定焦距,实现对电子束焦距组合框的编辑。

通过选择在线显示,你可以观察扫描程序运行情况它们由三部分组成:
―――在线显示没有打开,处于关闭



2D显示―――打开一个在线2D显示;3D显示―――打开一个在线3D显示;

在右角落,你可以看到下个扫描的许多附加信息
...numberofmeasurementsperline每根线上的测量点数目...numberoflinesperframe每个面上所含线的数目...numberofmeaspoints测量点数目...estimatedtime估计时间
...serialnumberofscannerdevice扫描仪驱动器序列号


...setsthelaserratetothemaximum设置最大激光频率
...opensa3D-Viewwindow,whenstartscanning当开始扫描时打开一个3D显示窗口
Sheet"Headerinformation":标题信息(仅仅当选择属性时才可用),这部分是给出接受来自设备数据的标题信息。
Data-headerexample:数据标题示例:




Defaultscanpattern:默认的扫描模式。在"Scannerconfiguration"扫描仪配置中的"Newscan"新扫描对话框中,有两个默认的可用扫描模式:全景扫描和一般扫描。
通过"Loaduserdefined"加载用户设置和"Saveuserdefined"保持用户设置按钮,用户能保(Project/COLLECTIONS/CONFIGS

通过点击其中一个默认扫描模式或加载一个用户定义扫描模式,来选择一个扫描模式。所有对应于选定的扫描模式的数值都将被写入对话框的输入箱中。
注意:通过选择一个默认扫描模式,将新的扫描象扫描模式一样进行命名
Scanpatternselected

Scanname


OverviewPanoramauserdefined
XYZ是一个特定的数值,自动生成。
可选择的扫描模式一般扫描全景扫描用户定义
Functionsforscansequences:扫描序列函数
OverviewXYZPanoramaXYZScanXYZ扫描名称OverviewXYZPanoramaXYZScanXYZ
一个扫描序列(在一个扫描序列上右键点击)的主题菜单,提供两个附加函数。
计算平均:计算所有扫描帧的平均,并在计划任务结构中创建一个新的扫描(同样的扫描位置作为扫描系列的)
Computelasttarget:计算最终目标
Embeddingimagesintotheproject:在计划任务中插入图像。RIEGL3D图像传感器,通过安装一个可选择的高分辨率数码相机。这些图像将被用于向云点数据附加色彩或用于向网格表面进行纹理粘贴。
为了确保图像数据精度,照相机固有参数数据应该是有效的。校准的数据被保存在计划任务文件的校准部分中。照相机焦距的一-设定和使用光圈的校准数据,可用于每个使用的照相机。我们公司使用的数码相机型号为NIKOND2X
RiSCANPRO可接受两种不同类型的图像:照相机被稳固的固定在扫描仪上时所采集的图像(图像类型Image@ScanPostion和照相机没有被固定在扫描仪上时所采集的图像(图像类型Image@ProjectLevel。第一种图像类型将被相对于一个具体扫描位置进行指定。对应每幅图像,相对一个参考方位,RiSCANPRO将在扫描仪自身坐标系统中的照相机方位信息,储存在一个转换矩阵COP中。此外,相对于参考方位,一个底座矩阵将有效的从SOCS系统中转换到CMCS中。这个信息同样被保存在校准部分的底座校准中。每当照相机的底座被重新安装时,都必须进行校准。为了将图像中的像素转换成PRCS/GLCS中的光线,必须进行下面的转换:
1)利用照相机内在的参数进行对应的不失真扭曲;2)逆向透视投影,以在CMCS中得到一条光线;
3)通过乘以(mountingmatrix-1[(底座矩阵-1]COP将光线转换到SOCS
4通过乘以SOP将光线转换到PRCS并且如果需要乘以POP可转换到GLCS中。
对于第二种图像类型(Image@ProjectLevel,有一个单一的转换矩阵COP,其储存有从照相机坐标系统转换到计划任务坐标系统的转换信息。为了将图像中的像素转换成PRCS/GLCS中的光线,必须进行下面的转换:
1)利用照相机内在的参数进行对应的不失真扭曲;
2)逆向透视投影,以在CMCS中得到一条光线;
3通过乘以COP将光线转换到PRCS并且如果需要乘以POP可转换到GLCS中。
为了在GLCS中以3D方式建立一个图像点,需要进行以下后续处理:
对于Image@ScanPostion1)乘以POP-1将点转换到PRCS2)乘以SOP-1将点转换到SOCS3)乘以COP-1并乘以底座矩阵,将点转换到CMCS
执行透视投影以得到像素坐标



利用照相机内在参数在像素坐标中,执行不失真到失真的转换。
对于Image@ProjectLevel1)乘以POP-1将点转换到PRCS2)乘以COP-1点转换到CMCS
执行透视投影以得到像素坐标
利用照相机内在参数在像素坐标中,执行不失真到失真的转换。

5.Imageacquisition:图像获取
1)单一图像的获取
通过RiSCANPRO进行拍照的方法:在扫描位置上点击右键或在"IMAGES"图像文件夹上点击右键,打开选择"Newsingleimage..."新的单一图像,可进行拍照。
显示的对话框包含以下信息。
General在本页,你能够输入关于图片的有关主题,如:位置、日期和照相机设定。Calibrations:校准。在该页,你可以对照相机校准进行选择(依照照相机和规格),以及底座校准(仅仅对一个扫描位置上的图像有效)
Position&Orientation:位置和方位
Summery:概述。本页将保存采集中诸如尺寸、色彩深度和分辨率等图像信息。最后点击OK,图像将被采集并保存在计划任务结构中。2)多图像的获取
Snapshotsofascan一个扫描中快照。借助于这项功能,你可以采集覆盖一个给定区域的一系列照片。在这个程序运行期间,数码相机是被固定在扫描仪上的,并且扫描仪从一个快拍位置转向下一个位置。在每个快拍位置,扫描仪将停止并由数码相机采集一张照片。Startingtheprocess:通过在一个扫描或一个扫描位置上点击右键,并从菜单上选择图像采集"Imageacquisition...",而开始运行图像采集程序。
将显示以下对话框:




ANGLE:角度。你可以通过编辑开始角度和结束角度,而对照片覆盖区域进行调整。交迭因数表示每幅图像需要交迭的百分数(系统默认值为10%
必需照片所显示的是,为了覆盖整个区域,需要拍摄的照片数量。注意:当你改变角度、交迭因数或照相机校准时,这个值不会重新计算。需要重新计算,只要点击"Picturesneeded"必需照片数,将显示正确的照片数量。

CALIBRATION:校准
在这个区域,可依据照相机拍摄的目标和使用的底座,进行照相机和底座校准设定。
TARGETFILE:目标文件。这是储存图片的前缀(自动生成,除非编辑)示例:来自上面案例中的图片将被储存命名为以下ScanPos01-Scan001-Image1ScanPos01-Scan001-Image2ScanPos01-Scan001-Image3
ScanPos01-Scan001-Image4
最后,开始图像采集,只需要点击OK按钮。
6.数据的可视化
RiSCANPro可以以2D图像或3D图像对.3dd数据文件进行显示。
2D显示中,角坐标数据(扫描角的极性和方位)是被忽略的,并且依据3dd数据设定索引,放置到图像光栅中进行测量。像素色彩通过射程、高度、强度、真彩色或类似信息来决定。
3D显示中,使用了全部几何信息。一个3dd数据就对应于一个点云,在3D中每一个测量都被描述为一个空间点。点的色彩的可视性取决于它的射程、高度、强度或类似信息。借助于三角网显示,一个点云的组成结构能以一个简单三角测量方式显示出来。图像是彩色的。在所有图像中的所有像结点目录中的像结点都能显示出来。而在2D图像和照相机图像中,是作为结构标识点的。3D中的像结点是用于对3D目标结构的显示,例如,球形。
为了在3D中同时显示数种扫描数据,可采用联合显示。这种显示可对来自许多扫描位置的采集数据进行检查,前提要确保对研究目标的数据覆盖是充分的。
通常选择2D3D显示,可在想得到的扫描上进行双击(或点击右键并选择显示"View..."
将出现以下关于显示类型的选择对话框:




2D显示
2D显示的几种可用显示类型:
Viewtype显示类型Falsecolor虚拟色彩


Intensity强度


Reflectivity反射率


Truecolor真彩色

Sub-viewtype次要显示类型Height高度HeightIntensity高度强度Range射程RangeIntensity射程强度Direct直接反射Histogram组合反射Scaled漫反射Direct直接反射Histogram组合反射Scaled漫反射Histogram组合型Linearscaled线性漫反射
Comment注解

Logscaled等份漫反射
在一个2D显示中,以下的快捷键是有效的。

属性菜单




有关放大缩小和旋转等功能的这里不在介绍,相信大家已经明白。Viewtype...:显示类型。用于打开显示类型属性框。
Fastswitchingto3D-View:快速切换到3D显示。用于改变切换到对应的3D显示。
显示TPL

通过此菜单,可对一个像结点目录中的像结点进行显示的切换或关闭操作。如果"ShowTPLxxxx"显示的是灰色,表示在这个像结点目录中没有任何像结点,或者相对于这个显示该像结点不可用。"Hideall",将隐藏切断所有可显示的像结点。
为将所有像结点连接到一起,你可以通过在图像上任意地方点击右键来选择它们,并从菜单选择连接像结点("Linktiepointstogether"

3D显示
3D显示的几种可用显示类型
Viewtype显示类型Falsecolor虚拟色彩


Intensity强度


Simple普通简单Truecolor真彩色

Sub-viewtype次要显示类型Height高度HeightIntensity高度强度Range射程RangeIntensity射程强度Direct直接反射Histogram组合反射Scaled漫反射Simple普通简单Histogram组合型Linearscaled线性漫反射Logscaled等份漫反射
Comment注解

3D显示中的设置
在一个3D显示中,以下的快捷键是有效的。




:改变显示类型。用于打开显示类型属性框。

:快速切换到2D显示
,用于改变切换到对应的3D显示。
:打开属性菜单。当你点击属性按钮旁边的箭头时,将打开并显示属性菜单。

"Color":色彩菜单。在这个菜单中,包括以下色彩:

1Pickpointcolor:所选点的色彩2Backgroundcolor:背景色彩3Pointcolor:点的色彩
4Boundingboxcolor:弹出框色彩
5Meshcolor(onlyavailableintrianglemode:网孔色彩(仅仅在三角测量模式下运行)




"Mode"menu模型菜单

如果选中多色彩模型"Multicolormode",点将以它们对应的颜色进行显示(需要结合显示类型)另外,也可以运行你通过在色彩菜单"Colormenu"中定义的点色彩"Pointcolor"
如果选中三角测量模型"Trianglemode"点将显示三角测量(当显示类型是简单的或2D模型时,该选项无效。
如果选中2D模型"2Dmode",点将在一个面上进行显示。
如果选中2D三角测量模型"Trianglemode2D",点将以三角测量的方式进行显示(但仅仅在2D模型"2Dmode"下可用)

"View"menu显示菜单

通过这个菜单,你可以改变照相机显示:Birdview:鸟瞰


Frontview前视显示Backview后视显示
Leftview左视显示Rightview右视显示
Scannerview扫描仪显示(在扫描仪后面的视点是正确的)
"Options"menu选项菜单





"Pickpointsize"...选择点的尺寸"Pickpointsize"...改变选择点的尺寸"Pointsize"...点的大小...改变点的尺寸("P"+鼠标中间键
"Smoothpoints"...平滑点"Smoothpoints"...为了更好的观看
静态和动态分频器"Staticanddynamicdevider"...通过设定分频器,可以大量减少点云显示的数量。

静态分频器"Staticdivider"...改变静态分频器,在3D场景没有改变时进行设定改变。动态分频器"Dynamicdivider"...改变动态分频器,3D场景发生诸如移动或放缩改变时,进行设定改变。
去除阴影"Cullbackface"...去除三角测量后面阴影(仅仅在三角测量模型下可用网孔显示"Showmesh"...显示三角测量网(仅仅在三角测量模型下可用
平面模型"Flatmode"...以平面模型来显示三角测量
显示3D扫描仪"Show3D-Scanner"...显示或隐藏一个扫描仪的3D模型:
显示反射体"Showreflectors"...显示或隐藏"TPL_SOCS"的反射体。
显示PRCS中的反射体"ShowreflectorsPRCS"...显示或隐藏"TPL_PRCS"的反射体。
校正反射体"Updatereflectors"..."TPL_SOCS""TPL_PRCS"中校正反射体。
显示弹出框"Showboundingbox"...显示或隐藏点云的弹出框。显示点云"Showpointcloud"...显示或隐藏点云。
"Camera"menu照相机菜单




焦距"FocalLength"...改变照相机焦距。
场景比例"SceneScale"...改变3D场景的场景比例。视场深度"DepthofView"...改变照相机视场的深度。位置"Position"...改变照相机位置。
正视图"Orthogonal"...在透视图和正视图间切换。
"Grid"menu栅格菜单(仅仅可运行在正视图模型中)

栅格色彩"Gridcolor"...改变栅格色彩。栅格尺寸"Gridsize"...改变栅格尺寸。关闭"Turnoff"...显示或隐藏栅格。
"Viewport"menu可视区菜单

保存可视区"Saveviewport"...保存当前的可视区应用可视区"Applyviewport"...应用选定的可视区。




Unionview组合显示
在组合显示属性中,除了像结点扫描外,其他计划任务的所有可用扫描都将在扫描"SCANS"box)中列出。你可以通过点击左边的控制盒,来选择或不选数个扫描。也可很容易的对所选择的每个扫描附加一种指定色彩。
通过显示类型盒来选择显示类型。
通过点击"Showminimum/maximum"显示最小/最大按钮,对应的值将在正文框中显示出来。
当你点击"Octreefiltered"反向树型过滤时,将弹出一个窗口
Octreefiltering:反向树型过滤
反向树型过滤是用于处理点云数据,尤其是为了改善精度和减少数据量,用来平均点的子集。通常,点云是通过融合许多不同点云而形成的。
在采集过程中,表面射程的改变,将直接改变目标表面的点密度。
处理将根据储存在反向树型结构中的所有数据。Octree的基本单元是一个被选择尺寸的立方体。
Octree的深度,即标准标识,是通过立方体的尺寸和体积分析范围来确定的。其中也可以通过用户或根据点云自身的最大范围来进行范围的确定。

通过以下次序进行平均:1)在octree结构内的所有点;2)对一个立方体内的所有点进行平均。

在建立octree后,一个立方体包含一个点,这个平均点的重心可用来描述常规非常多的点。
可通过"toall"按钮来提高增量。


2D显示中的设置



扫描数据重采样
基本概述
RIEGL激光扫描仪的扫描数据,在绝大多数情况下都是以一个组织点来保存的。已获得的扫描数据将继续以或多或少的规则栅格,存储到到一个分别以极角和方位角表示的面上。这个采集的数据也能够在方位上进行逐行记录,也可在一条线的极向上进行逐点测量(比较下面图表的左面)


对一个扫描进行再次取样,在面上将创建一个新的栅格。栅格的范围将通过对其中的一个原始扫描进行再次取样来进行定义。栅格的分辨率由用户通过一个对话框进行定义。在进行再次取样处理过程中,在栅格其中的一个单元中所有范围和强度的数据将因平均而降低(如下图中的红色点)。有关平均的不同选项和影响参数,将在下面进行详细探讨。再次取样的结果是,以一个在平面内,以确定规格的栅格来表示的D数据格式(比较上图的右面)

在下面的例子中,扫描数据重采样有以下优点:
通过对一个扫描次序或同一扫描位置进行的许多次扫描进行再次取样,降低了范围和强度的噪音。音。

通过采用一个更低扫描分辨率对单一扫描进行再次取样,降低了范围和强度的噪对一个扫描序列中暂时移动对象进行清除,如公路上的移动汽车。

控制的平均处理
在再次取样处理过程中,在执行范围和强度平均之前,每个栅格单元都包含许多的测量数据。下面的图片显示说明,对于一个特定的栅格单元,有三种不同的范围分配。无论最终的单元是否拥有正确的范围,通过对标准偏差和极限的比较是可以判断的。在案例一中,有范围数据都分布在一个平均范围附近,标准偏差很低。在案例二中,所有范围数据分布在一个相当广的范围内,给定的标准偏差非常大。大偏差数据可能引起的原因是测量中因行人



走动而造成的。在案例三中,通过每个很低的变化,形成两个清楚的范围。

通过选择去除范围附近的信号("removenearrangecluttersignals")选项,并对极限在选/平均/再次取样进行定义,实现对平均过程的控制。

仅仅最后目标"lasttargetonly")关闭
在这个案例中,结合每个单元的所有范围数据的标准偏差,是通过计算并和极限数值进行比较的。可能偏差远远小于极限,单元中的范围将得到正确设定,并趋向于平均范围。上面案例所描述的,仅仅在案例一中,可得到一个适当的范围。

仅仅最后目标"lasttargetonly")打开
该模式允许去除混乱的范围信号。在这个案例中,仅当范围值比最大范围值减去5倍的极限值大得多时,可考虑标准偏差和平均。在上面的案例一和三所描述的,给出了正确范围。

如果你想对一个或多个扫描进行再次取样并标识,点击右键,从菜单中选择再次取样"Resample..."
如果你决定对一个以上的扫描进行再次取样,你需要定义基本扫描。那意味着,这个扫描将用于调整再次取样的参数和尺寸(角度范围)






下一步是设置再次取样参数(如上面所描述)

你可以使用"="按钮,来设置输出分辨率等于扫描分辨率。

3D显示中的过滤模式
本主题探讨:从扫描位置打开一个3D显示图,如何进行过滤模式操作的介绍。这个过滤是在点云前,设置一个2D过滤面具。
在过滤模式里,你可以选择一个你希望进行过滤的区域。这就意味着,所有这些灰色标识的点将从云点中隔离。

有三种方法可进行选择:矩形rectangle...

;圆circle........;多边形polyline....



反向选择:
当选择了一个区域时,就可以运行这种选择新的点云目标。
,现在点云将被过滤,并且将创建一个


点云
点云文件夹包含数个点云,包括在3D显示中通过过滤模式创建的点云。在点云显示状态下,你也可以进行过滤选择。

如果选择的过滤,点云将被过滤,并且通过当前显示进行显示过滤的实际图像。但如果发现过滤操作错误,可以通过撤销最后一步操作而进行恢复(该操作仅仅可在点云显示中运行)






7.反射体提取(从扫描中)
这项功能可以提取一个扫描中所有后反射的目标,并将它们写入对应的像结点中。提取反射体可通过在一个扫描上点击右键,并选择发现反射体"Findreflectors..."来进行操作。将出现以下对话框:



数值描述
Autosensitivity:自动灵敏度。范围:01,默认值:0.5
内涵:算法的灵敏度。一个较高的数值意味着更多的反射体将被发现。需要慎重设置这个数值。当采取高灵敏度时,程序将需要耗费更多的时间(依赖于扫描的尺寸),并且肯定会探测到许多错误的目标。
注意:仅仅当选择运行自动极限"useauto-threshold"时才是可用的。

Thresholddetection:极限探测。范围:01,默认值:0.85
内涵:仅仅当目标具有很高的反射强度,并超过此值时,才能被认为反射体。注意:仅仅当没有选择运行自动极限"useauto-threshold"时才是可用的。


Thresholdcalculation:极限计算。范围:01,默认值:0.10内涵:用于确定一个已知反射体的中心。

useauto-threshold使用自动极限。可在极限探测计算和人工输入极限探测间进行切换。suppresssinglepixels:忽视单个像素:仅仅由单一像素描述的目标,将被忽略。

freerunninglaser自由运行激光当一个扫描仪要求在自运行激光"free-runninglaser"下扫描时,需选定这个框。

nameprefix像素名称。结合这个像素开始的像结点名称。




namepostfix:反射体名称后缀

Indexoffset偏移索引范围:最小为0
像结点的数值将由这个数值开始。这个数值是自动设置的,从第一个没有使用的数字开始,但是用户可用进行改变。


Formatwidth:格式宽度。范围:1-20,默认:3。数字用于对像结点进行命名处理。
Namepreview:名称预览。根据当前命名设置格式,将产生一个像结点名称的示例显示。

Reflectorextraction(Image:图像中的反射体提取。这项功能可以提取一个图像中所有后反射的目标,并将它们写入对应的像结点中。
提取一个图像的反射体,需要计算照相机底座或进行照相机校准。
提取反射体可通过在一个图像上点击右键,并选择发现反射体"Findreflectors..."来进行操作。将出现以下对话框:

数值描述
Thresholddetection:极限探测。范围:01,默认值:0.85
内涵:仅仅当目标具有很高的反射强度,并超过此值时,才能被认为反射体。
Extractionrange:提取范围。可用在反射体探测中进行范围选择。当图像中存在许多类似于反射体的光斑时,该选项非常有用。

默认的提取范围是整个图像。因此,状态是没有任何限制的,并且所选择的像素点是图



像的所有像素点。

选择范围,只需要点击在从图像上"SelectfromImage..."选择。将隐藏对话框和显示图片。现在,你可用进行自己的选择了。

矩形选择:按住"ALT"键和鼠标左键,并移动鼠标以绘制矩形窗口。

在你完成选择后,点击鼠标右键,并返回到提取反射体"ReflectorExtraction..."对话框。通过点击OK,仅仅对选择范围内的反射体进行探测。


3D数据输出
1)文本输出
输出一个特定扫描或一个运动格式的数据,只需要在其上点击右键,并从菜单中选择输出。将显示下面的对话框:


从对话框顶上的目录栏选择希望输出的格式:ASCII二进制码Crystalix格式。在完成输出格式的配置后点击OK按钮,将出现一个文件选择对话框。加载你希望输出的文件和文件名称,并点击OK按钮。ASCII




对话框由以下几部分组成。Select&sort:选择&类别
在这部分,你可以选择你将要输出的数据类型(选中的项目)和不希望输出的(为选中的项目)改变数据输出的次序,仅仅需要在点击对应的项目,并点击两个箭头中的一个。所选择的项目将根据按住的按钮从一个位置向上或向下移动。另外一种方法,是通过鼠标,将鼠标指针停留在其上并按住左键以抓住对象,然后通过鼠标移动,从一个位置移向另一个,然后松开鼠标左键。

Generalsettings:总体设置Writeheader:书写标题。将使程序增加一行来显示输出数据的名称(例如:名称,X,Y,Z"Name,X,Y,Z"

Columnseparator:柱状分离。这个操作或更多操作,将可以在柱状体间插入。
Coodinatesystem::坐标系统。此处你可以选择以哪中坐标系统中的坐标进行输出。



忽略x,y,z=0的行:如果选择了此项,没有坐标的线条将被消除(例如:测量错误的)
Precision:精度。在此部分,你可以选择输出诸如:笛卡尔坐标、极坐标强度或RGB数值的精度(十进制后的数字)。输入区域的激活依赖于在选择&类别(Select&Sort)中所选择的数据。

Units:单位。在此,你可以选择输出数值(射程或角度)的单位。输入区域的激活依赖于在选择&类别(Select&Sort)中所选择的数据。

Valuerange:范围值。通过此,可选择强度或RGB数据的范围。输入区域的激活依赖于在选择&类别(Select&Sort)中所选择的数据。

Crystalix格式

Generalsettings:总体设置
坐标系统。此处你可以选择以哪种坐标系统中的坐标进行输出。
忽略x,y,z=0的行。如果选择了此项,没有坐标的线条将被消除(例如:测量错误的)
注意:推荐输出数据量大约为每1000个点输出50-70个,即:5%-7%(perglass-cube
TrueOrthophoto:真正的正射。这是一个添加的模块,以使用户能根据扫描数据和图像数据,建立真正的正射影像。附加模块,同样在计划任务坐标系统中,向正射的图像数据提供了深度信息和方位信息。附加的信息以一个文件格式,保存在一个单独文件中,可在CAD应用软件中用于构建3D正射影像。

可以通过深度信息和使用的扫描图像来,对正射图像的方位、位置、分辨率和截面尺寸进行定义。

StepbyStepdescription:逐步表述
1UndistoringImages未失真图像
正射影像的建立是根据扫描数据的几何信息和图像数据。在图像信息被应用之前,图像应该是没有失真的。因此,第一步就是,对计划用于正射的扫描数据,所对应的扫描位置的失真快照进行不失真处理。为了进行该操作,选择你希望进行不失真处理的扫描位置图像scan-pos-images,在其中一个图像上点击右键。



从菜单上选择不失真处理("undistort"。现在,通过指定的照相机和底座校准,对所有选择的图像,进行不失真处理。(需要花费一些时间。
在当前扫描位置,不失真图像将被保存在不失真图像"UNDISTORTEDIMAGES"文件夹中。
注意:如果你调整了照相机或底座校准中的任何一个,已经实现不失真处理的图像将全部是无效的,你需要重新运行不失真处理。
2Creatingmesheddata:创建网孔数据
对来自你计划建立正射的特定扫描数据,建立一个特定的三角测量网。在你想进行三角测量的扫描上点击右键,并从菜单中选择建立特定三角网"Createsinglemesh"将对扫描("SINGLEMESHES"
3Texturingthemesh网孔纹理。
对一个网孔附加纹理,需要一个纹理网孔和需要附加纹理的网孔的每一点的纹理坐标。为了对网孔附加纹理,需要在一个特定网孔上点击右键,并选择纹理操作("Texture..."需要用不失真图像来建立纹理。(参见第一步)。选择图像并点击OK,以开始运行纹理处理程序。纹理处理需要耗费很多的时间。
4CreatingtheTrueOrthophoto:创建真彩色正射影像
为创建一个正射图像,先打开计划任务结构下的目标文件夹("OBJECTS",在正射文件("ORTHOPHOTOS")上点击右键,从菜单上选择新的正射影像("Neworthophoto..."出现的对话框将包含以下几步:
a.在对话框的第一页,你可以选择用于正射的网孔。选择完成后点击下一步("Nextstep>>"。网孔将被加载并显示。
b.选择数据的显示方式(三角测量/点云,真彩色/特定色彩,所选择点的色彩/所定义面的色彩)
c.选择用于定义计划投影平面的点。通过点击加载平面("Loadplane",来加载一个事先保存的平面,并将此平面用作计划投影平面。用于建立正射影像的照相机将被定位于那个平面的中心,并且其方向相对于面的法线反向平行。
在选择平面内的点时,通过点击选择模式("Selectionmode")或按住"S"键来切换选择模式。该模式是固定的(不可以进行放缩或选择操作)
选择点来构建一个范围:使用鼠标左键来设定范围的拐点,通过使用右键来确定范围区域。在确定范围后,可通过点击增加选择点("Addselectedpoints")或按住"A"键来向范围内增加点。注意:只要那些在确定深度内(通过分离值来定义的)的点才是可以选择和增加的。此外,为了在一个正面上选择大的区域,该正面相对于图像平面应该是平行的。
d.通过点击再次点击选择模式("Selectionmode")或按住"S"键来关闭选择模式。
确定方位
有三种不同的方位可供使用:
1)垂直方位:为了建立正面的正射图像,平面应该严格的平行于投影坐标系的Z轴。2水平方位:为了建立地板或天花顶的正射图像,面的法线应该行于投影坐标系的Z轴。需要对X轴进行定义
3)自由方位:在这个模式下,需要通过两个点(X1X2来定义X轴。为了进行此操作,点击定义第一个点X1并在3D场景中点击相应的点。按同样方式设定第二个点X2




最后,通过点击定义平面("Defineplane",来对投影平面进行计划。平面的位置、尺寸和方位将被计算出来,并显示平面。

以下是第三步的示例


e.只要编辑输入区域的平面宽带("Planewidth")和平面高度("Planeheight",并点击应用尺寸修改按钮就好("Applydimensionchanges"可通过使用指针按钮来改变平面的位置。通过在输入区域的附加常数("Additionalconstant")中输入,可以改变位置旧的偏移。每次你点击其中的一个指针按钮时,平面都将在选择的方向上发生移动。

最后,为了将来可再次用于其他的正射影像,可以保存此平面。只要点击保存平面"Saveplane"按钮并在出现的对话框中输入给平面起个名称(保存平面的使用,如同第三步所述)
F.定义最近和最远的平面。这个平面将平行于投影平面。在投影平面和最近平面之间,投影平面和最远平面之间,可以输入它们间在法线上的距离(法线方向)。仅仅当三个边缘全部介于最近和最远平面之间的三角形,才可用于正射。
此外,你可以修改所谓的画面外的分辨率("Offscreenresolution"。系统默认值为0.01意味着:所建立的正射影像的一个像素将被描述为一个厘米。注意:正射图像中的更小数值将被增大,并导致所需要的计算时间空前膨胀)

现在,RiSCANPRO已经获取了建立正射影像所需要的所有信息,因此可以点击建立正射影像("Createorthophoto")按钮了。




正射影像的建立需要花费的时间,取决于其尺寸的大小,将以"OrthoPhotoXYZ"名称保存到目标文件("OBJECTS")下的正射图像文件("ORTHOPHOTOS")夹中。(XYZ是一个联系数据

显示正射影像,只需要在其上双击。正射影像将以2D显示中图像方式打开,但是,当你在图像上移动鼠标时,在数据读出面板上将显示保存的坐标。

Calibrations:校准。
照相机的校准数据的获取:为了在RiSCANPRO中使用采集的图像数据,需要对使用的照相机进行校准。这些校准数据包括照相机自身的数据,例如:图像中的像素尺寸、镜头的焦距,以及照相机图像的中心。此外,你需要知晓每幅用于3D表面图像的每个像素色彩对应的照相机位置和方位。如果照相机被固定在扫描仪顶端,RiSCANPRO将自动生成方位和位置信息。相当于这个点的参数就是一个理想的针孔相机"pin-hole"。然而,实际中的镜头发生了严重的失真变形。RiSCANPRO中,通过6个参数来描述模型中的镜头失真。更详细信息请参见使用的照相机模式。
当照相机和扫描仪规则的连接时,照相机将传递校准信息。在RiSCANPRO(通常选择平面模板)中通过整合在一起的校准程序进行信息的获取。通过自己进行校准,需要一个选定的模板。这个模板要求相对于参照,要尽可能的平坦,尽可能的规则。在帮助目录下,你能发现一个pdf文件(选定板比例CheckboardScaled.pdf,给出了一个包含1115行的选定模板。

为了校准,我们提供了一块纵向宽度是100mm1.5×1.1m的面板。
但是,请注意以下内容:
内在照相机的校准参数依靠以下因素:自身镜头(即使是同样类型的镜头,其参数也不一定相同);设定的焦距;设定的光圈。

因此,在进行校准前,推荐按如下方式来设定照相机的焦距和光圈。设定的焦距取决于



照相机将要使用的距离。请注意:对于焦距一般都是一个有限的深度,过大或过高的焦距会使光圈关闭。
当我们可以接受0.25像素的清晰度时,我们需要对焦距进行如下设置:
b=4f²/(dxa
f镜头的焦距,以m表示dx-像素尺寸,以m表示
a-镜头光圈。
假如当射程从b/2到无穷远,可以得到高清晰的图像。举例:dx=7.8µm,f=14mm,a=9,b=11m则实际射程将从5.5m到无穷远。
外部照相机校准参数,特别是照相机被固定在扫描仪顶端时的方位,在撤离和安装后都发生了改变,必须校准。为了解决这些改变,需要对底座进行校准。

Cameramodelused:照相机使用模式
RiSCANPRO使用的照相机模式,类似于使用Intel提供的打开源程序图像库"OpenSourceComputerVisionLibrary"(参见:http://www.intel.com/research/mrl/research/opencv/fordetails
校准参数定义的照相机模式(固有和内在参数)RiSCANPRO默认储存在到树型节点CamCalib_OpenCV01下。一个完全的照相机模式,包括通常的外部校准参数,用来在3D空间定义照相机的方位和位置。这些信息将被储存在RiSCANPRO中的底座校准矩阵中,COP矩阵和同一个扫描位置上的每幅图像相关联,而SOP信息和扫描位置关联。

照相机的模式,取决于照相机的坐标系统(在RiSCANPRO中被定义为CMCS。下面图像显示的是NIKOND100型照相机被安装固定在LMS-Z360的顶部,并同时标识SOCSCMCS坐标系。CMCS坐标系的原点是针孔照相机的中心。CMCS是一个向右旋转的系统,在图像中其X轴的指示是从左向右的,而Y轴是从顶部向底指示的。Z轴同时是照相机视场范围的中心。




照相机模式右4个固有参数和8个内在校准参数进行描述。另外,叙述信息将被保存在RiSCANPRO中,用于对视场中照相机信息文件和数据的管理。
在很多计算中,并不使用照相机信息,但是作为内在校准参数却是独特的,可用于每个关联的照相机样本和镜头样本,而对这些叙述文本总是需要进行系统应用的。
固有参数反映的是照相机芯片CCD的基本参数。NxNy是简单描述像素分别在水平X方向和垂直Y方向上的参数。Dxdy参数,CCD传感器上单一像素的尺寸。这些参数通常都是有生产制造商标定的。




内在的校准参数可以被分割成更多或更少的参数来对一个被称为针孔相机的理想相机进行描述。这是焦距和投影中心(即:针孔正交投影到CCD芯片表面)。两个潜在的不同的焦距长度fxfy被用来说明在X方向和Y方向上的不同的像素尺寸,并对镜头焦距的(柱面误差)的不同进行说明。参数fxfy被规定为像素尺寸。物理焦距就是fxdx。在上面的例子中,fxdx18.3mm比较接近透镜名义上的20mm焦距。在像素中图像的中心是(Cx,Cy。通常,对于较低失真的镜头Cx近似等于Nx/2Cy近似等于Ny/2。偏离值表示一个镜头和/或芯片的轴向偏移情况。
通过至少两条径向系数和两个切向系数,分别为k1,k2p1,p2,可对镜头失真进行模拟。如果k3k4全部为0,照相机模型将如果在OpenCV中描述的完全一样。参数k3k4是用于更高精度模型中对径向失真进行说明。对于是如何将参数从不失真坐标系统下(即:理想状态下的针孔相机),转换为失真坐标系统的详细情况,在XML认为计划文件中有详细的描述。

Calibrationprocedure:校准程序
校准一个照相机的先决条件是:已知坐标系统下,确认目标物体的一幅或多幅图像。第一步:通过以下操作,获取用于模型参数计算的一组数据设定
确定目标物体的图像坐标,也就是找到图像点
将目标物体和图像点连接起来,就是寻找到对应点。
3D中获取目标物体坐标,有两种不同的存在差异的处理方法,但得到的结果是一致



的。在RiSCANPRO中,同时使用了这两种方法,下面将进行论述。
Basedonreflectorcolumn:以反射柱面为基础
最基本的方式是,设定一个可以为照相机在一个场景中显示的,定位在一个垂直柱面里的,由许多反射目标组成的试验区域。目标应该:(1覆盖垂直方向上照相机视场;(2在深度上有一定的变化。并不要求校准区域是长期稳定的。需要将校准的照相机固定在扫描仪的顶端,并且试验区域能为激光扫描仪通过自动探测目标扫描的许多像结点而进行测量。然后,在照相机不同的角度位置结合闪光灯拍摄一组照片(在校准任务下,此操作自动运行。)在每幅图片里的反射体中心都可被自动提取出来,而且被提取出的反射体将被自动和目标的3D坐标相连接。通过这个程序,一个完全覆盖照相机视场的虚拟试验区域建立起来了。
主要优点是,试验区域能被很容易的显示出来,不需要采集全部范围,而且能同时给出内在照相机的校准参数和底座的校准参数。
Calibrationbasedonflatcheckpatternimages:以平面控制图像为基础进行校准尤其特别的是,对于广角镜头(如NikonD100镜头最大可为40mm,采用以平面控制图像为基础来进行校准,被发现是有用的。下面就以一幅印刷在白纸上的平面控制图像,校准一个14mm的照相机。图上每个正方形的尺寸是0.1x0.1m。为了确保图像的平整,将图像粘贴在平面上。

将需要校准的照相机,对用作校准的平面控制图像进行数次采集。整个图像区域应该被完全覆盖,而且,每幅图像应该是完全可视的。通过校准软件,将自动对内部的图像角进行探测,并且自动连接到平面图像角落的3D坐标系统中(z总是为0
校准软件将对每幅图像的10个内部参数和6个外部参数进行计算,以使偏移量最小化。校准程序的输出结果将被保存到计划任务里的CamCalib_OpenCV节点下,以为将来使用。
系统将照相机默认为设备的一个部分,对应于每个设备都有一个校准文件。因此,只要照相机的镜头参数(焦距、光圈或样本)没有改变,就不需要对照相机进行再次校准。

Calibrationbasedonreflectorarray:以反射体组为基础进行校准
远距离镜头的校准是特别的,采取以平面控制图像为基础的校准方法是困难的,因为固有焦距是无穷小,就要求校准图像要非常的大,因此,用作校准的平面控制图像就应该非常大。第二个方法是根据已知3D坐标的反射体组为基础来进行校准。如下所示。反射体禁止被放置在一个特别平面上,而且需要分布在足够的体积深度上。下图显示的是反射体被固定在一个建筑物角落相连的两个面上和屋顶上。反射体的位置可以依靠一个基准进行测量,mm精度。




Basedonreflectorcolumn:根据反射体柱面进行校准
这项任务允许用户进行照相机校准或依靠很容易设定的一个校准区域进行照相机校准。最基本的方式是,在一个场景中的一个垂直柱面上,设置由许多反射目标组成的试验区域。下图显示的是在现有结构上是如何在桥桩上利用反射体的例子。目标应该:(1覆盖垂直方向上照相机视场;(2在深度上有一定的变化。举例来说,目标不能被放置在一个特定的和照相机原理轴正交的法向平面内。右图显示的是反射体覆盖在一个视场范围内的垂直带上的照相机图像。


Theimagebelowshowsanindoorscenewith9

下面图像显示的是一个室内图像,在大约3m的距离内的一个圆柱体上分布了9个反射体,在大约8m的距离内有7个反射体,并且有一个反射体大约相距13m。通过一次闪光拍摄,所有目标都可以在一幅图像中清晰显示出来。






这个独特的校准视场,是完全能满足照相机校准参数所需要的分辨率精度的。但是因为照相机是固定在扫描仪的旋转部分上的,图像次序是能被记录的,而且所有图像中被提取的目标,是可以完全覆盖照相机视场的,由此能给出一个非常好的校准视场。
通常一个校准视场是通过一个基准点来进行测量的。因为激光扫描仪通过进行精密扫描(像结点扫描),能够在它自身坐标系统中提供很高精度的目标位置的,因此而不需要进行基准点测量。如上面所述,仅仅通过测量有限安排的目标,就可以(上例中为17个目标)每提供一个大约340个目标的虚拟试验视场进行反射体的提取,需要20张照片。因此如上面所描述的,通过放置许多目标,可设置一个试验视场,将顶部固定有照相机的扫描仪,放置在试验视场前面。开始一个新的计划任务。
通过扫描仪和固定在扫描仪上的照相机,根据反射体柱面来提取用于校准的数据有:Creatingthenewcamera-calibration-task:创建一个新的照相机校准任务
在一个现存的计划任务中建立一个新的照相机校准任务或首先创建一个新的计划任务。可通过在CAMERA节点上点击右键,从菜单中选择新的校准(反射柱面)
你将被提示选择一个初始照相机校准和一个初始的底座校准。也可以从目录中选择或其他另外的计划任务中导入一个校准(举例来说,默认的计划任务――在设置RiSCANPRO时可以拷贝过来)。这个校准可以用于任务的初始化,其最大的优点是可以很容易的用于数据的采集并完成整个校准任务。
提示你选择一个用于储存扫描、最佳扫描和图像的扫描位置,点击创建新的("createnew",将建立一个新的扫描位置。
点击OK按钮完成对话框确认
RiSCANPRO右上角将出现一个小的引导框。这个引导框将帮助你完成照相机校准任



务所必需的数据采集设置(当你关闭了引导框时,你可以通过在照相机校准任务上点击右键,并从菜单上选择采集照相机数据〔"Acquirecalibrationdata..."〕来重新启动引导框)
在引导框帮助下逐步完成校准需要的数据采集设置

1.Acquirenewsinglescan获取新的特定扫描
第一步获取你的校准视场的一个扫描,这个扫描应该包含你校准视场内的所有反射体。点击开始按钮("Start",象平常扫描一样进行设置并开始扫描。
2.Reflectorextraction提取反射体
第二步是从第一步的扫描中提取反射体。从目录中选择扫描(最好是已经预先选择)并点击开始按钮。和平常设置反射体提取一样。扫描位置的TPLSOCS将显示所有提取的反射体。请打开扫描并显示TPLSOCS,以检查是否已经提取了所有的反射体并删除不需要的反射体(错误的探测或错误目标)
3.Finescanallreflectors所有反射体的精确扫描
第三步是对第二步提取的所有反射体进行精确扫描。通过点击开始按钮,TPLSOCS的所有反射体都将被进行精确扫描。
4.Imageacquisition获取图像
第四步是获取包含所有反射体的图像。
第一张获取的图像是为了获取到反射体的中心。在采集第二张图像前,扫描仪将旋转一个确定的角度(参见在两个图像中的转角)。图像的采集将持续到从图像上所提取的所有反射体都已经被扫描完毕。配置图像的采集(详细信息可参见输入视场的描述)并通过点击开始按钮来运行图像采集。


Descriptionoftheinput-fields:输入视场的描述

在两个图像间的转角
图像的拍摄需要相隔一定角度。可从左边选择一个目录登陆或在右边填写一个角度。这



个目录包含许多的默认数值,可提供用于照相机视场虚拟需要的信息(默认值是1/10FOV1Numberofimages(approx.图像数量(大约)。显示的是大约需要拍摄采集的图像数量(注意:这个数值取决于初始照相机校准和底座校准的质量,和实际拍照不同)

2Sensitivityreflectorextraction:反射体提取的灵敏度
通过这个滑动条,你可以设置图像中反射体提取的灵敏度。范围从0-1,默认值为0.5如果图像非常明亮,应尽量提供此值,反之亦然。
3Numberoftrials(forreflectorextraction:试验次数(提取反射体)运算法则将努力提高试验次数("Numberoftrials",以提取图像中每一个特定反射体,直到其无法提取为止。(默认值是5次)
当图像采集结束后,你就可以进行照相机校准了。通过点击按钮来运行。将出现下面的对话框

在此页,你可以选择计划使用的计算方法(最小平方配合或粗糙配合的leastsquaresfittingorrobust(图示)。我们推荐使用默认的粗糙配合,能使绝对值最小化。
配合精度参数("Fittingaccuracy")是定义停止反复理想的程序处理所改变的残留误差。默认值是1E-6。数值范围在1E-41E-8之间。



变化参数参数是定义10个校准参数的绝对改变。默认值是1E-6。数值范围在1E-41E-8之间。
另外,你可以选择使参数最优化。通过参数左边的选择盒来进行选择或不选。K3K4的使用,能提高校准的精度,尤其对于广角镜头。
清除按钮("Clear",用于重新设定参数和取消所有参数设定。使用所有的("Useall"将运行所有参数(所有用于校准的参数)
如果选择使用来自于照相机校准的参数作为初始参数,这些参数将和来自于照相机校准的参数进行初始化。(使用该选项时,你首先需要开始校准)
最好通过点击开始按钮来运行校准处理。当校准开始运行时,你可以在"CALCULATIONLOG"计算日志中进行观察。当校准结束后,你可以切换到第三页统计表("Statistics")中。在此页,你能看到一张统计表,显示所有图像和它们的含义、(在图像像结点和扫描像结点之间的)最小和最大像素距离。在当前状态下,一个平均的像素距离值为0.5,可以认为是最好的结果。
在其他计划任务中使用此结论,只需要通过在校准("CALIBRATIONS")上点击右键,并从菜单上选择新的OpenCV"NewOpenCV...",并输入一个底座――新的底座,导入照相机校准和底座校准。在下面的对话框中,点击导入按钮就可导入校准。

Basedonflatcheckpattern:以平面控制为基础
以平面控制为基础,提取校准数据的程序如下:
1)在一个现存的计划任务中建立一个新的CamCalibTask节点或首先建立一个新的计划任务。在照相机节点上点击右键并从菜单上选择新的校准(平面控制)出现下面对话框:




在第一页上设置照相机校准任务的初始数值:
WidthandHeightofImagesinpixel像素图像的宽度和高度。你可以在此直接填写图像的尺寸,也可在导入选定图像之后,通过点击来运行来自第一幅图像上的图像尺寸(见第二步)
Heightofrows:行高。选定图像每一行的高度,单位mNumberofrows:行的数量。选定图像行的数量。
Widthofcolumns:列高。选定图像每一列的高度,单位mNumberofcolumns:列的数量。选定图像列的数量。

点击OK确认配置,新的节点被默认命名为CamCalibTask01(随着现有任务,数字将逐渐增加)
1)在节点CamCalibTask01上点击右键并选择增加图像,增加照相机从不同角度拍摄的,用于显示平面控制校准的所有图像(在拍摄过程中,通过倾斜和固定照相机,尽可能拍摄更多照片)2)下一步,是在所有图像上,提取控制平面上所有交叉点(两个相连黑色区域的角点)
打开CamCalibTask01(双击或点击右键选择属性〔"Attributes"




从左边的图像目录中选择一个图像。这将在右边的窗口中加载显示此图像。现在通过单一点击鼠标左键,来对四个外部交点中的每一个都进行标识(图中显示四个蓝色矩形)。现在,你还需要确定四个点,作为左上交点、右上交点、左下交点和右下交点。在每个标识上点击右键,并从菜单上选择它们的位置(次序不重要)。如果你有一个操作错误,你可以简单的通过在上面进行第二次操作而覆盖它。
计算所有交点("Calcallcrossingpoints")按钮,将使RiSCANPRO对其他交点进行计算,所需时间的长短将取决于你的计算机配置。计算的结果将被标识显示在图像上。Distrortedcheckpattern:检查图像失真。在许多情况下,对角点的自动探测是失败的。尤其是当透视失真所产生的一个比,和第一正方形的宽度高度比1是不同时(和正方形图像比较)。在这种情况下,要尽力定义一个类似于第一个正方形的正方形。设定方向是顺时针方位。




图示是一个失真的检查图像。
以这种方式对所有图像进行处理。
清除所有的或清除当前的("CleanupALL""CleanupTHIS")按钮,是用以对所有图像上的交点或当前图像的交点进行清除。
1)现在切换到校准("Calibration...")页。在此页,你可以选择计划使用的计算方法(最小平方配合或粗糙配合的leastsquaresfittingorrobust(图示)我们推荐使用默认的粗糙配合,能使绝对值最小化。




另外,你可以选择使参数最优化。通过参数左边的选择盒来进行选择或不选。K3K4的使用,能提高校准的精度,尤其对于广角镜头。
配合精度参数("Fittingaccuracy")是定义停止反复理想的程序处理所改变的残留误差。默认值是1E-6。数值范围在1E-41E-8之间。
焦距mm"Focallength[mm]")参数,是帮助加速处理,以接近已知理想焦距进行的。每次开始一个新的配合处理时,可再次对用作控制图像的每幅图像进行校准,通过照相机的位置和方位校准来实现检验盒的所有图像矩阵初始化("Initialiseallimagematrices"配合处理运行成功,只需要看附加参数的效果,举例来说,象K3。如果运行错误,可以不选择这个选项,也可不选择焦距选项。
通过点击右角处较低的按钮来运行配合程序。可通过在提示配合错误("Presentfittingerror")来观察程序的运行情况。
在成功完成校准后,RiSCANPRO将在计算日志中显示一个统计表。统计表中包含最大距离,意味着(通过对控制图像参数的指定)而形成的,依靠照相机校准数据转换到图像坐标系统中的真实交点的距离。




此外,有一个命名为统计表"Statistics")的附加页。此页的图表显示的是:通过不同的方法来表现揭示径向距离依赖度(未修正的径向失真)、对角度的依赖度(未修正的平移失真)或作为一个有缺陷的控制平面对3D坐标误差的交叉指数,在将3D中的交点转换成2D中的交点的像素距离。
1过在相机准任点击键并拷贝论("CopyResult..."Result_CamCalib拷贝到照相机节点中,以使其能用于更多任务。

Basedonreflectorarray:以反射体组为基础。以反射体组为基础,提取校准数据的程序如下:
1在一个现存的计划任务中建立一个新的CamCalibTask节点或首先建立一个新的计划任务。在照相机节点上点击右键并从菜单上选择新的校准(反射体组)。点击OK确认配置。新节点将被默认为CamCalibTask01
2)在节点CamCalibTask01上点击右键并选择增加图像,增加照相机从不同角度拍摄的,用于显示反射体组校准的所有图像。如果一张照片中的反射体覆盖了整个图像,则此一张照片就足够了。另外,在拍摄反射体组时,通过倾斜和固定照相机以尽可能拍摄更多照片,每张图像中应该至少显示6个反射体。



3)向像结点目录TPL(CALIB输入像结点。
4)继续对所有图像进行处理。对于每幅图像,无论是通过手动还是通过自动提取(发现反射体〔Findreflectors,你都需要确定反射体。自动提取仅可用于照相机是带闪光灯拍摄的,而且和其他目标相比较,反射体清晰可见。
结合图像拍摄时的闪光,也可以通过手动来提取。放大图像,通过点击左键来标识,在这些标识上点击右键打开菜单,并将点增加到TPL(IMAGE中。

为了对每幅图像设定在TPL(IMAGETPL(CALIB之间对应的像结点。如下图所示,需要同时显示操作像结点目录。通过拖放(drag-and-drop)操作,来建立一个连接的对应定义的像结点。在TPL(CALIB中右键点击项目,然后拖到TPL(IMAGE中对应的名称下并放到。你将可以在连接列内看到对应的连接。你也可以如上一步所定义的,TPL(IMAGE中使用同样的编号方式。

通过双击打开或点击右键选择属性,打开CamCalibTask01节点的属性窗口。来自目录中的所有连接点都将被提取,并用于校准参数的计算。




在成功完成校准后,RiSCANPRO将对每幅图像显示一个统计分析。校准数据将被输入Result_CamCalib节点里,在TPL(CALIB坐标系统中的每幅图像中的照相机的估计位置和方位将被校正。
对于校准结论的校准精度的检查是很容易,通过同时在图像中显示TPL(CALIBTPL(IMAGE的像结点,或者通过在TPL(IMAGE里比较像素数字上的差异。



Riegl Scan-Pro z420i技术文档

相关推荐