python中imutils包怎么用

  介绍

这篇文章主要介绍python中imutils包怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1。imutils功能简介

imutils是在OPenCV基础上的一个封装,达到更为简结的调用OPenCV接口的目的,它可以轻松的实现图像的平移,旋转,缩放,骨架化等一系列的操作。

安装方法:

pip安装imutils

在安装前应确认已安装numpy, scipy, matplotlib和OPenCV。

如果出现缺失包错误

可以使用下面安装命令,会把所有包安装

pip安装numpy scipy opencv-python matplotlib imutils

2. imutils的使用方法

,

2.1图像平移

相对于原来的简历,使用imutiles可以直接指定平移的像素,不用构造平移矩阵

OPenCV中也提供了图像平移的实现,要先计算平移矩阵,然后利用仿射变换实现平移,在imutils中可直接进行图像的平移。

翻译=imutils.translate (img, x, y)

参数:

<李>

img:要移动的图像

<李>

x:沿x轴方向移动的像素个数

<李>

y:沿y轴方向移动的像素个数

运行代码说明:

要更改图片地址,地址中不能包含中文

简历读取图片是BGR格式,img[::,:: 1]转换是为了转回RGB格式,这样才可以正常显示彩色图像

import  numpy  as  np   import  cv2  as 简历   import  imutils   import  matplotlib.pyplot  as  plt   plt.rcParams [& # 39; font.sans-serif& # 39;]=[& # 39; SimHei& # 39;], #用来正常显示中文标签   plt.rcParams [& # 39; axes.unicode_minus& # 39;]=False  #用来正常显示负号         时间=img  cv.imread (& # 39; image1.jpg& # 39;),, #,更改图片地址   时间=translated  imutils.translate (img、100、50),, #,平移函数      plt.figure ()   plt.subplot (121)   plt.imshow (img [::,:: 1]),, #, img[::,:: 1]转换是为了转回RGB格式,这样才可以正常显示彩色图像   plt.title(& # 39;原图& # 39;)   plt.subplot (122)   plt.imshow(翻译[::,::1)   plt.title(& # 39;平移结果& # 39;)   plt.show ()

 python中imutils包怎么用“> </p> <p> 2.2图像缩放</p> <p>图片的缩放在OPenCV中要注意确保保持宽高比。而在imutils中自动保持原有图片的宽高比,只指定宽度体重和身高即可。</p> <p>缩放函数:imutils.resize (img,宽度=100)</p> <pre类= import  numpy  as  np   import  cv2  as 简历   import  imutils   import  matplotlib.pyplot  as  plt   plt.rcParams [& # 39; font.sans-serif& # 39;]=[& # 39; SimHei& # 39;], #用来正常显示中文标签   plt.rcParams [& # 39; axes.unicode_minus& # 39;]=False  #用来正常显示负号         时间=img  cv.imread (& # 39; image1.jpg& # 39;)   #,说明一般如果有宽度参数,就会安装宽度参数进行缩放,不会理会高度参数,如果两个参数不成比例,也是安装宽进行缩放   时间=resized  imutils.resize (img,宽度=100),,#,指定宽度,会自动计算相应比例高度,还有参数高         打印(& # 39;原图大小:& # 39;,img.shape)   打印(& # 39;缩放后大小& # 39;,,resized.shape)   plt.figure ()   plt.subplot (121)   plt.imshow (img [::,:: 1)   plt.title(& # 39;原图& # 39;)   plt.subplot (122)   plt.imshow(大小[::,::1)   plt.title(& # 39;缩放图& # 39;)   plt.show ()

 python中imutils包怎么用“> </p> <p> 2.3图像旋转</p> <p>在OpenCV中进行旋转时使用的是仿射变换,在这里图像旋转方法是<代码> imutils.rotate()> </代码,跟2个参数,第一个是图片数据,第二个是旋转的角度,旋转是朝逆时针方向。同时<代码> imutils> </代码还提供了另一个相似的方法,<代码> rotate_round()> </代码,它就是按顺时针旋转的。</p> <blockquote> <p>函数:</p> <p>逆时针旋转</p> <p>=imutils旋转。旋转(图90)</p> <p>顺时针旋转</p> <p> rotated_round=imutils。rotate_bound(图片,90)</p> </引用> <pre类= import  numpy  as  np   import  cv2  as 简历   import  imutils   import  matplotlib.pyplot  as  plt   plt.rcParams [& # 39; font.sans-serif& # 39;]=[& # 39; SimHei& # 39;], #用来正常显示中文标签   plt.rcParams [& # 39; axes.unicode_minus& # 39;]=False  #用来正常显示负号         时间=image  cv.imread (& # 39; image1.jpg& # 39;)   #,逆时针旋转   时间=rotated  imutils.rotate(图像,,90),,,,,,,,,,,,,,,,,,,,,   #,顺时针旋转   时间=rotated_round  imutils.rotate_bound(图像,,90),,,,,,,,,#,画图,,,,,,,,,,,,,,   plt.figure (figsize=[10,, 10])   plt.subplot (1、3、1)   plt.imshow (img [::,:: 1)   plt.title(& # 39;原图& # 39;)   plt.axis (“off")   plt.subplot (1、3、2)   plt.imshow(旋转[::,::1)   plt.title(& # 39;逆时针旋转90度& # 39;)   plt.axis (“off")   plt.subplot (1、3、3)   plt.imshow (rotated_round [::,:: 1)   plt.title(& # 39;顺时针旋转90度& # 39;)   plt.axis (“off")   plt.show ()

python中imutils包怎么用