33.图像基础操作 (1).pptx

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

机器视觉技术及应用图像基础操作主讲人:王肖

主要内容:获取和修改像素值拆分及合并图像通道图像扩边机器视觉技术及应用——图像基础操作

1.获取像素值导入一张空白的图像。importcv2importnumpyasnpimg=cv2.imread(‘1.jpg’)(x,y,z)=img.shape#获取这张图像的属性print(img[int(x/2),int(y/2)])#获取这张图像中间像素点的像素值机器视觉技术及应用——图像基础操作

1.获取像素值运行结果:机器视觉技术及应用——图像基础操作

1.获取像素值物体检测:需求分析:检测图像的边缘位置存在一个黑色规则物体(其余部分为白色),我们需要检测这个黑色物体位于图像的哪个角。解决方法:可以通过获取4个特征点的方法得到黑色物体位于哪个角。机器视觉技术及应用——图像基础操作

1.获取像素值代码:#导入图像importcv2importnumpyasnpimg=cv2.imread(1.jpg)机器视觉技术及应用——图像基础操作

1.获取像素值#设立特征点(x,y,z)=img.shape(x1,y1,z1)=img[int(x/4),int(y/4)]#左上角的中心(x2,y2,z2)=img[int(x*3/4),int(y/4)]#左下角的中心(x3,y3,z3)=img[int(x/4),int(y*3/4)]#右上角的中心(x4,y4,z4)=img[int(x*3/4),int(y*3/4)]#右下角的中心机器视觉技术及应用——图像基础操作

1.获取像素值#位置判断ifx1==0:print(在左上角)elifx2==0:print(在左下角)elifx3==0:print(在右上角)elifx4==0:print(在右下角)机器视觉技术及应用——图像基础操作

1.获取像素值运行结果:机器视觉技术及应用——图像基础操作

2.拆分及合并图像通道拆分图像通道:使用函数cv2.split函数。※其语法为cv2.split(img)※其参数img表示要拆分的图像。该函数的返回值为每个单独拆分的通道。合并图像通道:使用cv2.merge函数。如:cv2.merge(b,g,r)机器视觉技术及应用——图像基础操作

2.拆分及合并图像通道img=cv2.imread(2.jpg,1)(b,g,r)=cv2.split(img)cv2.imshow(img1,b)cv2.imshow(img2,g)cv2.imshow(img3,r)cv2.waitKey(0)Im=cv2.merge((b,g,r))cv2.imshow(merge,Im)cv2.waitKey(0)cv2.destroyAllWindows()机器视觉技术及应用——图像基础操作

2.拆分及合并图像通道运行结果:机器视觉技术及应用——图像基础操作

3.图像扩边在原有图像的基础上扩一层外边。使用函数cv2.copyMakeBoder函数。※其语法为cv2.copyMakeBoder(src,top,bottom,left,right,boderType)※其参数的解释为机器视觉技术及应用——图像基础操作src:输入图像top:上轮廓填充的像素点数目bottom:下轮廓填充的像素点数目left:左轮廓填充的像素点数目right:右轮廓填充的像素点数目boderType:添加轮廓的类型

3.图像扩边图像扩边的轮廓类型如下:机器视觉技术及应用——图像基础操作cv2.BORDER_CONSTANT添加有颜色的常数值轮廓,同时还需要一个参数value。如添加白色的轮廓的代码:value=[255,255,255]cv2.BORDER_REFLECT产生的边框是完全的镜像,例如dcba||abcd||dcba式添加轮廓。cv2.BORDER_REFLECT_101或者cv2.BORDER_DEFAULT产生的边框属于近完全镜像cv2.BORDER_REPLICATE周围边框采用和它相邻的像素点作为扩边cv2.BORDER_WRAR进行两个边缘调换的复制操作。

3.图像扩边代码:img=cv2.imread(11.jpg)img=cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_CONSTANT,value=(255,255,255))cv2.imshow(img,img)cv2.waitKey(0)cv2.destroyAllWindows()机器视觉技术及应用——图像基础操作

3.图像扩边运行结果:机器视觉技术及应用——图像基础操作

谢谢观看

文档评论(0)

方世玉 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6101050130000123

1亿VIP精品文档

相关文档