详解python读取image

yipeiwu_com6年前Python基础

python 读取image

在python中我们有两个库可以处理图像文件,scipy和matplotlib.

安装库

pip install matplotlib pillow scipy

用法

from scipy.misc import imread
data = imread(image_root)
#data是 ndarray对象
import matplotlib.image as mpimg
data = mpimg.imread(image_root)
#data是 ndarray对象

skimage

安装 pip install -U scikit-image

from skimage.io import imread
img = imread(file_path) # 返回的是 ndarray
# 这里需要注意的是
# imread 读取 8-bit png 的时候莫名奇妙的读出个 3-channel 的图片
# from scipy.misc import imread 这个 imread 也是一个尿性

PIL

安装 pip install pillow

from PIL import Image
import numpy as np
img_obj = Image.open(file_path)
img_array = np.array(img_obj, dtype=np.uint8)

# 无论是 jpg 还是 png 都能正确读取
\

matplotlib

安装 pip install matplotlib

from matplotlib.image import imread
img = imread(img_path) # 返回 ndarray
# 这个imread 读 png 的时候,返回ndarray 的类型是 uint8
# 读 png 的时候,返回 ndarray 是 float32, 8-bit png 也能读出 3-channel,活在梦里

以上所述是小编给大家介绍的python读取image详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

python实现DNS正向查询、反向查询的例子

1.DNS查询过程: 以查询 www.baidu.com为例 (1)电脑向本地域名服务器发送解析www.baidu.com的请求(2)本地域名服务器收到请求后,先查询本地的缓存,如果找到...

Python实现冒泡,插入,选择排序简单实例

本文所述的Python实现冒泡,插入,选择排序简单实例比较适合Python初学者从基础开始学习数据结构和算法,示例简单易懂,具体代码如下: # -*- coding: cp936 -...

Django ManyToManyField 跨越中间表查询的方法

1、在 django 表中用到了 manytomany 生成了中间表 pyclub_article_column from django.db import models # Cr...

Python中判断输入是否为数字的实现代码

在接收raw_input方法后,判断接收到的字符串是否为数字 例如: str = raw_input("please input the number:") if str.isdig...

go和python变量赋值遇到的一个问题

平时写得多的是python,最近看了一点go,今天碰到了一个问题,和大家分享一下 package main import "fmt" type student struct {...