机器视觉检测的分析简答作业及答案要点Word文件下载.docx
《机器视觉检测的分析简答作业及答案要点Word文件下载.docx》由会员分享,可在线阅读,更多相关《机器视觉检测的分析简答作业及答案要点Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
![机器视觉检测的分析简答作业及答案要点Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-11/24/d981ef1f-43b9-4958-a79e-55895b2c5e38/d981ef1f-43b9-4958-a79e-55895b2c5e381.gif)
亮度
稳定度
使用寿命
复杂设计
温度影响
荧光灯
低
差
一般
卤素灯+光纤导管
高
好
LED
光源
3、机器视觉检测技术中:
光源的种类有哪些?
不同光源的特点是什么?
光
照方式有几种?
不同光照方式的用途是什么?
又和技术特点和要求?
机器视觉检测技术中光源有以下几种:
荧光灯,卤素灯+光纤导管,
背景光法(背光照射)是将被测物置于相机和光源之间。
这种照明方式的优点
是可将被测物的边缘轮廓清晰地勾勒出来。
由于在图像中,被测物所遮挡的部
分为黑色,而未遮挡的部分为白色,因此形成“黑白分明”的易于系统分析的
图像。
此方法被应用于
90%的测量系统中。
前景光法(正面照射)是将灯源置于被测物和相机之前。
又可分为明场照射和
暗场照射。
明场照射是为了获得物体的几乎全部信息,照射物体的光在视野范
围之内几乎全部反射回去;
暗场照射是为了获取物体表面的凹凸,照射物体的
光在视野范围之外有部分光反射回去。
同轴光法是将灯源置于被测物和相机之间。
4、机器视觉检测系统中,光学系统的作用是什么?
光学器件有哪几种,它
们各自的作用是什么?
光学镜头有几种类型,它们各自有何用途?
光学
镜头有哪些技术参数,各自对测量有什么影响?
机器视觉检测系统中,光学系统用来采集物体的轮廓、色彩等
信息。
光学器件主要有:
镜头、成像器件(CCD
和
CMOS)、光圈、快门
等。
镜头的作用是对成像光线进行调焦等处理,使成像更清晰;
成像器
2
件的作用是将光学图像转换成模拟电信号;
光圈的作用如同人得瞳孔,
控制入射光的入射量,实现曝光平衡;
快门的作用是将想要获取的光学
图像照射在成像器件上,获取想要的光学图像,排除干涉等。
光学镜头的类型:
标准镜头、广角镜头、远摄镜头、鱼眼镜头、反
射式镜头、变焦镜头和特殊镜头等。
标准镜头的作用是获取和人眼观看效果类同的图像;
广角镜头的
作用是近距离拍摄较大场景的图像;
远摄镜头的作用是远距离摄取景物
的较大影象,对拍摄不易接近的物体,如动物、风光、人的自然神态,
均能在远处不被干扰的情况下拍摄;
鱼眼镜头的作用是近距离拍摄更大
场景的图像;
反射式镜头的作用是更远距离摄取物体图像;
变焦镜头的
作用是在不改变拍摄距离的情况下,能够在较大幅度内调节底片的成像
比例。
光学镜头的技术参数有分辨率,失真,透光,暗角盲区。
5、光电转换器件
CCD
CMOS
的作用是什么?
各自的工作原理是什么,
它们的差别是什么?
它们有哪些主要的技术参数,其作用是什么?
光电转换器件
的作用是作为半导体光敏元件把光信号转
换为电信号。
CCD(Charge—Coupled
Demce)电路耦合器件的工作原理:
电路
耦合器分三个阶段采集图像信号,首先将光信号转换为电信号,然后暂时存放
在
存储器中,最后用时钟脉冲顺序读出信号。
CMOS(Complement
Metal
Oxide
Semiconuctor)是互补金属氧化物场效应的简称,其工作原理为:
传感器中每一个感光元件都直接整合了放大器和模数转换逻辑,当感光
二极管接受光照、产生模拟的电信号之后,电信号首先被该感光元件中的放大
器放大,然后直接转换成对应的数字信号。
换句话说,在
传感器中,每
一个感光元件都可产生最终的数字输出,所得数字信号合并之后被直接送交
DSP
芯片处理。
从技术角度来讲二者的主要区别如下:
(a)信息读取方式不同;
(b)
速度有所差别;
(c)电源及耗电量;
(d)成像质量
3
主要参数:
或
尺寸
、CCD
像素、水
平分辨率、最小照度,也称为灵敏度、
扫描制式、摄像机电源、信噪比、视频
输出接口、镜头安装方式。
6、机器视觉检测技术中,图像处理的中心任务是什么?
什么是图像预处理,
能否说出几种与处理的方法和算法?
边缘检测和边缘提取有何区别?
图
像分割有几种方法?
如何理解图像处理中的卷积?
能否描述空间域处理
和变换域处理的方法和用途?
机器视觉检测技术中,图像处理的中心任务是消除图像中无关的信息,
恢复有用的真实信息,增强有关信息的可检测性和最大限度地简化数据,从而
改进特征抽取、图像分割、匹配和识别的可靠性。
图像预处理即在图像分析中,对输入图像进行特征抽取、分割和匹配前
所进行的处理。
是将每一个文字图像分检出来交给识别模块识别的这一过程。
边缘检测使用数学方法提取图像像元中具有亮度值(灰度)空间方向梯
度大的边、线特征的过程。
边缘提取是要保留图像弧度变化比较剧烈的区域,
从数学上最直观的方法就是微分(对于数字图像来说就是差分),在信号处理的
角度来看,也可以说是高通滤波器,即保留高频信号。
图象分割有三种不同的方法,其一是将各象素划归到相应物体或区域的
象素聚类方法即区域法,其二是通过直接确定区域间的边界来实现分割的边界
方法,其三是首先检测边缘象素再将边缘象素连接起来构成边界形成分割。
像分割主要包括
4
种技术:
并行边界分割技术、串行边界分割技术、并行区域
分割技术和串行区域分割技术。
图像处理中的卷积就是定义图像是
f(x),模板是
g(x),然后将模版
g(x)在
图像中移动,每到一个位置,就把
f(x)与
g(x)的定义域相交的元素进行乘积并且
求和,得出新的图像一点(通常是灰度值),把新得到的像素集合起来就是卷积
后的图像。
空间域是指图像本身,空间域图像处理的方法是直接对图像的像素进行
处理,主要是亮度(灰度级)变换和空间滤波两种方法。
7、机器视觉算法中,你能说出几种与检测有关的方法,能否实践一种算法
4
用于机器视觉检测(如:
各阶矩的应用等)?
Canny
边缘检测方法,差分边缘检测法,roberts
边缘检测法,prewitt
边缘检测法,laplace
边缘检测法,log
边缘检测法等算法。
下面实现一种基于
c++软件语言的程序算法:
HDIB
SUSANEdgeDetectDIB(HDIB
hDib){
SetCursor(LoadCursor(NULL,
IDC_WAIT));
DWORD
dwDataLength
=
GlobalSize(hDib);
hNewDib
GlobalAlloc(GHND,dwDataLength);
if(!
hNewDib){
IDC_ARROW));
return
NULL;
}
LPBYTE
lpDIB
(LPBYTE)GlobalLock(hNewDib);
if(lpDIB
==
NULL){
lpDIBSrc
(LPBYTE)GlobalLock(hDib);
memcpy(lpDIB,
lpDIBSrc,
sizeof(BITMAPINFOHEADER)+PaletteSize(lpDIBSrc));
lSrcWidth
DIBWidth(lpDIBSrc);
lSrcHeight
DIBHeight(lpDIBSrc);
WORD
wBitCount
=((LPBITMAPINFOHEADER)lpDIBSrc)->
biBitCount;
lSrcRowBytes
=WIDTHBYTES(lSrcWidth*((DWORD)wBitCount));
lpOldBits
FindDIBBits(lpDIBSrc);
lpData
FindDIBBits(lpDIB);
5
//图像变换开始//////////////////////////////////////////
i,
j,
h,
k,
offset;
int
NearPoint[37];
OffSetX[37]
{
-1,
0,
1,
-2,-1,
1,
2,
-3,-2,-1,
2,
3,
1
};
OffSetY[37]
-3,-3,-3,
-2,-2,-2,-2,-2,
-1,-1,-1,-1,-1,-1,-1,
0,
3,
3
if(wBitCount
8){
thre,
same,
max,
min;
//统计象素亮度最大值和最小值
max
min
0;
for(i=0;
i<
lSrcHeight;
i++)
for(j=0;
j<
lSrcWidth;
j++){
offset
lSrcRowBytes*i+j;
if(max
<
(int)(*(lpOldBits+offset)))
(int)(*(lpOldBits+offset));
if(min
>
6
//相似度阈值为最大值和最小值差的
1/10
thre
(max-min)/10;
for(i=3;
lSrcHeight-3;
for(j=3;
lSrcWidth-3;
//统计圆形邻域内相似的点的个数
same
for(h=0;
h<
37;
h++)
NearPoint[h]
=(int)(*(lpOldBits+lSrcRowBytes*(i+OffSetY[h])+(j+OffSetX[h])));
if(((int)abs(NearPoint[h]-NearPoint[18]))
thre)
same++;
if(same
27)
*(lpData+lSrcRowBytes*i+j)
255;
else
24){
theSame[3],
theMax[3],
theMin[3],
theThre[3];
memset(theMax,
sizeof(int)*3);
memset(theMin,
lSrcRowBytes*i+j*3;
for(k=0;
k<
3;
k++){
7
if(theMax[k]
(int)(*(lpOldBits+offset+k)))
theMax[k]
(int)(*(lpOldBits+offset+k));
if(theMin[k]
theMin[k]
k++)
theThre[k]
(theMax[k]-theMin[k])/10;
memset(theSame,
=(int)(*(lpOldBits+lSrcRowBytes*(i+OffSetY[h])+(j+OffSetX[h])*3+k));
theThre[k])theSame[k]
++;
if((theSame[0]
27)
&
(theSame[1]
(theSame[2]
27))
memset(lpData+lSrcRowBytes*i+j*3,
255,
3);
else
GlobalUnlock(hDib);
GlobalUnlock(hNewDib);
8
hNewDib;
8、你编写并运行通过了哪些图像处理的计算机程序程序,能否写出流程图?
运用
matlab
编写过读取原始图像,对图像进行灰度处理,对灰度图像进行
直方图、均值滤波、中值滤波、图像锐化、表面边缘检测及提取等程序。
灰度处理
直方图均值滤波中值滤波图像锐化表面边缘检测
9、综合机器视觉检测技术课程内容,在设计一个机器视觉检测系统时,设
计过程应如何进行,需重点考虑什么问题?
1)选取合理的光源;
2)选取合适的镜头;
3)选取合适的信息处理系统;
4)设计合理的检测控制系统;
5)针对用户需求根据软件设计相对应的程序。
个人觉得应该重点考虑光照的方式和图像提取的方法,合理的光
照可以让采集系统得到高质量的图像,简化软件算法,提高检测速度。
合适的提取方法可以是任务完成的更轻松出色!
同时,由于机器视觉是一种比较复杂的系统,大多数系统检测对
象都是运动的物体,系统与运动物体的匹配和协调动作尤为重要,所
以系统给各部分的动作时间和处理速度带来了严格的要求。
9
10、机器视觉检测技术的输入、输出接口有哪些,其各自的特点及用途可否
描述?
Camera
Link,IEEE
1394,USB2.0,Ethernet,USB3.0
Link
680Mb/s
IEEE
1394400Mb/s
USB2.0
480Mb/s
Ethernet
1Gb/s
规范由自动图像协会(AIA)提供支持,对摄像机接口、电缆和
抓帧器进行了标准化,用于转换摄像机数据,通常通过
PCITM
或者
PCIe®
总线
将数据传送至计算机。
相比于
USB
接口,早期在
USB1.1时代,1394a
接口在速度上占据了很大的
优势,在
USB2.0推出后,1394a
接口在速度上的优势不再那么明显。
同时现在
绝对多数主流的计算机并没有配置1394接口,要使用必须要购买相关的接口卡
,增加额外的开支。
目前单纯1394接口的外置式光储基本很少,大多都是同时
带有1394和
接口的多接口产品,使用更为灵活方便。
USB2.0虽然标称速度可以,但事实上大多数厂商对高速状态下的
传输
支持的还是很差,他们只满足于民用级别的传输,很难达到工业用的标准,13
94相对成熟多了,不管从速度还是底层
driver
来看,目前我看到的,1394比
U
SB
好很多。
11、你参与了图像采集实验吗?
有何体会?
参与了一些简单的图像采集实验,比如用摄像头采集一幅图像,然后进
行图像的各种处理,如果摄像头是黑白摄像头那么采集图像后就可以对图像进
行二值、锐化、平滑、边缘检测及提取等处理,摄像头要是彩色的就要先把图
像转化为灰度图像再对图像进行各种处理。
参与了这些图像采集实验后我觉得
图像采集实验重在后期处理上当然前期采集图像也很重要,所以我们要更加努
力学习
及
c++还有
VC
中涉及到图像处理的部分,为以后遇到更难更复
杂的图像采集实验时打下坚实的基础。
12、你对本课程学习有何体会(自学和课堂)、收获和建议?
感觉自己还差的好多,以后还要多加学习,不会的要及时请教学长或者
老师。
上完这门课程感觉收获还是蛮大的,许老师给我们看了许多国际上先进
的产品,更加激励了我们在课下继续好好学习这门课程,建议就是老师再有什
么好的学习资料时希望老师可以继续提供给我们。
10
二、选择光源和镜头
1、若给出被测物体的长、宽、高及测量精度,你如何选择
和镜头
组成的摄像机,以保证完成测量任务。
说出计算公式、流程及过程。
首先,选好镜头。
镜头的选择遵循以下七个原则:
1)相机的芯片尺寸;
2)相机接口类型;
3)镜头工作距离;
4)镜头视场角;
5)镜头光谱特性;
6)镜头畸变率;
7)镜头机械结构尺寸。
然后,选择
的选择综合考虑如下五个方面:
1)感光芯片类型:
线阵、面阵;
2)视频特点:
包括点频、行频;
3)信号输出结口;
4)工作模式
:
连续,
触发,控制
异步复位,长时间积分;
5)视频参数调整及控制方法:
Manual、RS232。
同时,选择
的时候应注意,1inch=16mm
而不是等于
25.4mm。
①
体最小的特征需要两个像素来表示,根据视场和相机分
辨率,我们可以计算出特征分辨率。
计算特征分辨率的
公式为:
特征分辨率=视场/(分辨率*
2)。
例如:
相机
分辨率为
640
x
480,横向的视场是
60mm,那么在横
向的特征分辨率为:
60/640*2
0.1875
mm。
看是否满
足测量精度要求,或者反求相机分辨率来选择
②
根据测量需求选择合适的
面阵相机的优点是价
格便宜,处理方面,可以直接获得一幅完整的图像。
线
阵相机的优点是速度快,分辨率高,可以实现运动物体
11
的连续检测;
其缺点是需要拼接图像的后续处理。
三、设计测量系统
实验
1利用机器视觉图像信息,测量物体的几何尺寸及相关参数,并
对图像中每个物体进行分割。
(1)
实验目的:
理解机器视觉检测原理和方法
(2)
实验步骤:
a、
调“笔、放大镜、光盘”图像文件——显示该图像——设计一种
测量计算方法和算法:
1、
计算放大镜圆的尺寸和手柄长度;
2、
计算光盘的外部周长、直径和面积;
3、
计算笔的长度及直径。
b、调“卡片、笔、桌底”图像——显示该图像——设计一种测量计
算方法和算法:
1、计算卡片的面积和长、宽值;
2、计算笔的长度;
c、记录、打印参数,分析测量误差。
d、对图像中的物体进行分割。
e、写出实验报告
(3)
如果让你自动识别图像中的物体,如何进行,给出方案。
笔、放大镜、光盘卡片、笔、桌底
四、图像处理软件开发
1、利用
MATLAB
提供的图像,完成图像的存取、像素的读写、直方图、
二值图像、图像平滑、图像锐化、表边缘检测及提取等程序(可用
12
C
Matlab),都要有流程图和源代码;
2、集成以上程序,建立
GUI
或其它窗口比并可运行这些程序。
13