详解python中读取和查看图片的6种方法
作者:大闸謝Gemini 发布时间:2023-10-10 16:40:48
标签:python,读取,查看图片
本文主要介绍了python中读取和查看图片的6种方法,分享给大家,具体如下:
file_name1='test_imgs/spect/1.png' # 这是彩色图片
file_name2='test_imgs/mri/1.png' # 这是灰度图片
1 OpenCV
注:用cv2读取图片默认通道顺序是B、G、R
,而不是通常的RGB顺序,所以读进去的彩色图直接显示会出现变 * 况,详情可以看:https://www.jb51.net/article/245048.htm
import cv2
spect= cv2.imread(file_name1) # BGR
spect= spect[:, :, ::-1] # RGB
mri= cv2.imread(file_name2) # 灰度图
print(spect.shape) # (256, 256, 3)
print(mri.shape) # (256, 256, 3) cv2读进来是三通道的图片
import matplotlib.pyplot as plt
plt.imshow(spect)
plt.show()
import matplotlib.pyplot as plt
fig=plt.figure()
f1 = fig.add_subplot(121)
f2 = fig.add_subplot(122)
f1.imshow(spect)
f2.imshow(mri)
plt.show()
2 imageio
import imageio
spect = imageio.imread(file_name1)
mri = imageio.imread(file_name2)
print(spect.shape) # (256, 256, 3)
print(mri.shape) # (256, 256)
import matplotlib.pyplot as plt
fig=plt.figure()
f1 = fig.add_subplot(121)
f2 = fig.add_subplot(122)
f1.imshow(spect)
f2.imshow(mri,cmap='gray') # 注:单通道灰度图必须加上cmap='gray'才能正确显示
plt.show()
3 PIL
from PIL import Image
import numpy as np
spect= Image.open(file_name1) # <PIL.PngImagePlugin.PngImageFile image mode=RGB size=256x256 at 0x1D9F15FFDC8>
spect.show()
4 scipy.misc
from scipy.misc import imread
spect = imread(file_name1)
mri = imread(file_name2)
import matplotlib.pyplot as plt
fig=plt.figure()
f1 = fig.add_subplot(121)
f2 = fig.add_subplot(122)
f1.imshow(spect)
f2.imshow(mri,cmap='gray') # 注:单通道灰度图必须加上cmap='gray'才能正确显示
plt.show()
5 tensorflow
from tensorflow.python.keras.preprocessing.image import load_img
spect = load_img(file_name1) # <PIL.PngImagePlugin.PngImageFile image mode=RGB size=256x256 at 0x1D9EF188048>
spect.show()
6 skimage
from skimage import io
import matplotlib.pyplot as plt
mri = io.imread(file_name2)#读取数据
plt.imshow(mri,cmap='gray') # 注:单通道灰度图必须加上cmap='gray'才能正确显示
plt.show()
来源:https://blog.csdn.net/qq_42294351/article/details/123895065


猜你喜欢
- 本文实例为大家分享了js省市县 * 级联特效的实现代码,供大家参考,具体内容如下主要思想1.省改变,市改变,并初始化县2.市改变,县改变htm
- 在我们的日常生活工作中,经常会遇到需要上传日志的场景,比如多台机器运行同一个程序,并且需要记录每台机器程序产生的日志,根据相关关键词告警,或
- https://docs.python.org/3/library/function.html #python官方网址# 取绝对值print
- 如何将训练好的网络进行保存,我们可以用pickle或cPickle来保存Keras模型,同时我们可以用下面的方法:一、保存整个模型model
- 今天群里有人问了个问题是这样的: 然后有群友是这样回答的 select name,sum(case when stype=4 t
- 利用百度api实现人像动漫化百度API地址:https://ai.baidu.com/tech/imageprocess/selfie_an
- 方法一【推荐】、用js插入flash,可防止虚线框激活建立一个ShowFlash.js文件,拷贝以下代码:function sho
- paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。paramiko支持Lin
- 一、前期准备 此篇使用两种导入excel数据的
- 前言技术能解决的事情改技术技术解决不了的事情该需求现状假设我们目前有两张表业务表 书( t_a_book ) 阅读历史记录表 (t_r_bo
- 摸到她了!青翠的衣衫,奶白的肌肤,捧在手上的感觉真是太好了,心里美滋滋的。《悟透JavaScript》,一本偶然之作,终于成书并出版了。本书
- MySQL 复制详解及简单实例 主从复制技术在MySQL中被广泛使用,主要用于同步一台服务器上的数据至多台从服务器,可以用于实现负
- 一、概念二维列表的元素还是列表(列表的嵌套),称之为二维列表。需要通过行标和列标来访问二维列表的元素二、创建二维列表1、追加一维列标来生成二
- 他们是如何不让我的Teleport和Webzip工作的?你也可以做得到哦: <%dim UserAgentUser
- 功能如下: 这里就需要一开始只显示6个数据,点击展开才显示全部HTML里调用showdetailList:<div>  
- sql 查出一张表中重复的所有记录数据1.表中有id和name 两个字段,查询出name重复的所有数据 select * from xi a
- 一、背景描述csv格式文件是一种类似于excel的文件格式asc格式文件是一种可以用text打开的文本文件csv转asc本来可以用arcgi
- 关于SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集。 注意: 1.UNION 内部的 SELE
- SQL Server TEXT、NTEXT字段拆分的问题引用的内容:SET NOCOUNT ON CREATE 
- 一.条件语句条件语句可以给定一个判断条件,并在程序执行过程中判断该条件是否成立。程序根据判断结果,执行不同的操作,这样就可以改变代码的执行顺