详解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中的正斜杠与反斜杠

首先,"/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,Unix和Web用正斜杠/,Windows用反斜杠,但是现在Windows (一)目录中...

opencv3/C++ 平面对象识别&透视变换方式

opencv3/C++ 平面对象识别&透视变换方式

findHomography( ) 函数findHomography( )找到两个平面之间的透视变换H。 参数说明: Mat findHomography( InputArray...

python中dict()的高级用法实现

python中dict()的高级用法实现

collections中defaultdict的用法 一、字典的键映射多个值 将下面的列表转换成字典 一个字典就是一个键对应一个单值得映射,而上面的列表中有相同的键,如果你想要一个键映...

Python类的继承用法示例

本文实例讲述了Python类的继承用法。分享给大家供大家参考,具体如下: python —类的继承 root@kali:~/python/mod# vi class2.py root...

详解python字节码

Python对不可变序列进行重复拼接操作效率会很低,因为每次都会生成一个新的对象,解释器需要把原来对象中的元素先复制到新的对象里,然后再追加新的元素。 但是CPython对字符串操作进行...