
Python图像处理库PIL从入门到精通
文章平均质量分 87
通过详细介绍python图像处理库PIL的各个模块及其属性,方法和函数,让读者对PIL有全面而深入地理解。同时,对于PIL各个方法和函数给出了应用实例及大量处理图像,方便初学者能够快速入门,给读者最直观的认识,提升读者对python图像处理的兴趣和技能。
icamera0
微信公众号:平凡程式人生。关注机器学习、OpenCL、OpenCV、图像处理、android camera、传统文化等方面。欢迎交流。
展开
-
Python图像处理库PIL中快速傅里叶变换FFT的实现(一)
离散傅里叶变换(discrete Fourier transform) 傅里叶分析方法是信号分析的最基本方法,傅里叶变换是傅里叶分析的核心,通过它把信号从时间域变换到频率域,进而研究信号的频谱结构和变化规律。FFT是一种DFT的高效算法,称为快速傅立叶变换(fast Fourier transform)。在数字图像处理中,FFT的使用非常普遍,是图像处理中最重要的算法之一。在此,我们对FFT算法做一些简单研究,并使用python实现该算法,同时会对图像进行变换分析。原创 2016-03-26 07:21:45 · 21314 阅读 · 2 评论 -
Python图像处理库PIL中图像格式转换(二)
二、其他不同模式转换为“RGB”模式模式“RGB”为24位彩色图像,它的每个像素用24个bit表示,分别表示红色、绿色和蓝色三个通道。在PIL中,对于彩色图像,open后都会转换为“RGB”模式,然后该模式可以转换为其他模式,比如“1”、“L”、“P”和“RGBA”,这几种模式也可以转换为“RGB”模式。1、 模式“1”转换为模式“RGB”模式“RGB”转换为模式“1”以后,像素点原创 2016-03-10 08:24:51 · 31358 阅读 · 2 评论 -
Python图像处理库PIL中图像格式转换(一)
在数字图像处理中,针对不同的图像格式有其特定的处理算法。所以,在做图像处理之前,我们需要考虑清楚自己要基于哪种格式的图像进行算法设计及其实现。本文基于这个需求,使用python中的图像处理库PIL来实现不同图像格式的转换。对于彩色图像,不管其图像格式是PNG,还是BMP,或者JPG,在PIL中,使用Image模块的open()函数打开后,返回的图像对象的模式都是“RGB”。而对于灰度图像,不管原创 2016-03-10 08:16:02 · 241320 阅读 · 14 评论 -
Python图像处理库PIL的ImageStat模块介绍
ImageStat模块用于计算整个图像或者图像的一个区域的统计数据。一、ImageStat模块的函数1、 Stat定义1:ImageStat.Stat(image)⇒ Stat instance ImageStat.Stat(image, mask)⇒ Stat instance含义1:计算给定图像的统计值。如果变量mask被赋值,将只针对变量mask所定义的区原创 2016-03-06 07:40:53 · 10958 阅读 · 0 评论 -
Python图像处理库PIL的ImageSequence模块介绍
ImageSequence模块包含了一个wrapper类,它可以让用户迭代访问图形序列中每一帧图像。一、ImageSequence模块的函数1、 Iterator定义:ImageSequence.Iterator(image)⇒ Iterator instance含义:创建一个迭代器实例,让用户循环访问序列中的所有帧图像。例子:见下面的例子。二、ImageSequ原创 2016-03-05 22:10:06 · 5816 阅读 · 1 评论 -
Python图像处理库PIL的ImagePath模块介绍
ImagePath模块被用于存储和操作二维向量数据。Path对象会被传递到ImageDraw模块中。一、ImagePath模块的函数1、 Path定义:ImagePath.Path(coordinates)⇒ Path instance含义:创建一个path对象。坐标列表可以是任何形式的序列对象,其包括二元组[(x,y),…]或者数值[x,y,…]。用户也可以从另一个原创 2016-03-05 07:52:48 · 7299 阅读 · 0 评论 -
Python图像处理库PIL的ImageOps模块介绍
(Newin 1.1.3)ImageOps模块包含了一些“ready-made”的图像处理操作。这个模块somewhatexperimental,大多数操作只工作在L和RGB图像上。一、ImageOps模块的函数1、 Autocontrast定义:ImageOps.autocontrast(image, cutoff=0)⇒ image含义:最大图像对比度。这个函数计算一原创 2016-03-04 06:15:49 · 19562 阅读 · 0 评论 -
Python图像处理库PIL的ImageGrab模块介绍
ImageGrab模块用于将当前屏幕的内容或者剪贴板上的内容拷贝到PIL图像内存。当前版本只支持windows系统。一、ImageGrab模块的函数1、 Grab定义:ImageGrab.grab()⇒ image ImageGrab.grab(bbox) ⇒ image含义:(New in 1.1.3)抓取当前屏幕的快照,返回一个模式为“RGB”的图像。参原创 2016-02-29 08:28:11 · 68657 阅读 · 4 评论 -
Python图像处理库PIL的ImageFont模块介绍
ImageFont模块定义了相同名称的类,即ImageFont类。这个类的实例存储bitmap字体,用于ImageDraw类的text()方法。PIL使用自己的字体文件格式存储bitmap字体。用户可以使用pilfont工具包将BDF和PCF字体描述器(Xwindow字体格式)转换为这种格式。从版本1.1.4开始,PIL可以配置是否支持TrueType和OpenType字体(和FreeTy原创 2016-02-28 22:04:38 · 83715 阅读 · 4 评论 -
Python图像处理库PIL的ImageFile模块介绍
ImageFile模块为图像的打开和保存提供了一些函数。另外,它还提供了一个逐块解码图像的Parser类。这个类实现了与标准sgmllib和xmllib模块一样的接口。一、ImageFile模块的函数1、 Parser定义:ImageFile.Parser()⇒ Parser instance含义:创建一个解析器对象。解析器不能被重复使用。二、ImageFile模块的原创 2016-02-27 21:23:54 · 6871 阅读 · 0 评论 -
Python图像处理库PIL的ImageEnhance模块介绍
ImageEnhance模块提供了一些用于图像增强的类。一、ImageEnhance模块的接口所有的增强类都实现了一个通用的接口,包括一个方法:enhancer.enhance(factor) ⇒ image该方法返回一个增强过的图像。变量factor是一个浮点数,控制图像的增强程度。变量factor为1将返回原始图像的拷贝;factor值越小,颜色越少(亮度,对比度等),更多原创 2016-02-27 06:51:34 · 37482 阅读 · 4 评论 -
Python图像处理库PIL的ImageDraw模块介绍
ImageDraw模块提供了图像对象的简单2D绘制。用户可以使用这个模块创建新的图像,注释或润饰已存在图像,为web应用实时产生各种图形。PIL中一个更高级绘图库见The aggdraw Module。一、ImageDraw模块的概念1、 Coordinates绘图接口使用和PIL一样的坐标系统,即(0,0)为左上角。2、 Colours为了指定颜色,用户可以使原创 2016-02-26 08:11:43 · 101318 阅读 · 3 评论 -
Python图像处理库PIL的ImageChops模块介绍
ImageChops模块包含一些算术图形操作,叫做channel operations(“chops”)。这些操作可用于诸多目的,比如图像特效,图像组合,算法绘图等等。大多数通道操作只用于8位图像(比如“L”模式和“RGB”模式)。一、ImageChops模块的函数大多数通道操作有一个或者两个图像参数,返回一个新的图像。1、 Constant定义:constant(ima原创 2016-02-24 06:53:12 · 12797 阅读 · 0 评论 -
Python图像处理库PIL的ImageFilter模块介绍
Python图像处理库PIL的ImageFilter模块介绍ImageFilter模块提供了滤波器相关定义;这些滤波器主要用于Image类的filter()方法。一、ImageFilter模块所支持的滤波器当前的PIL版本中ImageFilter模块支持十种滤波器:1、 BLURImageFilter.BLUR为模糊滤波,处理之后的图像会整体变得模糊。例子:>>>原创 2016-02-21 18:06:36 · 32840 阅读 · 6 评论 -
Python图像处理库PIL的ImageColor模块介绍
ImageColor模块包括颜色表格和从CSS3样式颜色转化为RGB元组的转换器。除了别的,这个模块多用于Image.new函数和ImageDraw模块。一、ImageColor模块支持的字符串ImageColor模块支持的字符串格式如下:1、 十六进制颜色说明符定义为“#rgb”或者“#rrggbb”。例如,“#ff0000”表示纯红色。2、 RGB函数定义为原创 2016-02-21 11:35:53 · 10063 阅读 · 1 评论 -
Python图像处理库PIL的Image模块介绍(五)
26、 Seek定义:im.seek(frame)含义:在给定的文件序列中查找指定的帧。如果查找超越了序列的末尾,则产生一个EOFError异常。当文件序列被打开时,PIL库自动指定到第0帧上。注意:在当前的版本上,大多数序列格式只允许用户查找下一帧,不能跳跃式查找指定的帧。例子:>>>from PIL import Image>>>im_gif = Image.op原创 2016-02-20 23:20:15 · 25618 阅读 · 0 评论 -
Python图像处理库PIL的Image模块介绍(四)
(Image模块方法16-25)16、 Paste定义1:im.paste(image,box)含义1:将一张图粘贴到另一张图像上。变量box或者是一个给定左上角的2元组,或者是定义了左,上,右和下像素坐标的4元组,或者为空(与(0,0)一样)。如果给定4元组,被粘贴的图像的尺寸必须与区域尺寸一样。如果模式不匹配,被粘贴的图像将被转换为当前图像的模式。例子1:>>>f原创 2016-02-20 23:13:02 · 67579 阅读 · 0 评论 -
Python图像处理库PIL的Image模块介绍(三)
三、Image类的方法除非另作说明,Image类的所有方法都将返回一个Image类的新实例,这个实例对应于结果图像。1、 Convert定义1:im.convert(mode)⇒ image含义1:将当前图像转换为其他模式,并且返回新的图像。当从一个调色板图像转换时,这个方法通过这个调色板来转换像素。如果不对变量mode赋值,该方法将会选择一种模式,在没有调色板的情况下,原创 2016-02-17 23:12:48 · 46838 阅读 · 3 评论 -
Python图像处理库PIL的Image模块介绍(二)
二、Image类的函数1、 New定义:Image.new(mode,size)⇒ image Image.new(mode, size, color)⇒ image含义:使用给定的变量mode和size生成新的图像。Size是给定的宽/高二元组,这是按照像素数来计算的。对于单通道图像,变量color只给定一个值;对于多通道图像,变量color给定一个元组(每个通道原创 2016-02-15 09:36:07 · 57110 阅读 · 2 评论 -
Python图像处理库PIL的Image模块介绍(一)
Image模块是PIL中最重要的模块,它有一个类叫做image,与模块名称相同。Image类有很多函数、方法及属性,接下来将依次对image类的属性、函数和方法进行介绍。一、Image类的属性1、 Format定义:im.format ⇒ string or None含义:源文件的文件格式。如果是由PIL创建的图像,则其文件格式为None。例子:>>>from P原创 2016-02-12 18:05:21 · 53463 阅读 · 1 评论 -
Python图像处理库PIL的基本概念介绍
这一节我们介绍一下PIL中的基本概念。PIL中所涉及的基本概念有如下几个:通道(bands)、模式(mode)、尺寸(size)、坐标系统(coordinate system)、调色板(palette)、信息(info)和滤波器(filters)。1、 通道每张图片都是由一个或者多个数据通道构成。PIL允许在单张图片中合成相同维数和深度的多个通道。以RGB图像为例,每张图原创 2016-02-09 22:02:20 · 29493 阅读 · 3 评论 -
Python图像处理库PIL的基本模块介绍
PIL有如下几个模块:Image模块、ImageChops模块、ImageCrackCode模块、ImageDraw模块、ImageEnhance模块、ImageFile模块、ImageFileIO模块、ImageFilter模块、ImageFont模块、ImageGrab模块、ImageOps模块、ImagePath模块、ImageSequence模块、ImageStat模块、ImageTk模块原创 2016-02-11 21:40:07 · 15110 阅读 · 0 评论 -
Win7下安装Python图像处理库PIL
近期为了研究图像处理相关知识,我需要搭建一个环境,可以编写图像处理方面的程序。通过比较,最后决定使用python语言。Python(英国发音:/ˈpaɪθən/美国发音:/ˈpaɪθɑːn/),是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。Python是纯粹的自由软件,源代码和解释器CPython遵循原创 2016-02-01 22:53:53 · 11269 阅读 · 3 评论