您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:python读取并显示图片的三种方法(opencv、matplotlib、PIL库)

51自学网 2021-10-30 22:44:45
  python
这篇教程python读取并显示图片的三种方法(opencv、matplotlib、PIL库)写得很实用,希望能帮到您。

前言

在进行图像处理时,经常会用到读取图片并显示出来这样的操作,所以本文总结了python中读取并显示图片的3种方式,分别基于opencv、matplotlib、PIL库实现,并给出了示例代码,介绍如下。

OpenCV

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

import matplotlib.pyplot as plt # plt 用于显示图片import cv2#opencv的颜色通道顺序为[B,G,R],而matplotlib颜色通道顺序为[R,G,B],所以需要调换一下通道位置img1 = cv2.imread('./Lena.png')[:,:,(2,1,0)] # 读取和代码处于同一目录下的 lena.pngimg2 = cv2.imread('./Lena.png')[:,:,(2,1,0)]#结果展示plt.rcParams['font.sans-serif'] = ['SimHei']  # 中文乱码plt.subplot(121)#imshow()对图像进行处理,画出图像,show()进行图像显示plt.imshow(img1)plt.title('图像1')#不显示坐标轴plt.axis('off')#子图2plt.subplot(122)plt.imshow(img2)plt.title('图像2')plt.axis('off')# #设置子图默认的间距plt.tight_layout()#显示图像plt.show()

Matplotlib

Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。 它也可以和图形工具包一起使用,如 PyQt 和 wxPython。

import matplotlib.pyplot as plt # plt 用于显示图片import matplotlib.image as mpimg # mpimg 用于读取图片img1 = mpimg.imread('./Lena.png') # 读取和代码处于同一目录下的 lena.pngimg2=mpimg.imread('./Lena.png')#结果展示plt.rcParams['font.sans-serif'] = ['SimHei']  # 中文乱码plt.subplot(121)#imshow()对图像进行处理,画出图像,show()进行图像显示plt.imshow(img1)plt.title('图像1')#不显示坐标轴plt.axis('off')#子图2plt.subplot(122)plt.imshow(img2)plt.title('图像2')plt.axis('off')# #设置子图默认的间距plt.tight_layout()#显示图像plt.show()

PIL

PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了。。。

PIL可以做很多和图像处理相关的事情:

  • 图像归档(Image Archives)。
  • 图像展示(Image Display)。
  • 图像处理(Image Processing)。
import matplotlib.pyplot as plt # plt 用于显示图片from PIL import Imageimg1 = Image.open('./Lena.png')img2 = Image.open('./Lena.png')#结果展示plt.rcParams['font.sans-serif'] = ['SimHei']  # 中文乱码plt.subplot(121)plt.imshow(img1)plt.title('图像1')#不显示坐标轴plt.axis('off')#子图2plt.subplot(122)plt.imshow(img2)plt.title('图像2')plt.axis('off')# #设置子图默认的间距plt.tight_layout()#显示图像plt.show()

运行结果

总结

到此这篇关于python读取并显示图片的三种方法的文章就介绍到这了,更多相关python读取显示图片内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


python学习之plot函数的使用教程
盘点Python加密解密模块hashlib的7种加密算法(推荐)
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。