利用Python PIL、cPickle读取和保存图像数据库 @author:wepon @blog:http://blog.csdn.net/u012162613/article/details/...43226127 计算机视觉、机器学习任务中,经常跟图像打交道,在C++上有成熟的OpenCV可以使用,在Python中也有一个图像处理库PIL(Python Image Library),当然PIL没有...OpenCV那么多功能(比如一些人脸检测的算法),不过在Python上,我们用PIL进行一些基本的图像读取与保存工作就行了,因为算法方面,Python有很多强大的算法库(机器学习库sklearn、深度学习库...本文以一个人脸图像数据库Olivetti Faces为例,展示如何使用PIL模块、cPickle模块将这个图像数据库读取并保存为pkl文件。...二、利用Python PIL、cPickle读取和保存 Olivetti Faces 首先使用PIL.Image打开获取这张图片,为了便于数值计算,将其转化为numpy.array类型,然后每张图片摊成一个一维向量
初识 PIL PIL 全称为 Python Imaging Library,已经是 Python 平台事实上的图像处理标准库了。PIL 功能非常强大,但 API 却非常简单易用。...**由于 PIL 仅支持到 Python 2.7,**加上年久失修,于是一群志愿者在 PIL 的基础上创建了兼容版本 Pillow(因此 Pillow 兼容 PIL 的绝大多数语法),支持最新的 Python...from PIL import Image print(Image.VERSION) 这里需要注意,虽然使用的是 Pillow,但是导入的包依然是 PIL。...要从文件中加载图像创建 Image 类的实例,可以使用 Image 模块的 open() 方法。 from PIL import Image img = Image.open(r"....如果图像文件打开错误,则会抛出 OSError 错误。 有了 Image 类的实例,接下来就可以使用实例的属性来检查文件内容。
今天在Python运行环境的服务器弄一个有关图像处理的程序时报这样的错: NameError: global name 'Image' is not defined...import Image 了下,发现原来 Python 并没有自带图像处理库,需要独立安装……查了下,Python常用的图像处理库叫PIL,可以使用 pip 安装,不错~于是在 用virtualenv...安装很快完成,于是愉悦地刷新,等待程序的通过,结果又报错: IOError: decoder jpeg not available Google了下,发现通过 pip 安装的 PIL...NONE,这里要传到系统库的路径才行): TCL_ROOT = "/usr/lib64/" JPEG_ROOT = "/usr/lib64/" ZLIB_ROOT =....htm Python 语言的发展简史 http://www.linuxidc.com/Linux/2014-09/107206.htm
这里主要说的是PIL, PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了。...PIL历史悠久,原来是只支持python2.x的版本的,后来出现了移植到python3的库pillow 所以直接给你电脑安装pillow就可以使用了 pip install pillow 首先先获取图片...将图片转换为灰度值图像用convert函数: 代码: from PIL import Image image = Image.open('lufei.png') m = image.convert('...) im_point.show() 小应用: 利用python做一个图像转字符串,并保存到文本之中。...首先导入PIL库和numpy库 读取图片,并将图片重新调整大小,接着转换为矩阵,转换为矩阵的时候, 矩阵是一个(x,y,z)的数据,x和y是他的长和宽,然后z是他的rgb数值,0就是r,1就是g,2就是
你可以使用PIL创建缩略图,转换图像格式,打印图像等等。 图像展示(Image Display)。...图像处理(Image Processing)。PIL包括了基础的图像处理函数,包括对点的处理,使用众多的卷积核(convolution kernels)做过滤(filter),还有颜色空间的转换。...PIL库同样支持图像的大小转换,图像旋转,以及任意的仿射变换。PIL还有一些直方图的方法,允许你展示图像的一些统计特性。这个可以用来实现图像的自动对比度增强,还有全局的统计分析等。...(2)PIL库Image类介绍 Image类中的函数 1. open(filename) : 根据参数加载图像文件。...Image类的常用属性 1.format:识别图像格式或来源,如果图像不是从文件中读取,值为none 2.mode:图像的色彩模式,'L'为灰色图像,'RGB'为真彩色图像,"CMYk"为出版图像。
上一小节已经介绍了如何安装 PIL 以及 Image 类的简单使用,比如从当前路径下加载名为 shiliu.jpg 的图像。...getdata() 函数返回的是包含图像像素内容的 ImagingCore 对象(类似序列的一个对象),此时的 ImagingCore 对象是一个 PIL 内部的数据类型。...我们可以使用 list(img.getdata()) 将其转换成 Python 的 list 对象。 from PIL import Image img = Image.open(r'....getdata() 函数会将图像的像素点逐行地进行拼接,每一个像素点用 RGB 三元组表示(图像为 RGB 模式时)。...如果只想获取 RGB 图像三个通道中的某一个通道,可以为 getdata() 函数指定 band 参数: 当 band = None 时(默认),返回图像所有通道的像素点; 当 band = 0 时,返回第一个通道的数值
图像处理库-初识PIL中已经介绍了如何安装 PIL 以及 Image 类的简单使用,比如从当前路径下加载名为 shiliu.jpg 的图像。...getdata() 函数返回的是包含图像像素内容的 ImagingCore 对象(类似序列的一个对象),此时的 ImagingCore 对象是一个 PIL 内部的数据类型。...我们可以使用 list(img.getdata()) 将其转换成 Python 的 list 对象。 from PIL import Image img = Image.open(r'....,每一个像素点用 RGB 三元组表示(图像为 RGB 模式时)。...如果只想获取 RGB 图像三个通道中的某一个通道,可以为 getdata() 函数指定 band 参数: 当 band = None 时(默认),返回图像所有通道的像素点; 当 band = 0 时,返回第一个通道的数值
PIL(Python Imaging Library,图像处理类库) 提供了通用的图像处理功能,以及大量有用的基本图像操作,比如:打开显示,灰度转换,图像缩放,旋转,裁剪等。...本文并包含 PIL 所有功能模块的讲解,而是从实用角度给出最常用的方法。要获取 PIL 所有功能模块的文档,可参考文末给出的链接。 1....基本使用 2.1 打开图片 image = Image.open("dog.jpeg") 2.2 显示图片 image.show() ?...例如,训练 CNN 图像分类,对有限的训练集数据进行扩充增强,以提高模型的范化能力,获得更佳的模型表现。...传送门 下一篇 python 图像处理类库 PIL (二) 参考 [1] The Python Imaging Library Handbook
和上一篇《python 图像处理类库 PIL (一)》一样,本文依然以图片 dog.jpeg 为例,演示 PIL Image 模块的实例接口。 1....读取图片数据 3.1 load() 返回一个像素访问对象。像素访问对象的行为很像一个二维数组,可以通过下标 [x, y] 的方法,访问和修改像素值。...ps: Image.open() 是一个懒操作,在调用 load() 或其他数据访问方法前,并未读取图片数据,而仅仅读取图片的属性信息。...因此,使用 numpy 转化的效率是最高。在不导入 numpy 情况,首选使用列表切片的方式进行二维列表的转化。 3 split(): 分离颜色通道 返回一个 Image 对象元组。...R, G, B = image.split() R.show() G.show() B.show() 传送门 上一篇 python 图像处理类库 PIL (一)
前言 之前在进行深度学习训练的时候,偶然发现使用PIL读取图片训练的效果要比使用python-opencv读取出来训练的效果稍好一些,也就是训练更容易收敛。...可能的原因是两者读取出来的数据转化为pytorch中Tensor变量稍有不同,这里进行测试。...之后的代码都导入了: from PIL import Image import matplotlib.pyplot as plt import numpy as np import torch import...cv2 测试 使用PIL和cv2读取图片时会有细微的区别,通过下面的代码可以发现两者读取图片是有区别的,也就是使用PIL读取出来的图片转为numpy格式和直接使用cv读取的图片在像素点上并不是完全一致...').convert('RGB') In[19]: image_pil = np.array(image_pil) In[20]: image_cv = cv2.cvtColor(image, cv2.
到PIL官网下载一个,python imaging library 1.1.7 for Python 2.7 (windows only)。...然后上网百度,发现我的系统是win7 64位的,而PIL官网提供的下载包都是32位的,可以在这里看到 http://effbot.org/downloads#pil 64位检查注册表的位置是: HKLM...|HKCU\SOFTWARE\ 32位检查注册表的位置是: HKLM|HKCU\SOFTWARE\wow6432node\ 然后,有人提供了非官方的64位库: http://www.lfd.uci.edu.../~gohlke/pythonlibs/ 叫做Pillow,下载下来,是个 .whl 结尾的文件,这个其实就是python使用的一种压缩文件,后缀名改成zip,可以打开。...意思就是说,要用 from PIL import Image 代替 import Image 然后进python 命令行 from PIL import Image OK,安装成功了。
今天,是我来到博客园的第五天,发现自己还没有头像,想着上传ubuntu系统中我很喜欢的一个背景图片来当头像,但是因为图片过大,上传失败了。...那么,我们如何使用python中强大的PIL库来进行图片裁剪呢? ...from PIL import Image img = Image.open('avatar.jpg') img.thumbnail((480,480)) img.save('thumb.jpg') ...首先,找到自己的图片位置,接着如下: 一、从PIL库中导入Image 二、调用Image.open打开图片文件 三、使用thumbnail函数裁剪图片(注意,函数参数是一个(x,y)尺寸的元组...) 四、使用save保存文件 再次试着上传图片,成功了!
一、实验介绍 图像处理在深度学习领域中起到了至关重要的作用,Python Imaging Library(PIL)作为一种主流的图像处理库,为图像的读取、处理和增强提供了丰富的功能。 ...本实验将介绍 PIL 的基本用法,主要包括图像读取、写入、复制、粘贴、几何变换以及图像增强、图像滤波等方面。...安装 PIL 库 可以使用以下命令: pip install pillow 1....图像读取和写入 下面,我将介绍如何使用 PIL 的 Image.open 方法读取图像,并使用 display 方法显示图像。...图像复制粘贴 PIL 提供了灵活的图像复制和粘贴功能,下面我将介绍全局级别和局部级别的图像复制,以及使用 crop 方法进行局部图像复制。此外,还有图像的粘贴和合并操作。 a.
题目 图像文件压缩。使用PIL库对图像进行等比例压缩,无论压缩前文件大小如何,压缩后文件大小小于10KB。...代码 from PIL import Image import os from tkinter import filedialog import tkinter f_path = filedialog.askopenfilename
Python中的图像处理库PIL(Python Imaging Library)应用广泛,在这里先做一个简单的介绍和使用。 安装 可以通过pip install PIL进行安装,在这里不再多说。...使用 加载图像 为了能够从文件中加载我们想要使用的图像,应该调用PIL库中Image模块下的open()函数: from PIL import Image img = Image.open("test.jpg...如果图片未能成功加载,img的format属性会设置为None;size属性是一个二元组,其中包含了图片像素单位的宽度和高度;mode属性定义了图像中波段的数量和名称,以及像素类型和深度。...操作图像 通过这个库,我们能只用三四行代码完成图像的缩放操作: from PIL import Image # 打开图像文件 img = Image.open('test.jpg') # 获得图像尺寸...', 'jpeg') PIL库下的ImageDraw模型中还提供了多种绘图方法,可以通过官方文档自行阅读使用,在这里因时间限制就不再多述。
网页上搜索 “python绘制国际象棋棋盘”,索引结果均为调用 turtle 库绘制棋盘结果;为了填充使用 python PIL 图像处理库绘制国际象棋棋盘的空白,今日分享此文。...Python PIL ImageDraw.Draw.line() 方法。...填充颜色的关键是使用 Python PIL ImageDraw.Draw.rectangle() 方法。 具体做法是先填充第一、第二行,再将生成图像复制粘贴。...填充第一、第二行方格时要注意填充矩形的起始点和结束点值,保证相邻两块颜色不一致。...: region = imageTemp.crop((0,0,400,100)) imageTemp.paste(region, (0, 100)) 对于第五到第八行,在进行一遍复制粘贴,这回复制的是前四行的图像结果
基于《python的scanpy库读取几种常见的格式的单细胞数据文件汇总》的文章,不知道有没有细心的小伙伴发现,在使用scanpy读取单细胞数据txt文件或者其他格式文件时,得到的AnnData数据对象有点奇怪...那我们来看看是什么样的一个大坑,代码如下: #导入scanpy库 import scanpy as sc #读取GSE数据库的单细胞示例数据txt文件 data_1=sc.read_text('C:/Users...注意,上面的data_1是我们的从GEO数据库下载并使用read_text()进行读取得到的Anndata数据对象,而data_2是读取scanpy的内置数据后的正常Anndata数据对象,两者不要混淆...在使用scanpy的read_text()进行读取txt文件时,要注意了哦!..."填坑" 如果你也使用scanpy的read_text()这个函数来读取txt文件,或使用scanpy别的读文件函数读取别的格式文件,读取后的AnnData也出现上述的这种情况,别慌!
@TOC 前言 在Python中,Pillow是一个强大的图像处理库,它是PIL(Python Imaging Library)的一个分支,支持"jpeg","png","bmp","gif","ppm...","tiff" 等多种图像文件格式,通过本篇文章,你将了解到pillow库不同功能的实践方法,不止有读取和保存图片,创建缩略图和合并到图像、模糊、裁剪、翻转和旋转图像、调整大小和添加水印、添加滤镜和处理图像颜色等等...导航 pillow库的使用篇 图像处理库Pillow(PIL)的使用-1(实例+详细注释+图片脚本) 图像处理库Pillow(PIL)的使用-2(实例+详细注释+图片脚本) 图像处理库Pillow(PIL...exe可执行文件) python图片脚本3-批量图片格式转换-(详细注释+GUI界面+exe可执行文件) python图片脚本4-批量图片加水印(详细注释+GUI界面+exe可执行文件) Tkiner库的使用篇...Pillow 这里还有一个需要注意的就是不同的pillow库支持的python版本不同, Pillow库目前最新的版本为11.0.0,我这里使用的就是最新版本,根据你自己的python解释器版本下载对应的
@TOC 前言 在Python中,Pillow是一个强大的图像处理库,它是PIL(Python Imaging Library)的一个分支,支持"jpeg","png","bmp","gif","ppm...","tiff" 等多种图像文件格式,通过本篇文章,你将了解到pillow库不同功能的实践方法,不止有读取和保存图片,创建缩略图和合并到图像、模糊、裁剪、翻转和旋转图像、调整大小和添加水印、添加滤镜和处理图像颜色等等...导航 pillow库的使用篇 图像处理库Pillow(PIL)的使用-1(实例+详细注释+图片脚本) 图像处理库Pillow(PIL)的使用-2(实例+详细注释+图片脚本) 图像处理库Pillow(PIL...exe可执行文件) python图片脚本3-批量图片格式转换-(详细注释+GUI界面+exe可执行文件) python图片脚本4-批量图片加水印(详细注释+GUI界面+exe可执行文件) Tkiner库的使用篇...alpha:表示透明度,取值范围为 0 到 1,当取值为 0 时,输出图像相当于 image1 的拷贝,而取值为 1 时,则是 image2 的拷贝,只有当取值为 0.5 时,才为两个图像的中合。
@TOC 前言 在Python中,Pillow是一个强大的图像处理库,它是PIL(Python Imaging Library)的一个分支,支持"jpeg","png","bmp","gif","ppm...","tiff" 等多种图像文件格式,通过本篇文章,你将了解到pillow库不同功能的实践方法,不止有读取和保存图片,创建缩略图和合并到图像、模糊、裁剪、翻转和旋转图像、调整大小和添加水印、添加滤镜和处理图像颜色等等...导航 pillow库的使用篇 图像处理库Pillow(PIL)的使用-1(实例+详细注释+图片脚本) 图像处理库Pillow(PIL)的使用-2(实例+详细注释+图片脚本) 图像处理库Pillow(PIL...exe可执行文件) python图片脚本3-批量图片格式转换-(详细注释+GUI界面+exe可执行文件) python图片脚本4-批量图片加水印(详细注释+GUI界面+exe可执行文件) Tkiner库的使用篇...(GUI):Tkinter库的使用-5(Menu+Canvas+Scale+Scrollbar) pillow库的使用 图像的增强 Pillow 通过 ImageFilter 类来实现图像的增强效果,该类中集成了不同种类的滤波器
领取专属 10元无门槛券
手把手带您无忧上云