CheckerboardCalibrationToolEditControl本主题包含以下章节。•ControlButtons(控件按钮)•CalibrationInfo•CalibrateTab(Calibrate选项卡)•OriginTab(Origin选项卡)•WarpingTab(Warping选项卡)•RunParamsTab(RunParams选项卡)•GraphicsTab(Graphics选项卡)•PointResultsTab(PointResults选项卡)•TransformResultsTab(TransformResults选项卡)CheckerboardCalibration工具编辑控件为CogCalibCheckerboardTool工具提供图形用户界面,此工具可校正应用程序以保证其返回的结果具有有意义的值。为应用程序添加CheckerboardCalibration工具后,您的图像分析工具便能以特定度量单位返回结果,如英寸、厘米以及毫米等。CheckerboardCalibration工具用于定位棋盘风格校正板的图像中的顶点(或点网格风格板上的点),以及确定所找到图像的位置与板的物理尺寸之间的最佳二维转换。此工具可生成线性转换,也可生成会导致光学和透视失真的非线性转换。如果使用linescancamera,CheckerboardCalibration工具还支持非线性转换。注意:CheckerboardCalibration工具支持checkerboard和grid-of-dots校正板。Cognex建议将CogCalibCheckerboardTool和棋盘校正板配合使用。为了保证兼容性,也支持点网格板。您无需明确指定希望使用的计量标准。作为配置CheckerboardCalibration工具的一部分,以您希望使用的度量单位定义网格间距(瓦片高度和宽度或点间距)。例如,如果希望使用毫米,则以毫米定义网格间距。完成计算后,即可在后续的取像过程中使用二维转换,以将输入图像的未校正坐标空间映射至原始已校正坐标空间。您可进一步指定此空间原点的精确位置和方向,使工具生成可传递至其他视觉工具的最终已校正空间。使用此校正输出图像的视觉工具可根据您定义的度量单位返回点位置。如果是非线性二维转换,工具还可扭曲输入图像的像素以纠正失真。有关校正应用程序和坐标空间的更多信息,请参阅主题“CalibrationandFixturing”。在开发视觉应用程序时,通常需捕获从AcquisitionFIFO工具获取的校正板图像,并将其传递至CheckerboardCalibration工具。校正转换计算完成后,如果对最终校正坐标空间感到满意,可使用相同的AcquisitionFIFO工具捕获希望检查的对象的图像。应用程序工作时,CheckerboardCalibration工具可获取存储的二维转换并将其附加至输入图像的坐标空间目录树。用于校正的校正板图像必须是灰度图像。然而,使用校正工具的运行时图像可为彩色图像或灰度图像。如果切换为不同类型的相机或改变相机与所检查对象之间的距离,将需要重新校正应用程序。在任一情况下,在未校正空间跨越特定距离所需的网格点(棋盘格子或点)数量都会发生变化,因此必须允许CheckerboardCalibration工具确定新的映射。CheckerboardCalibration工具编辑控件如下图所示:此编辑控件提供以下功能:•一排位于左上角的控件按钮,可完成大部分常规操作。•一组功能选项卡,用于确定映射类型(线性或非线性),定义网格间距与希望使用的度量单位之间的比率,以及命名新的校正坐标空间。•一个图像显示窗口,用于显示取像和CheckerboardCalibration工具生成的输出图像。您可以尝试用QuickBuild来创建CogCalibCheckerboard工具,以练习使用此编辑控件。新的CogCalibCheckerboard工具带有棋盘图案图像和使用已校正坐标空间的输出图像的输入终端,如下图所示:在QuickBuild应用程序中,CheckerboardCalibration工具接受来自图像获取工具的输出图像,然后将自己生成的输出图像传递至其他使用校正坐标空间的视觉工具。例如,下图所示为CheckerboardCalibration工具的输出图像到CNLSearch工具的传递过程:要在自定义视觉应用程序中包含此编辑控件,必须先将其添加至您的VisualStudio.NET开发环境。有关更多信息,请参阅主题“AddingEditControlstoVisualStudio”。ControlButtons(控件按钮)下表介绍了每个按钮的功能:表1.控件按钮Run将最近的输出图像映射至校正坐标空间,即可生成输出图像。虽然最初生成校正坐标空间时无需运行CheckerboardCalibration工具,但是为了生成其他视觉工具可使用的输出图像,工具必须在应用程序执行时运行。工具仅可在校正后运行。Electricmode切换为电动模式,在此模式下,CheckerboardCalibration工具在特定配置参数更改时自动执行。在电动模式下,每个电气特性旁会显示闪电图标。Localimagedisplay打开或关闭本地图像显示窗口。CheckerboardCalibration工具支持以下图像缓冲区:•Current.InputImage缓冲区,包含从取像工具收到的最后一个图像。要配置CheckerboardCalibration工具并生成校正坐标空间,输入图像在被复制到Current.CalibrationImage缓冲区之前必须为棋盘校正板。应用程序执行时,工具接受希望检查的对象的每个图像,并将校正坐标空间添加至输入图像的空间目录树。•Current.CalibrationImage缓冲区,包含在配置工具时从Current.InputImage缓冲区复制的棋盘图案图像,且图像中具有指示已知顶点的图形。•LastRun.OutputImage缓冲区,包含工具每次运行时生成的输出图像。对于线性二维转换,输出图像与输入图像类似。对于非线性二维转换,工具将扭曲输出图像以移除校正图像中存在的任何透视失真和径向失真。•LastRun.InputImage缓冲区,包含由工具处理的最后一个图像以及您从Graphics选项卡启用的任何图形。此外,如果使用工具生成非线性二维转换,工具将生成Current.UndistortedCalibrationImage缓冲区,此缓冲区包含用于移除所有已知失真的校正板的扭曲图像。您也可以使用此未失真的图像来指定destinationrectangle。Floatingimagedisplay打开一个或多个浮动图像窗口,这些窗口支持与本地图像显示窗口相同的图像缓冲区。Open打开VisionPro固有(.vpp)文件,此文件包含该视觉工具对象类型的一组已保存属性。尝试为其他对象类型打开.vpp文件时,VisionPro会报告错误。Save将视觉工具的当前属性保存至VisionPro固有(.vpp)文件。此编辑控件可以选择在保存视觉工具时一并保存或不保存其图像缓冲区和工具结果。SaveAs将视觉工具的当前属性保存至新的VisionPro固有(.vpp)文件。Reset将视觉工具重置为默认状态。ShowFloatingResults打开一个浮动窗口,其中显示未校正及原始已校正空间内校正图像中每个已知顶点的点位置,以及用于定义二维转换的参数。ShowToolTips启用或禁用编辑控件中单个项目的工具提示显示。Help打开此VisionPro的联机帮助文件。CalibrationInfo此编辑控件沿底部设置了一个GetInfoStrings文本框,用于显示最后一次尝试计算二维转换后的所有诊断文本字符串。下图所示为CalibrationInfo框的示例:如果工具未校正,则文本框为空。如果工具在最后一次校正尝试期间未生成任何消息字符串,则文本框为空。此编辑控件上的所有选项卡均会显示此消息框。CalibrateTab(Calibrate选项卡)本节包含以下子节。•CalibrationMode•CalibrationPlate•GrabCalibrationImage•ComputeCalibration使用Calibrate选项卡选择二维转换的类型,以您希望在应用程序中使用的物理单位生成和定义棋盘格子。下图所示为默认的Calibrate选项卡:CalibrationMode选择ComputationMode、ComputationMode或ComputationMode二维转换。如果选择线性转换,可选择在工具计算未校正点与原始已校正点间之最佳拟合转换时允许的DOFsToCompute。如果正在校正线扫描相机,可选择一维扭曲或二维扭曲非线性线扫描校正。有关扭曲功能的差异,请参阅主题“LinescanCameraCalibration”。无论选择哪个选项,均可指定从相机图像传感器平面到校正板表面的LinescanDistanceToTarget(采用物理单位)。如果提供此值,精度应为+/-10%。提供此距离可提高已计算校正的稳健性和精确性。CalibrationPlate使用以下选项描述校正板的属性(网格类型间距以及是否存在基准符号),并控制工具用来定位图像中网格点的方法:表2.校正板参数说明PhysicalTileSizeXPhysicalTileSizeY为校正板输入网格间距。对于棋盘风格的校正板,其为格子大小。对于点网格校正板,其为X和Y方向上两个点中心之间的间距。使用您希望在视觉应用程序中使用的实际度量单位输入网格间距。例如,如果希望在应用程序中使用英寸且校正板采用的格子大小为0.5英寸,则输入0.5。注意:在执行校正(单击ComputeCalibration)时,如果使用的点网格校正板包含specialmarksthatspecifythegridspacing,则工具将使用由板标记定义的值替换您输入的所有网格间距值。由板标记指定的单位(英寸或毫米)将被丢弃。FeatureFinder选择所使用校正板的类型。如果使用棋盘校正板,Cognex建议选择CheckerboardExhaustive。CheckerboardExhaustive可提供最精确的校正结果。如果使用网格板,请选择DotGrid。FiducialMark如果校正图像包含fiducialmark,请选中此复选框,工具将使用此基准符号创建原始已校正空间的原点和左右手使用习惯。如果选中此复选框,控件将自动为您指定的校正板类型(棋盘格或点网格)选择正确的基准符号类型。务必确保您在此处指定的值与您使用的板相匹配。如果您使用的板具有基准符号且您未选中此复选框,或者已选中此复选框但使用的板不包含基准符号,则工具不会计算有效的校正。如果您未选中此复选框且使用的板无基准符号,CheckerboardCalibration工具会将距离图像中心最近的格子顶点或点中心作为原点,并为在角度方面与校正图像像素坐标空间x轴和y轴距离最近的网格线分配正的x轴和y轴。GrabCalibrationImage单击GrabCalibration将存储在Current.InputImage缓冲区的当前图像复制到Current.Calibration缓冲区。要配置工具,必须将校正板图像复制到Current.Calibration缓冲区。ComputeCalibration单击Calibrate,工具将根据Current.Calibration图像和当前参数集计算最佳拟合二维线性或非线性转换。OriginTab(Origin选项卡)使用Origin选项卡将已校正空间的原点移动至不同位置。下图所示为默认的Origin选项卡:WarpingTab(Warping选项卡)本节包含以下子节。•DestinationRectangle•Image