- 1、本文档共25页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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)
图像旋
您可能关注的文档
- 2.9保险合同的解除与终止.ppt
- 2.9自加、自减运算符和逗号运算符.ppt
- 2.10保险合同的解释与争议处理.ppt
- 2.11.1MongoDB文档查询与修改.ppt
- 2.11质量管理与质量强国.ppt
- 2.电气电路检查原理与方法.ppt
- 2.函数(FC)的创建方法及应用.ppt
- 2.客户分析与打标.ppt
- 2.三相异步电动机接触器互锁正反转运行控制线路.ppt
- 2.移动操作指令原理及应用.ppt
- 数字化评价在激发小学生科学学习兴趣中的应用策略研究教学研究课题报告.docx
- 高中物理课程中核心素养培养的师资队伍建设研究教学研究课题报告.docx
- 历史史料实证在初中历史教学中的实施策略与教学效果评价教学研究课题报告.docx
- 《个性化推荐系统对在线旅游平台用户信任感的影响研究》教学研究课题报告.docx
- 人工智能在高中信息技术教学中培养学生创新能力的实证研究教学研究课题报告.docx
- 城乡教育资源配置不均下的人工智能教育公平促进策略研究教学研究课题报告.docx
- 城市公共交通对初中生出行便利性与出行时间节约影响分析教学研究课题报告.docx
- 初中合唱团梯队建设与音乐教育信息化应用研究教学研究课题报告.docx
- 高中美术馆校合作模式下的教学评价与反馈研究教学研究课题报告.docx
- 《SDN数据中心网络流量工程与资源调度策略研究》教学研究课题报告.docx
文档评论(0)