opencv—python基本的图像操作指令

1. 读取图像:cv.imread()

例如:

image_dir='./data/xxx.jpg'
image = cv2.imread(image_dir)
# 读取单通道(灰度图)
gray_img=cv2.imread('4.jpg',cv2.IMREAD_GRAYSCALE)

2. 显示图像:cv.imshow()

例如:

#创建一个窗口
cv2.namedWindow("Image")
#然后在窗口中显示图像img
cv2.imshow("Image", img)
cv2.waitKey (0)

3. 储存图像:cv.imwrite()

例如:

#将图像img保存
cv2.imwrite('xxx.jpg',img)
# 指定jpg质量,范围从1~100,默认95,值越高画质越好,文件越大
cv2.imwrite('xxx.jpg',color_img,(cv2.IMWRITE_JPEG_QUALITY,20))

4. 缩放图像:cv.resize()

例如:

img=cv2.imread('xxx.jpg')
# 缩小为200x200的正方形
img_200x200=cv2.resize(img,(200,200))

5. 裁剪图像:image[a:b,c:d]

例如:

a=10 # x start
b=50 # x end
c=40 # y start
d=70 # y end
cropImg = image[a:b,c:d]   #裁剪图像
cv2.imwrite('cut.jpg',cropImg)  #写入图像路径

6. 补边图像:cv.copyMakeBorder()

例如:

# 上下各贴50像素的黑边
img_add=cv2.copyMakeBorder(img,50,50,0,0,cv2.BORDER_CONSTANT,value=(0,0,0))

7. RGB转化成HSV图像

可以通过HSV空间对色调和明暗进行调节。
HSV分别是色调(Hue),饱和度(Saturation)和明度(Value)。
在HSV空间中进行调节就避免了直接在RGB空间中调节是还需要考虑三个通道的相关性。
OpenCV中H的取值是[0, 180),其他两个通道的取值都是[0, 256)。

例如:

img=cv2.imread('xxx.jpg')
# 通过cv2.cvtcolor把图像从RGB转到HSV
img_hsv=cv2.cvtColor(img,cv2.COLOR_BGR2HSV)

8. 图像镜像:cv.flip()

例如:

#python 图像翻转,使用openCV flip()方法翻转
xImg = cv.flip(img,1,dst=None) #水平镜像
xImg1 = cv.flip(img,0,dst=None) #垂直镜像
xImg2 = cv.flip(img,-1,dst=None) #对角镜像

9.复制图像:copy()

例如:

#复制图像img
Image2 = img.copy();

10. 压缩图像:cv.IMWRITE_PNG_COMPRESSION

对于PNG,第三个参数表示的是压缩级别。cv2.IMWRITE_PNG_COMPRESSION,从0到9,压缩级别越高,图像尺寸越小。默认级别为3:
(压缩是指图像尺寸不变,但是分辨率变小,即变得模糊)
例如:

cv2.imwrite("./cat.png", img, [int(cv2.IMWRITE_PNG_COMPRESSION), 0]) 
cv2.imwrite("./cat2.png", img, [int(cv2.IMWRITE_PNG_COMPRESSION), 9])

在这里插入图片描述

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值