- 前言
- 一、CV2
- 1.引入库
- 常用函数
- 二、 PIL
- 1、引入库
前言
python中常用的图片处理库
一、CV2
1.引入库
import cv2
没有库就执行
pip install opencv-python
常用函数
cv2.imread(path, flags) #path是你所要读取图片的地址。 #flag是读取图片的类型:0是读灰度图,1是彩色图(不读取透明度),2也是彩色图(读取透明度)彩色图一般用二即可。 #如果用读取灰度图的方式读取彩色图,会读取到一个灰度图。 #(h,w,c)
#如果给定正确的图片路径,将返回一个[height, width, channel]的numpy.ndarray对象,height表示图片高度,width表示图片宽度,channel表示图片的通道。灰度图则是[height,width]。
如果path路径出现问题会报错提示 检查路径 并返回一个none
注:不知道为什么在读取.gif图片时,路径名设置正确,没有提示错误,但返回的是none。
cv2.imshow('image',img) #前面是自定义显示的图片名,后面是要显示的图片
cv2.waitKey(0) #不是用这个函数,图片会一闪而过。#等待按键。
这没什么需要说的。
cv2.imwrite(path, img) #path保存的哪里路径名。 #img是要保存的图片
这也没什么需要说的
img2 = cv.resize(img, (w,h),interpolation) #img原图片 #img2缩放后的图片 #a,b缩放后的宽,高 img2 = cv.resize(img, (w,h))
interpolation是你缩放图像所需要用的插值方式(默认就好)
| INTER_NEAREST | 最近邻插值 |
|---|---|
| INTER_LINEAR | 双线性插值(默认设置) |
| INTER_CUBIC | 4x4像素邻域的双三次插值 |
| INTER_AREA | 使用像素区域关系进行重采样。 |
| INTER_LANCZOS4 | 8x8像素邻域的Lanczos插值 |
注:这里刚好和上面的imread相反,读入是(h,w,c)。这里是
(w,h)
from PIL import Image
之后更新



