学网站软件设计,昆明网站设计制造,事件营销的具体方法有哪些,北京市建设网一、PIL#xff1a;Python Imaging Library#xff08;pillow#xff09;
PIL读取图片不直接返回numpy对象#xff0c;可以用numpy提供的函数np.array()进行转换#xff0c;亦可用Image.fromarray()再从numpy对象转换为原来的Image对象#xff0c;读取#xff0c;显示Python Imaging Librarypillow
PIL读取图片不直接返回numpy对象可以用numpy提供的函数np.array()进行转换亦可用Image.fromarray()再从numpy对象转换为原来的Image对象读取显示保存以及数据格式转换方法见如下代码
from PIL import Image
import numpy as npimagepath img.jpg
image Image.open(imagepath)
image.show()
image.save(img1.jpg) # 图片保存在项目文件夹下
二Matplotlib
读取显示保存方法见如下代码
import matplotlib.pyplot as plt
import matplotlib.image as mpimgimagepath img.jpg
image mpimg.imread(imagepath)
# 显示图片
plt.imshow(image)
# 保存文件
mpimg.imsave(cat1.jpg, image)三OpenCV
1.直接将图像显示在窗口中并保存。
import cv2
import matplotlib.pyplot as pltimagepath img.jpg
image cv2.imread(imagepath)# 保存图片
cv2.imwrite(cat2.jpg, image)# 显示图片
cv2.imshow(bgrImage, image) # 对窗口进行命名并显示
cv2.waitKey()
cv2.destroyAllWindows() 2.放置在画布中显示
import cv2
import matplotlib.pyplot as plt# 设置图片路径
imagepath img.jpg
image cv2.imread(imagepath)# 将BGR图像转换为RGB
img_1 cv2.cvtColor(image, cv2.COLOR_BGR2RGB)# 显示图形
plt.subplot() # 直接指定划分方式和位置
plt.imshow(image) #显示图像
plt.title(噪声图像) # 设置标题
plt.xticks([]), plt.yticks([]) # 设置坐标轴参数[]是不显示坐标轴
plt.show()由于opencv默认读取图片用的是BGR通道所以后续处理如果用RGB通道如matplotlib就是采用的RBG通道则需要进行色彩转换否则会因为不兼容导致色彩出现偏差所以可以加上这一行代码
image_rgb cv2.cvtColor(image, cv2.COLOR_BGR2RGB) 具体原因见我的一篇博客:【Bug】当用opencv库的imread函数读取图像用matplotlib库的plt.imshow()函数显示图像时图像色彩出现偏差问题的解决方法-CSDN博客 当要显示多张图片的时候需要用plt.subplot()函数对画布区域进行划分如果没有指定参数则默认为一个子图。详细用法见我的博客【Python】Matplotlib-多张图像的显示-CSDN博客
显示效果如下