5-2.项目五 人工智能+智能制造:机器人颜色识别-图像基本运算和平滑滤波_第1页
5-2.项目五 人工智能+智能制造:机器人颜色识别-图像基本运算和平滑滤波_第2页
5-2.项目五 人工智能+智能制造:机器人颜色识别-图像基本运算和平滑滤波_第3页
5-2.项目五 人工智能+智能制造:机器人颜色识别-图像基本运算和平滑滤波_第4页
5-2.项目五 人工智能+智能制造:机器人颜色识别-图像基本运算和平滑滤波_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

人工智能+智能制造机器人颜色识别项

五《人工智能技术应用导论》12目录机器人眼中的颜色颜色模型的介绍3平滑滤波4图像基本运算56形态学处理OpenCV颜色识别图像基本运算操作3

图像基本运算图像基本运算原理图像通过矩阵运算处理,因此可以进行加减乘除等基本运算,在OpenCV图像处理库中,也提供了相应的图像处理算术运算符。

图像运算方式图像运算需尺寸类型一致,图像的基本运算只能对单通道图像进行处理,如灰度图像,而彩色图像为三通道,不能够直接进行操作,需要将彩色图像的三个通道分离开,再进行运算。图像经过颜色识别后,显示的是二值化的图像,非黑即白,需要用到图像的基本运算操作表达出原来的颜色特征。常用的图像基本运算,主要有加,减,乘,除,平方根,对数,绝对值等,对应OpenCV库

图像基本运算图像加法cv2.add(src1,src2,dst,mask,dtype)实现dst=src1+src2mask为掩模,dtype数据类型,默认为-1

图像减法cv2.subtract(src1,src2,dst,mask,dtype)实现dst=src1-src2mask为掩模,dtype数据类型,默认为-1

图像基本运算图像乘法cv2.multiply(src1,src2,dst,scale,dtype)实现dst=scale*src1*src2scale为比例

图像权重加法cv2.addWeighted(src1,alpha,src2,beta,gamma,dst,dtype)实现dst=alpha*src1+beta*src2+gamma

图像除法cv2.divide(src1,src2,dst,scale,dtype)实现dst=scale*src1/src2scale为比例图像基本运算

图像“异或”操作cv2.bitwise_xor(src1,src2,dst,mask)实现dst=~src

图像“非”操作cv2.bitwise_not(src,dst,mask)实现dst=src1^src2图像按位操作的函数可以直接对图像进行操作。主要有bitwise_and、bitwise_or、bitwise_xor、bitwise_not四个按位操作函数。

图像“或”操作cv2.bitwise_or(src1,src2,dst,mask)实现dst=src1|src2输出图像的并集。

图像“与”操作cv2.bitwise_and(src1,src2,dst,mask)实现dst=src1&src2输出图像的交集平滑滤波4

平滑滤波1.均值滤波用当前像素点周围N*N个像素值的均值来代替当前像素值,并遍历处理图像内的每一个像素点代码是:dst=cv2.blur(src,ksize[,anchor][,borderType]),dst进行均值滤波后得到的处理结果src原始图像。可以有任意数量的通道,并能对各个通道独立处理。图像深度有CV_8U/16U/16S/32F/64Fksize是滤波核的大小。指其邻域图像的高度和宽度anchor是锚点,默认值(-1,-1),当前计算均值的点位于核的中心点位置borderType是边界样式

2.方框滤波在尽量保留图像原有信息的情况下,过滤掉图像内部的噪声,这一过程称为对图像的平滑处理,所得的图像称为平滑图像。在方框滤波中,可以自由选择是否对均值滤波的结果进行归一化,即可以自由选择滤波结果是邻域像素值之和的平均值,还是邻域像素值之和。代码是:dst=cv2.boxFilter(src,ddepth,ksize[,anchor][,normalize][,borderType]),参数与均值滤波相似不同的是depth是处理结果图像的图像深度,一般使用-1表示与原始图像使用相同的图像深度normalize表示在滤波时是否进行归一化,当参数normalize=1时,表示要进行归一化处理,要用邻域像素值的和除以面积;当参数normalize=0时,表示不需要进行归一化处理,直接使用邻域像素值的和

平滑滤波3.高斯滤波在高斯滤波中,会将中心点的权重值加大,远离中心点的权重值减小,在此基础上计算邻域内各个像素值不同权重的和。代码是:dst=cv2.GaussianBlur(src,ksize,sigmaX,sigmaY,borderType),参数与均值滤波相似,不同的是sigmaX是卷积核在X轴方向的标准差,其控制的是权重比例sigmaY是卷积核在Y轴方向的标准差。如果将该值设置为0,则只采用sigmaX的值;如果sigmaX和sigmaY都是0,则通过ksize.width和ksize.height计算得到。在实际处理中,可以显式指定sigmaX和sigmaY为默认值0

4.中值滤波中值滤波用邻域内所有像素值的中间值来替代当前像素点的像素值。代码是dst=cv2.medianBlur(src,ksize),其参数与均值滤波相似。值得注意的是,由于没有进行均值处理,中值滤波不存在均值滤波等滤波方式带来的细节模糊问题。在中值滤波处理中,噪声成分很难被选上,所以可以在几乎不影响原有图像的情况下去除全部噪声。但是由于需要进行排序等操作,中值滤波需要的运算量较大。

平滑滤波5.双边滤波综合考虑空间信息和色彩信息的滤波方式,能够有效地保护图像内的边缘信息,但去除噪声的效果并不好。代码是:dst=cv2.bilateralFilter(src,d,sigmaColor,sigmaSpace[,borderType]),其参数与均值滤波相似,不同的是d是在滤波时选取的空间距离参数sigmaColor是滤波处理时选取的颜色差值范围,该值决定了周围哪些像素点能够参与到滤波中来。sigmaSpace是坐标空间中的sigma值。为了简单起见,可以将sigmaColor和sigmaSpace值设置为相同的。

6.二维卷积使用自定义卷积核实现卷积操作。代码是:dst=cv2.filter2D(src,ddepth,kernel[,anchor][,delta][,borderType]),其参数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论