实验一数字图像的获取 ()了解和掌摆视觉检测系统的组成原理,了解各个组成部分的作用和特性,掌摆一般视觉检 实测系统的组建与连接方法。 8 的(④)了解光源亮度与照明距离对成像质量的影响规律,掌提合理布置光源的一般原则: (⑤)了解镜头畸变对测量结果的影响规律,掌提视觉测量的桔度保障策略: 典型的视觉系统一般包括光源、镜头、成像器件、图像采集卡、计算机系统(包括图 像处理软件、监视器、通讯/输入输出单元等)。 1 光源 在对物体的检测中,光源起到了决定性的作用。常用的光源有肉素灯、荧光灯和LD 光源等,其主要性能比较可以参见下表: 表1常见光源性能对比 卤素灯 荧光灯 LD光源 种类 使用寿( 5000-7000小时 5000-7000小时 60000-100000小时 亮度 较亮 使用多个LD到达很京 响应速 快 发热大、几乎没有 发热少,扩散性发热少,波长可以根剂 特性 适合大面 用途逸择,制作形状 光亮度和色、温自 变化,便宜 均匀照明,较便便,运行成本低,耗电 宜 机器视觉系统稳定工作的必要条件是:在外部条件不断变化(外部光噪声,目标的侧 斜,材质和系统的变化等)的情况下,持续获得对比鲜明的图像。LD光源以其高亮度、高稳 定、高性价比满足了这一要求,而且,LD光源还具有体积小,功耗低,响应速度快,易集 成,寿命长和可自由选择颜色等特性,这使得它成为适用于广泛工程应用的理想解决方率」 此外还要注意光源的照明方式。 )背光照明:光源安放在被测物后面,与摄像机分 别位于被测物体的两侧。这种照明的图像对比度好,精度高,主要用于不透光目标的高精度边 缘检测。(②)反射照明:光源与摄像机在物体的同侧,主要用于测量表面特性参数,便于安 装。(3)同轴照明:光源与镜头共光轴,主要用于光泽表面参数测量。(4)结构光照明:光源 有特定的方向,光束有精确的形状,主要用于获取三维目标的形状参数。 2、镜头 在对物体进行检测时整个机器视觉与物体接触最紧密的就是镜头了,针对不可的检测 目标,选取的镜头也不同。在选用镜头时需要考虑下面的问题: C①成像面大小:它是入射光通过镜头后所成像的平面,这个面试一个圆形。一般使 用的C0D相机,其芯片大小有1/3,1/2,2/3及1英寸4种大小,在选用镜头时要考虑的就是 成像面大小是否与所使用的CCD相机相匹配:
实验一 数字图像的获取 实 验 目 的 (1) 了解和掌握视觉检测系统的组成原理,了解各个组成部分的作用和特性,掌握一般视觉检 测系统的组建与连接方法。 (2) 了解和掌握数字摄像机躲使用方法,掌握图像采集的技术要领与编程方法。 (3) 了解光圈大小对成像质量的影响规律,掌握调整合理光圈的方法; (4) 了解光源亮度与照明距离对成像质量的影响规律,掌握合理布置光源的一般原则; (5) 了解镜头畸变对测量结果的影响规律,掌握视觉测量的精度保障策略; 实 验 原 理 典型的视觉系统一般包括光源、镜头、成像器件、图像采集卡、计算机系统(包括图 像处理软件、监视器、通讯/输入输出单元等)。 1、 光源 在对物体的检测中,光源起到了决定性的作用。常用的光源有卤素灯、荧光灯和 LED 光源等,其主要性能比较可以参见下表: 表 1 常见光源性能对比 种类 卤素灯 荧光灯 LED 光源 使用寿命 5000-7000 小时 5000-7000 小时 60 000-100 000 小时 亮度 亮 较亮 使用多个 LED 到达很亮 响应速度 慢 慢 快 特性 发热大、几乎没有 光亮度和色、温的 变化,便宜 发热少,扩散性 好,适合大面积 均匀照明,较便 宜 发热少,波长可以根据 用途选择,制作形状方 便,运行成本低,耗电 少 机器视觉系统稳定工作的必要条件是:在外部条件不断变化(外部光噪声,目标的倾 斜,材质和系统的变化等)的情况下,持续获得对比鲜明的图像。LED 光源以其高亮度、高稳 定、高性价比满足了这一要求,而且,LED 光源还具有体积小,功耗低,响应速度快,易集 成,寿命长和可自由选择颜色等特性,这使得它成为适用于广泛工程应用的理想解决方案。 此外还要注意光源的照明方式。(1) 背光照明:光源安放在被测物后面,与摄像机分 别位于被测物体的两侧。这种照明的图像对比度好,精度高,主要用于不透光目标的高精度边 缘检测。(2) 反射照明:光源与摄像机在物体的同侧,主要用于测量表面特性参数,便于安 装。(3) 同轴照明:光源与镜头共光轴,主要用于光泽表面参数测量。(4) 结构光照明:光源 有特定的方向,光束有精确的形状,主要用于获取三维目标的形状参数。 2、镜头 在对物体进行检测时整个机器视觉与物体接触最紧密的就是镜头了,针对不同的检测 目标,选取的镜头也不同。在选用镜头时需要考虑下面的问题: CCD 成像面大小:它是入射光通过镜头后所成像的平面,这个面试一个圆形。一般使 用的 CCD 相机,其芯片大小有 1/3,1/2,2/3 及 1 英寸 4 种大小,在选用镜头时要考虑的就是 成像面大小是否与所使用的 CCD 相机相匹配;
焦距:焦距的大小决定着视场角的大小。焦距小(短):视场角大,观察范围大,景 深大,远处物体分辨不很清楚,畸变大,边缘暗。焦距大(长):视场角小,观察范围小,景 深小,很远的物体也能看清楚,畸变小。选择焦距的原则,要考虑是要获取较大的观测范围, 还是漫测细节,对于近距离大场面,可以选用小焦距(广角镜头):对于远处细节,可以选用 大焦距(长焦镜头)。选择镜头焦距时注意规格化:选择比计算值小的圈定焦距,则视角还会 大一些。另外,焦距、视角、工作距离、视野,这四个概念是互相关联的,在选择镜头时需要 考虑物体的大小、系统预留的空间大小等。 光圈:光圈表示光通量大小(也叫光圈指数、光阑系数),需要按照光源照度来调 整。根据光圈调整方式的不同,镜头又分为固定光圈镜头、手动变光圈镜头、自动变光圈镜 头。固定光圈镜头适于固定场景和目标,且光源亮度不变的场合:手动变光圈镜头适合亮度 化不大的场合(调整光圈环),一次性调整合适为止:自动变光圈镜头会随着光线的变化而自 动满整,适于光源频繁变化的场合。 3、摄像机 目前工业用摄像机主要有CCD和MOS两种,其中COS相机起步较晚,所摄取的画面 质量也不是很好,所以主要用于图像品质要求不是很高的产品上,而工业上应用较为普游的是 CCD相机,下表示两种相机的特性对比: 麦2C0Ws与CD相相特性对比 QOS图像传感器 暗电流(pi/2 10-100 灵敏度 噪声电子数 200 FPN (% 可在逻辑电路中校正 1 工艺难度 大 光敏元放大器 逐个光敏输出,只能按规员 信号输出 行、列开关控制,可随机采村 的程序输出 片内集成 片外设置 逻辑电路 片向集成 片外设置 接口电路 片向集成 片外设置 驱动电路 片向集成 片外设置,电路设计复杂 在选择相机的时候还要考虑到下面的问题: (①)相机的扫描方式:相机的扫指方式可以分为面扫描和线扫描相机。线扫描相机适用于下面 几种情况:①对固定物体做一推的测量:②对象物体处于运动状态中,③需处理可旋转圆柱体 的边缘图像: ④需要对象物体的高分辨率图像, 而又要考虑价格因素等。其他情况可考虑使用 面扫描相机。线扫描相机的特点是运动平稳、速度跟踪桔度高、光源强度要求高。 (②)相机的颜色:标准相机按颜色可以分为黑白和彩色相机,传统的黑白相机普速比彩色相机 分辨率高。而且数据采集速度快,在检测产品的边缘及表面缺路的时候通常可以使用黑白相 机,可以提高速度,且只需要较小的存储空间。随着相机制造技术的不断发展,现在彩色相机 也得到了越来越多的应用,在医学,生物学以及一些工业过程控制方面发挥了重要作用
焦距:焦距的大小决定着视场角的大小。焦距小(短):视场角大,观察范围大,景 深大,远处物体分辨不很清楚,畸变大,边缘暗。焦距大(长):视场角小,观察范围小,景 深小,很远的物体也能看清楚,畸变小。选择焦距的原则,要考虑是要获取较大的观测范围, 还是观测细节。对于近距离大场面,可以选用小焦距(广角镜头);对于远处细节,可以选用 大焦距(长焦镜头)。选择镜头焦距时注意规格化:选择比计算值小的固定焦距,则视角还会 大一些。另外,焦距、视角、工作距离、视野,这四个概念是互相关联的,在选择镜头时需要 考虑物体的大小、系统预留的空间大小等。 光圈:光圈表示光通量大小(也叫光圈指数、光阑系数),需要按照光源照度来调 整。根据光圈调整方式的不同,镜头又分为固定光圈镜头、手动变光圈镜头、自动变光圈镜 头。固定光圈镜头适于固定场景和目标,且光源亮度不变的场合;手动变光圈镜头适合亮度变 化不大的场合(调整光圈环),一次性调整合适为止;自动变光圈镜头会随着光线的变化而自 动调整,适于光源频繁变化的场合。 3、摄像机 目前工业用摄像机主要有 CCD 和 CMOS 两种,其中 CMOS 相机起步较晚,所摄取的画面 质量也不是很好,所以主要用于图像品质要求不是很高的产品上,而工业上应用较为普遍的是 CCD 相机,下表示两种相机的特性对比: 表 2 COMS 与 CCD 相机特性对比 CMOS 图像传感器 CCD 暗电流(pA/m2) 10-100 10 灵敏度 低 高 噪声电子数 ≤200 ≤50 FPN(%) 可在逻辑电路中校正 <1 工艺难度 小 大 光敏元放大器 有 无 信号输出 行、列开关控制,可随机采样 逐个光敏输出,只能按规定 的程序输出 ADC 片内集成 片外设置 逻辑电路 片向集成 片外设置 接口电路 片向集成 片外设置 驱动电路 片向集成 片外设置,电路设计复杂 在选择相机的时候还要考虑到下面的问题: (1) 相机的扫描方式:相机的扫描方式可以分为面扫描和线扫描相机。线扫描相机适用于下面 几种情况:①对固定物体做一维的测量;②对象物体处于运动状态中;③需处理可旋转圆柱体 的边缘图像;④需要对象物体的高分辨率图像,而又要考虑价格因素等。其他情况可考虑使用 面扫描相机。线扫描相机的特点是运动平稳、速度跟踪精度高、光源强度要求高。 (2) 相机的颜色:标准相机按颜色可以分为黑白和彩色相机,传统的黑白相机普遍比彩色相机 分辨率高,而且数据采集速度快,在检测产品的边缘及表面缺陷的时候通常可以使用黑白相 机,可以提高速度,且只需要较小的存储空间。随着相机制造技术的不断发展,现在彩色相机 也得到了越来越多的应用,在医学,生物学以及一些工业过程控制方面发挥了重要作用
(3)摄像机的输出信号形式:根据输出信号形式的不同,摄像机可以分为模拟式和数字式两 种。模拟式摄像机输出的是标准的电视信号,需要后接图像卡才能送入计算机进行处理。数 摄像机输出的是数字信号,可以直接送入计算机进行处理 1、摄像机 大恒图像DH-W系列1EEE1394数字黑白摄像机DH N1300FV. 参数如下:最高分辨率1280×1024,光学分辨率>700T 1ines:数字面阵1/2”CM0S感光芯片,1EEE1394(伙线) 输出,数据位数8位/10位可选:无中继数据传输4.5米 信噪比>45B,支持一台计算机连接多只摄像机:标准CS C及F镜头接口:带有外触发输入,带有闪光灯控制输出 计算机可以编程控制降光时何、亮度、增益等参数,采料 帧率15fps1280×1024/45fps640×480:可采用计算机12V供电或者外接12V电源,功耗 <3.8%,连线方便:编程环境:in2K/WinP/Linux。 镜头 Coeputar M50I8-P百万像素固定焦距镜头,捕提兆级像素照 相机的全部分辨率,变形率低于1,0%,在整个屏幕范围内都具 器 有高对比度及清晰度的图像,紧凑式设计。 参数如下:焦距50m,手动光圈F1.8-F16C,焦点0.5m Inf(加圈),视角D9.5°/m.6°N5.7,分辨率在中心处 和边缘处超过100线对/m尺寸?33.5mmx38.1m: 光 BMT CCD背光源,型号:BIBL-R50/50,发光面尺寸50mm×50m BMT驱动电源:型号BAPS-1512。 4、计擅机系统 个人计算机系统,含1394接口板 5、视觉实验台 专门定制的视觉实验专用实验台
(3) 摄像机的输出信号形式:根据输出信号形式的不同,摄像机可以分为模拟式和数字式两 种。模拟式摄像机输出的是标准的电视信号,需要后接图像卡才能送入计算机进行处理。数字 摄像机输出的是数字信号,可以直接送入计算机进行处理。 实 验 仪 器 与 设 备 1、摄像机 大恒图像 DH-HV 系列 IEEE1394 数字黑白摄像机 DHHV1300FM。 参数如下:最高分辨率 1280×1024,光学分辨率>700 TV lines;数字面阵 1/2”CMOS 感光芯片,IEEE 1394(火线) 输出,数据位数 8 位/10 位可选;无中继数据传输 4.5 米, 信噪比>45dB,支持一台计算机连接多只摄像机;标准 CS, C 及 F 镜头接口;带有外触发输入,带有闪光灯控制输出; 计算机可以编程控制曝光时间、亮度、增益等参数,采样 帧率 15fps@1280×1024/45fps@640×480;可采用计算机 12V 供电或者外接 12V 电源,功耗 <3.8W,连线方便;编程环境:Win2K/WinXP/Linux。 2、镜头 Computar M5018-MP 百万像素固定焦距镜头,捕捉兆级像素照 相机的全部分辨率,变形率低于 1.0%,在整个屏幕范围内都具 有高对比度及清晰度的图像,紧凑式设计。 参数如下:焦距 50mm,手动光圈 F1.8-F16 C,焦点 0.5m – Inf(加圈),视角 D9.5°/H7.6°/V5.7°,分辨率在中心处 和边缘处超过 100 线对/mm 尺寸 ?33.5mm x 38.1mm; 3、光源 BMT CCD 背光源,型号:BIBL-R50/50,发光面尺寸 50mm×50mm。 BMT 驱动电源:型号 BAPS-1512。 4、计算机系统 个人计算机系统,含 1394 接口板。 5、视觉实验台 专门定制的视觉实验专用实验台
LED光源 被测物镜头数字摄像机 计算机 6、测试零件 供实验测试用的试件为标准环规,其准确的内圆轮哪用来 作为测试目标。 熟悉各项实验仪器和设备,按照系统连接图安装、 固定和连接各个部件,检查连接是否正 2、打开计算机电源,运行计算机桌而上的摄像机演示程序d©o,检查是否可以捕获黑白图 像。 3、打开光源。调整光源亮度适中,调整被测试件的位置与高度,调整镜头光圈适中,间整调 内 环,使得图像清晰、完整。 4、光源照度实验:改变光源亮度,依次由暗到亮,分别观察图象的变化情况,并保存图象到硬 与 盘.(注意编号L1、2、L3) 过 5、照明距离实验:改变光源与被测目标的距离,依次由近到远,分别观察图象的变化情况,并 保存图象到硬盘 (注意编号D1、2、D3) 程 6、光圈影响实验:改变光圈大小,依次由小到大,分别观察图象的变化情况,并保存图象到硬 盘,(注意编号F1、2、3) 7、倍头骑李实给:改李被测目标在视场中的位置,依次从左到右,分别容图象的李化情况 并保存图象到盘。 (注意编号PI、P2、P3 将实验中保存的图像分别拷贝出来,放入下面的相应表格中,并将总结的现象和规转 填入表格。 第一次 第二次 第三次 照度 报 图像 告 规律 第一次 第二次 第三次 距离
6、测试零件 供实验测试用的试件为标准环规,其准确的内圆轮廓用来 作为测试目标。 实 验 内 容 与 过 程 1、熟悉各项实验仪器和设备,按照系统连接图安装、固定和连接各个部件,检查连接是否正 常; 2、打开计算机电源,运行计算机桌面上的摄像机演示程序 demo,检查是否可以捕获黑白图 像。 3、打开光源,调整光源亮度适中,调整被测试件的位置与高度,调整镜头光圈适中,调整调焦 环,使得图像清晰、完整。 4、光源照度实验:改变光源亮度,依次由暗到亮,分别观察图象的变化情况,并保存图象到硬 盘。(注意编号 L1、L2、L3) 5、照明距离实验:改变光源与被测目标的距离,依次由近到远,分别观察图象的变化情况,并 保存图象到硬盘。(注意编号 D1、D2、D3) 6、光圈影响实验:改变光圈大小,依次由小到大,分别观察图象的变化情况,并保存图象到硬 盘。(注意编号 F1、F2、F3) 7、镜头畸变实验:改变被测目标在视场中的位置,依次从左到右,分别观察图象的变化情况, 并保存图象到硬盘。(注意编号 P1、P2、P3) 实 验 报 告 将实验中保存的图像分别拷贝出来,放入下面的相应表格中,并将总结的现象和规律 填入表格。 光源 照度 实验 第一次 第二次 第三次 照度 图像 L1 L2 L3 现象 规律 第一次 第二次 第三次 距离
照明 图像 现象 第一次 第二 光圈 g 第一次 第二 第三汾
照明 距离 实验 图像 D1 D2 D3 现象 规律 光圈 影响 实验 第一次 第二次 第三次 光圈 图像 F1 F2 F3 现象 规律 镜头 畸变 实验 第一次 第二次 第三次 位置 图像 S1 S2 S3 现象 规律
实验二图像二值化 1、掌握利用VC采集一幅数字图像的基本方法, 实验目的 2加深了解阀值逸择对图像结果的影响 加深对图像灰度直方图概念的理解: 4、掌据基本的阀值确定方法。 图像的二值化处理,就是讲图像上的各点原有的连续灰度(例如 0°255)置为最小(0)或最大(255),从而将一幅连续灰度变化的图象转 李为一幅里白图像,且只有里(灰度值为0)与白(灰府值为255),也就 是讲整个图像呈现出明显的黑白效果。经过二值化处理的图像,边缘轮廓 常鲜明,可以达到突出目标、淡化背景的作用,适合于处理简单的目标和逻 辑判断。 图像二伯化的基木方法,是先确定一个圆值,然后将所有象素点的 灰度同这个阅值进行比较。若灰度大于或等于阀值,其灰度值改为255表 示:反之,灰度值改为0。因此,值的大小对二值化的处理效果具有直接 的、决定性的影响。对于同一幅图象而言,采用不可的阅值,二值化处理的 结果差异极为显著。一般面言,阙值越小,二值化后图像的白色区域(亮) 面积多,而黑色区域()面积越少,这意味着一部分较暗的目标被或为背 景。反之,值越大 二值化处理后的白色区域越少,而黑色区域越多,意 味着部分较亮的日标被转变为背景。 灰度直方图(histogran)是灰度级的函数,它表示图象中具有每 种灰度级的象素的个教,反映图象中每种灰度出理的频率。灰度直方图的描 坐标是灰度级,纵坐标是该灰度级出现的须率, 是图象的最基本的统计特 实验原理 常用的阀值确定方法有:双峰法、大津法、选代法等。其中选代法 由于具有明确的收敛性而普遍使用,其过程如下:①选择一个初始阅值的 估算值7,比如图象灰度的均值就是一个较好的初始值:②利用阀值 T把图像分割成两组A和2:③计算区域和2的灰度均值1和 m2:④选择新的阀值工,等于区域A和2的均值▣1和”2的平均 值:⑤重复②一④步,直到均值。1和m2不再变化为止. 此外,数字摄像机随机提供了较为完善的应用接口库,提供的应用 程序接口函数基本上概括了数字摄像机应用程序编程中涉及的各个方面。应 用接口库按照模块分为应用功能模块和扩充功能模块,其中应用功能模块包 括数字摄像机的控制采集图像到内存错误处理等功能扩充功能模块包括图像 数据的转换等功能。在Microsoft的32位Windows操作系统中,数字摄像 机应用接口库直接操作数字摄像机,并提供给用厂 个简单明确的应用找 口。用户在编制自己的应用程序时,可以直接调用这些库函数,来实现指园 的功能。常用库函数有: 参数:int nDevice:摄像机序号由I开始, IV *pHandle:指向摄像机设备句柄
实验二 图像二值化 实验目的 1、掌握利用 VC 采集一幅数字图像的基本方法; 2、加深了解阈值选择对图像结果的影响; 3、加深对图像灰度直方图概念的理解; 4、掌握基本的阈值确定方法。 实验原理 图像的二值化处理,就是讲图像上的各点原有的连续灰度(例如 0~255)置为最小(0)或最大(255),从而将一幅连续灰度变化的图象转 变为一幅黑白图像,且只有黑(灰度值为 0)与白(灰度值为 255),也就 是讲整个图像呈现出明显的黑白效果。经过二值化处理的图像,边缘轮廓非 常鲜明,可以达到突出目标、淡化背景的作用,适合于处理简单的目标和逻 辑判断。 图像二值化的基本方法,是先确定一个阈值,然后将所有象素点的 灰度同这个阈值进行比较。若灰度大于或等于阀值,其灰度值改为 255 表 示;反之,灰度值改为 0。因此,阈值的大小对二值化的处理效果具有直接 的、决定性的影响。对于同一幅图象而言,采用不同的阈值,二值化处理的 结果差异极为显著。一般而言,阈值越小,二值化后图像的白色区域(亮) 面积多,而黑色区域(暗)面积越少,这意味着一部分较暗的目标被改为背 景。反之,阈值越大,二值化处理后的白色区域越少,而黑色区域越多,意 味着部分较亮的目标被转变为背景。 灰度直方图(histogram)是灰度级的函数,它表示图象中具有每 种灰度级的象素的个数,反映图象中每种灰度出现的频率。灰度直方图的横 坐标是灰度级,纵坐标是该灰度级出现的频率,是图象的最基本的统计特 征。 常用的阈值确定方法有:双峰法、大津法、迭代法等。其中迭代法 由于具有明确的收敛性而普遍使用,其过程如下:① 选择一个初始阈值的 估算值 T ,比如图象灰度的均值就是一个较好的初始值;② 利用阈值 T 把图像分割成两组 R1 和 R2;③ 计算区域 R1 和 R2 的灰度均值 m 1 和 m 2;④ 选择新的阈值 T,等于区域 R1 和 R2 的均值 m 1 和 m 2 的平均 值;⑤ 重复②-④步,直到均值 m 1 和 m 2 不再变化为止。 此外,数字摄像机随机提供了较为完善的应用接口库,提供的应用 程序接口函数基本上概括了数字摄像机应用程序编程中涉及的各个方面。应 用接口库按照模块分为应用功能模块和扩充功能模块,其中应用功能模块包 括数字摄像机的控制采集图像到内存错误处理等功能扩充功能模块包括图像 数据的转换等功能。在 Microsoft 的 32 位 Windows 操作系统中,数字摄像 机应用接口库直接操作数字摄像机,并提供给用户一个简单明确的应用接 口。用户在编制自己的应用程序时,可以直接调用这些库函数,来实现指定 的功能。常用库函数有: 函 数:BeginHVDevice 原 型:HVSTATUS __stdcall BeginHVDevice (int nDevice,HHV *pHandle) 参 数:int nDevice:摄像机序号由 1 开始。 HHV *pHandle:指向摄像机设备句柄
版回值:调用成功.返回STATUS OK,否则返回错误代码 说明:开始指定摄像机操作初始化摄像机获得其设备句 分配相应的资源 函数:EndHVDev时ce 原型.HVSTATUS stdcall EndHVDevice HHV hhv 参数:Hhhv:摄像机句标 返回值:调用成功,返回STAT5OK, 否则返回错误代码。 说明:结束指定摄像机操作,释放其设备句柄和资源。 语用函数旅必须停止摄像机工作 如果摄像机正在采集图像时调用函数 则返回STATUS_.IN_O。 函数:HVSetResolution 原型:HVSTATUS stdcall HVSetResolution(HHV hhv. HY RESOLUITION resoultion) 参数:N:摄像机句柄 HW_RESOLUTION resolution:图像分辨率. 返回值:调用成功,返回STTS_OK,否则返回错误代码. 说明:设置摄俊机的分辨率RS0DE01280*1024,RSM0DE1640*512 RFS_M0DE2320*256 函数:HVSet0 utputWindow 原型:HVSTATUS_stdcall HSetOutputwindow(hhv,int nStartX int nStartY,int nWidth,int nHeight) 参数:v:摄像机句柄 int nStartX:输出窗口左上角x坐标数值应为4的倍数 int nStartY:输出窗口左上角y坐标数值应为2的倍数。 int nWidth:输出窗口宽度数值应为4的倍数, int nHeight:输出窗口高度数值应为2的倍数 返回值:调用成功,返回STATUS_OK, 否则返回错误代码 说明:设置图像输出Output窗口,输出窗口是指图像数据从摄像机输出 时起始位置和大小。窗口大小只能等于或小于当前分辨率的大小。 原型:HVSTATUS_stdcall HVSetSnapMode(HHV hhv,,HW_SNAP_MoDE mode): 参数:HHV hhy:摄像机句柄 HV_SNAP_.MODE mode:图像采集模式,CONTINUATION连续方式, TRIGGER外触发方式 TRIGGER_EDGE边缘外触发 TRIGGER_LEVEL电平外触发 返回值:调用成功,返回STATUS_0吓,否则返回错误代码 说明:设置图像的采集方式
返回值:调用成功,返回 STATUS_OK,否则返回错误代码。 说 明:开始指定摄像机操作初始化摄像机获得其设备句柄, 分配相应的资源 函 数:EndHVDevice 原 型:HVSTATUS __stdcall EndHVDevice HHV hhv 参 数:HHV hhv:摄像机句柄 返回值:调用成功,返回 STATUS_OK, 否则返回错误代码。 说 明:结束指定摄像机操作,释放其设备句柄和资源。 调用函数前必须停止摄像机工作, 如果摄像机正在采集图像时调用函数,则返回 STATUS_IN_WORK。 函 数:HVSetResolution 原 型:HVSTATUS __stdcall HVSetResolution(HHV hhv, HV_RESOLUTION resoultion); 参 数:HHV hhv:摄像机句柄。 HV_RESOLUTION resolution:图像分辨率。 返回值:调用成功,返回 STATUS_OK, 否则返回错误代码。 说 明:设置摄像机的分辨率 RES_MODE0 1280*1024,RES_MODE1 640*512, RES_MODE2 320*256 函 数:HVSetOutputWindow 原 型:HVSTATUS __stdcall HVSetOutputWindow (HHV hhv, int nStartX, int nStartY, int nWidth, int nHeight) 参 数:HHV hhv:摄像机句柄。 int nStartX:输出窗口左上角 x 坐标数值应为 4 的倍数。 int nStartY:输出窗口左上角 y 坐标数值应为 2 的倍数。 int nWidth:输出窗口宽度数值应为 4 的倍数。 int nHeight:输出窗口高度数值应为 2 的倍数。 返回值:调用成功,返回 STATUS_OK, 否则返回错误代码。 说 明:设置图像输出 Output 窗口。输出窗口是指图像数据从摄像机输出 时起始位置和大小。窗口大小只能等于或小于当前分辨率的大小。 函 数:HVSetSnapMode 原 型:HVSTATUS __stdcall HVSetSnapMode(HHV hhv,HV_SNAP_MODE mode); 参 数:HHV hhv:摄像机句柄 HV_SNAP_MODE mode:图像采集模式,CONTINUATION 连续方式, TRIGGER 外触发方式,TRIGGER_EDGE 边缘外触发, TRIGGER_LEVEL 电平外触发 返回值:调用成功,返回 STATUS_OK, 否则返回错误代码 说 明:设置图像的采集方式
函数:HVSetSnapSpeed l原型:HVSTATUSstdcall HVSetSnapSpeed(IHV hhv, HV_SNAP_SPEED speed): 参数:Whhv:摄像机句柄 HV_SNAP_SPEED s speed: 图像采集速度,NORMAL_SPEED正常速度 HIGH_SPEED高速 返回值:调用成功,返回STTS_OK,否则返回错误代码, 说明:设置图像的采集速度。 函数:VSnapShot 原型:HVSTATUS stdcall HVSnapShot HHV hhv,BTE**pp Buffer. int nSun 参数:Nhhv:摄像机句柄 BYTE *ppBuffer:图像数据缓冲区指针的列表 int nSum:图像数据缓冲区数目采集图像的数量 返回值:调用成功返回STATUS_OK否则返回错误代码 说明:摄像机采集若干帧图像数据到一组内存缓冲区中。图像数据缓冲区 数日和大小由采集图像的数量和尺寸决定,图像的宽度高度等于当前图像输 出窗口的宽度和高度,图像的大小(字节数)为:输出窗口宽病 函数:HV0 penSnap 原型:HVSTATUS stdcall HVOpenSnap(HHV hhy,HY SNAPPROC 参数:hhv:摄像机句柄 HW_SNAPPROC pSnapFunc:指向回调函数 void *pPara■:指向用户定义参数,参数对应于回调函数参制 HV_SNAP_INFO的字段pParam,,它是传递给回调函 数的。 返回值:调用成功,返回STTU5OK,否则返回错误代码。 说明:初始化摄像机采集图像到内存的控制,指定回调函数和用户定义的 参数,分配资源。在使用采集图像到内存的控制功能前,必须讲行 初始化。用户可以在回调函数中编写自己的程序,例知图像处理 程序、控制程序等。控制功能使用完毕调用HVC1 oseSnap关闭。 函数:HVCloseSnap 原型:HVSTATUS一stdcall HCloseSnap V hh 参数:hv:摄像机句柄 返回值:调用成功返回STATUS_OK,否则返回错误代码。 说明:关闭采集图像到内存的控制,释放申请的资源。 原型:HVSTATUS_stdcall HStart5nap(hv,BYTE*ppBuffer int nSun)
函 数:HVSetSnapSpeed 原 型:HVSTATUS __stdcall HVSetSnapSpeed (HHV hhv, HV_SNAP_SPEED speed); 参 数:HHV hhv:摄像机句柄 HV_SNAP_SPEED speed:图像采集速度,NORMAL_SPEED 正常速度, HIGH_SPEED 高速。 返回值:调用成功,返回 STATUS_OK, 否则返回错误代码, 说 明:设置图像的采集速度。 函 数:HVSnapShot 原 型:HVSTATUS __stdcall HVSnapShot HHV hhv, BYTE**pp Buffer, int nSum 参 数:HHV hhv:摄像机句柄。 BYTE **ppBuffer:图像数据缓冲区指针的列表。 int nSum:图像数据缓冲区数目采集图像的数量。 返回值:调用成功返回 STATUS_OK 否则返回错误代码 说 明:摄像机采集若干帧图像数据到一组内存缓冲区中。图像数据缓冲区 数目和大小由采集图像的数量和尺寸决定,图像的宽度高度等于当前图像输 出窗口的宽度和高度,图像的大小(字节数)为:输出窗口宽*高 函 数:HVOpenSnap 原 型:HVSTATUS __stdcall HVOpenSnap (HHV hhv, HV_SNAPPROC pSnapFunc, void *pParam) 参 数:HHV hhv:摄像机句柄。 HV_SNAPPROC pSnapFunc:指向回调函数 void *pParam:指向用户定义参数,参数对应于回调函数参数 HV_SNAP_INFO 的字段 pParam,它是传递给回调函 数的。 返回值:调用成功,返回 STATUS_OK, 否则返回错误代码。 说 明:初始化摄像机采集图像到内存的控制,指定回调函数和用户定义的 参数,分配资源。在使用采集图像到内存的控制功能前,必须进行 初始化。用户可以在回调函数中编写自己的程序,例如图像处理 程序、控制程序等。控制功能使用完毕调用 HVCloseSnap 关闭。 函 数:HVCloseSnap 原 型:HVSTATUS __stdcall HVCloseSnap HHV hhv 参 数:HHV hhv:摄像机句柄 返回值:调用成功返回 STATUS_OK, 否则返回错误代码。 说 明:关闭采集图像到内存的控制,释放申请的资源。 函 数:HVStartSnap 原 型:HVSTATUS __stdcall HVStartSnap (HHV hhv, BYTE **ppBuffer, int nSum)
参数:Nhv:摄像机句柄, :图像数据缓冲区指针的列表 nt nSun:图像数据缓冲区数目(采集图像的数量), 返回值:调用成功返回STATUS._OK,否则返回错误代码. 说明:启动摄像机循环采集若干图像到一组内存缓冲区的功能 图像数据缓冲区数目和大小由采集图像的数量和尺寸决定 采集图像到内存控制的初始化成功后,启动该功能,摄像机开始循环采集图 像数据到内存中,直到用户发出停止采集指令。在图像采集过程中,用户可 以通过回调函数运行自己的程序,执行图像数据访问,系统控制等操作。回 调函数的说明参见函数HVOpenSnap,停止摄像机采集操作调用函数 HVStopSnap 函数:HVStopSnap 原型:HVSTATUS stdcall HVStopSnap HHy hhy 参数:v:摄像机句柄 返回值:调用成功返回STATUS0K,否则返回错误代码, 说明:停止采集图像到内存。调用函数HVStartSnap可以再次启动采集。 更为详尽的说明,请参阅《数字摄像机软件开发说明书》 ()黑白数字摄像机:同前 (2)FA镜头:同前: (3)LD光题:同前: 实验仪器与设备 (3)视觉检测实验台:同前: ④被测试件标准环 (⑤)计算机:同前,包括大恒数字摄像机应用接口库。 ()打开计算机电源,运行计算机桌面上的摄像机演示程序de0,检查是否 可以捕获黑白图像。 (2)调整光源、被测物、镜头、数字摄像机,保证清渐成像,并使得被测轮 实验内容与过程 (④)对采集到的图像进行灰度直方图分析,给出直方图。 (⑤)利用任意一种方法,确定图形二值化阀值,并给出二值化图象 改变光源的亮度,由明到暗 分别进行阀值测试,观察二值化图象的变 化规律,考察阀值获取方法的可靠性和适应性。 将实验中保存的图像分别拷贝出来,放入下面的相应表格中,并将 实验报告 总结的现象和规律填入表格。 内容采集图象 灰度直方图
参 数:HHV hhv:摄像机句柄。 BYTE **ppBuffer:图像数据缓冲区指针的列表。 int nSum:图像数据缓冲区数目(采集图像的数量)。 返回值:调用成功返回 STATUS_OK, 否则返回错误代码。 说 明:启动摄像机循环采集若干图像到一组内存缓冲区的功能。 图像数据缓冲区数目和大小由采集图像的数量和尺寸决定。 采集图像到内存控制的初始化成功后,启动该功能,摄像机开始循环采集图 像数据到内存中,直到用户发出停止采集指令。在图像采集过程中,用户可 以通过回调函数运行自己的程序,执行图像数据访问,系统控制等操作。回 调函数的说明参见函数 HVOpenSnap,停止摄像机采集操作调用函数 HVStopSnap。 函 数:HVStopSnap 原 型:HVSTATUS __stdcall HVStopSnap HHV hhv 参 数:HHV hhv:摄像机句柄。 返回值:调用成功返回 STATUS_OK, 否则返回错误代码。 说 明:停止采集图像到内存。调用函数 HVStartSnap 可以再次启动采集。 更为详尽的说明,请参阅《数字摄像机软件开发说明书》 实验仪器与设备 (1) 黑白数字摄像机:同前; (2) FA 镜头:同前; (3) LED 光源:同前; (3) 视觉检测实验台:同前; (4) 被测试件:标准环规; (5) 计算机:同前,包括大恒数字摄像机应用接口库。 实验内容与过程 ; (1) 打开计算机电源,运行计算机桌面上的摄像机演示程序 demo,检查是否 可以捕获黑白图像。 (2) 调整光源、被测物、镜头、数字摄像机,保证清晰成像,并使得被测轮 廓占据约半个视场,且位置居中为宜。 (3) 利用 VC 语言编程,实现对数字摄像机的控制和图像采集。 (4) 对采集到的图像进行灰度直方图分析,给出直方图。 (5) 利用任意一种方法,确定图形二值化阈值,并给出二值化图象。 (6) 人工改变阈值大小,观察不同阈值下二值化图象的变化规律。 (7) 改变光源的亮度,由明到暗,分别进行阈值测试,观察二值化图象的变 化规律,考察阈值获取方法的可靠性和适应性。 实验报告 ; 将实验中保存的图像分别拷贝出来,放入下面的相应表格中,并将 总结的现象和规律填入表格。 内容 采集图象 灰度直方图
结果 直方图 分析 现象 规律 内容 值化图 二值 结果 处理 序号 值 不同阀值影 实验 二值化图像 现象 规律 序号 次 亮度 不同亮度影响 实验 值化图像 现象 规使
直方图 分析 结果 现象 规律 二值化 处理 内容 阈值 二值化图象 结果 现象 规律 不同阈值影响 实验 序号 第一次 第二次 第三次 阈值 二值化图像 现象 规律 不同亮度影响 实验 序号 第一次 第二次 第三次 亮度 阈值 二值化图像 现象 规律