网站大量收购独家精品文档,联系QQ:2885784924

2-3_图像几何变换.pptx

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

计算机视觉基础知识图像几何变换

目录CONTENTS图像平移图形镜像操作图像缩放图像旋转图像仿射变换

01图像平移

图像平移(1)效果图像平移,就是把图像整体向某个方向移动,右边的图是把图像向右移动100个像素的效果。左侧是原来的图像,右侧是移动之后的图像。

图像平移(2)读取图像代码:img=cv2.imread(lena.jpg)(3)创建新的图像空间新图像的大小与原始图像大小相同:img2=np.zeros(img.shape,np.uint8)zeros是numpy提供的创建并初始化数组的函数,把数组的元素都设置为0,第1个参数表示创建的数组的大小,这里img.shape表示原始图像的大小,例如(256,256,3),也可以直接指定数组的大小,np.uint8表示生成的数组的元素类型uint8,用于表示图像的像素值,范围是0到255。

图像平移(4)复制图像img.shape[0]表示图像的行数,foriinrange(img.shape[0])表示对所有行进行遍历img.shape[1]表示图像的列数,forjinrange(img.shape[1]-100)表示对循环的次数是列数减去100img2[i,j+100]=img[i,j]表示把img的第i行第j列复制到img2的第i行,第j+100列。得到一副图像的副本image.copy()foriinrange(img.shape[0]):forjinrange(img.shape[1]-100):img2[i,j+100]=img[i,j]

图像平移(5)输出图像为了对比,使用np的hstack把两张图片合在一起,使用imshow显示图片。img3=np.hstack([img,img2])cv2.imshow(显示图像,img3)

02图像镜像

图像镜像(1)左右镜像效果

图像镜像实现镜像foriinrange(img.shape[0]):forjinrange(img.shape[1]):img2[i,j]=img[i,j]img2[i,img.shape[1]*2-j-1]=img[i,j]

图像镜像(5)使用OpenCV中的flip函数OpenCV中提供了专门的镜像的函数:flip(img,type,dst=None)img表示要做镜像操作的图像;type表示镜像操作的类型,值为1表示水平镜像,值为0表示垂直镜像,值为-1表示对角镜像。dst表示镜像的结果图像,也可以使用返回值表示镜像的结果。

图像镜像#水平镜像horizontal=cv2.flip(img,1,dst=None)#垂直镜像vertical=cv2.flip(img,0,dst=None)#对角镜像cross=cv2.flip(img,-1,dst=None)

03图像缩放

图像缩放resize函数cv2.resize(src,dsize,dst=None,fx=None,fy=None,interpolation=None),各参数含义如下:src,表示原始图像;dsize,表示缩放之后的图像大小;fx,表示沿水平轴的比例因子fy,表示沿垂直轴的比例因子interpolation,表示插值方法。

图像缩放插值方法INTER_NEAREST:最邻近插值INTER_LINEAR:双线性插值,如果不指定插值方式,默认使用这种方法INTER_AREA:区域插值,基于像素区域关系INTER_CUBIC:采用双三次样条插入INTER_LANCZOS4:兰索斯插值,由相邻的8*8像素计算得出,公式类似于双线性速度比较:INTER_NEAREST(最近邻插值)INTER_LINEAR(线性插值)INTER_CUBIC(三次样条插值)INTER_AREA(区域插值)如果要缩小图像,通常使用INTER_AREA插值效果最好而要放大图像,通常使用INTER_CUBIC,速度较慢,但效果最好,也可以使用INTER_LINEAR,速度较快,效果还可以,一般不推荐使用INTER_NEAREST。

04图像旋转

图像旋转旋转效果

图像旋转创建旋转矩阵创建一个旋转矩阵,使用cv2.getRotationMatrix2D()函数第一个参数表示需要旋转的中心点第二个参数表示需要旋转的角度第三个参数表示需要缩放的比例。例如:旋转的中心是原来图像的中心点,旋转的角度是30°,缩放比例是1。rotate=cv2.getRotationMatrix2D((height*0.5,width*0.5),30,1)

图像旋

文档评论(0)

vermonth155-2娟 + 关注
实名认证
内容提供者

专注ppt课件

版权声明书
用户编号:8046135067000064

1亿VIP精品文档

相关文档