当前位置:首页 » 编程语言 » python351

python351

发布时间: 2022-09-05 03:01:34

python的pillow库怎么处理灰度图像

Pillow是Python里的图像处理库(PIL:Python Image Library),提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存、图像显示、格式转换以及基本的图像处理操作等。
1)使用 Image 类
PIL最重要的类是 Image class, 你可以通过多种方法创建这个类的实例;你可以从文件加载图像,或者处理其他图像, 或者从 scratch 创建。
要从文件加载图像,可以使用open( )函数,在Image模块中:
>>> from PIL import Image
>>> im = Image.open("E:/photoshop/1.jpg")

加载成功后,将返回一个Image对象,可以通过使用示例属性查看文件内容:

>>> print(im.format, im.size, im.mode)
('JPEG', (600, 351), 'RGB')
>>>

format 这个属性标识了图像来源。如果图像不是从文件读取它的值就是None。size属性是一个二元tuple,包含width和height(宽度和高度,单位都是px)。 mode 属性定义了图像bands的数量和名称,以及像素类型和深度。常见的modes 有 “L” (luminance) 表示灰度图像, “RGB” 表示真彩色图像, and “CMYK” 表示出版图像。
如果文件打开错误,返回 IOError 错误。
只要你有了 Image 类的实例,你就可以通过类的方法处理图像。比如,下列方法可以显示图像:
im.show()

2)读写图像
PIL 模块支持大量图片格式。使用在 Image 模块的 open() 函数从磁盘读取文件。你不需要知道文件格式就能打开它,这个库能够根据文件内容自动确定文件格式。要保存文件,使用 Image 类的 save() 方法。保存文件的时候文件名变得重要了。除非你指定格式,否则这个库将会以文件名的扩展名作为格式保存。
加载文件,并转化为png格式:

"Python Image Library Test"
from PIL import Image
import os
import sys

for infile in sys.argv[1:]:
f,e = os.path.splitext(infile)
outfile = f +".png"
if infile != outfile:
try:
Image.open(infile).save(outfile)
except IOError:
print("Cannot convert", infile)

save() 方法的第二个参数可以指定文件格式。
3)创建缩略图
缩略图是网络开发或图像软件预览常用的一种基本技术,使用Python的Pillow图像库可以很方便的建立缩略图,如下:
# create thumbnail
size = (128,128)
for infile in glob.glob("E:/photoshop/*.jpg"):
f, ext = os.path.splitext(infile)
img = Image.open(infile)
img.thumbnail(size,Image.ANTIALIAS)
img.save(f+".thumbnail","JPEG")

上段代码对photoshop下的jpg图像文件全部创建缩略图,并保存,glob模块是一种智能化的文件名匹配技术,在批图像处理中经常会用到。
注意:Pillow库不会直接解码或者加载图像栅格数据。当你打开一个文件,只会读取文件头信息用来确定格式,颜色模式,大小等等,文件的剩余部分不会主动处理。这意味着打开一个图像文件的操作十分快速,跟图片大小和压缩方式无关。
4)图像的剪切、粘贴与合并操作
Image 类包含的方法允许你操作图像部分选区,PIL.Image.Image.crop 方法获取图像的一个子矩形选区,如:

# crop, paste and merge
im = Image.open("E:/photoshop/lena.jpg")
box = (100,100,300,300)
region = im.crop(box)

矩形选区有一个4元元组定义,分别表示左、上、右、下的坐标。这个库以左上角为坐标原点,单位是px,所以上诉代码复制了一个 200×200 pixels 的矩形选区。这个选区现在可以被处理并且粘贴到原图。

region = region.transpose(Image.ROTATE_180)
im.paste(region, box)

当你粘贴矩形选区的时候必须保证尺寸一致。此外,矩形选区不能在图像外。然而你不必保证矩形选区和原图的颜色模式一致,因为矩形选区会被自动转换颜色。
5)分离和合并颜色通道
对于多通道图像,有时候在处理时希望能够分别对每个通道处理,处理完成后重新合成多通道,在Pillow中,很简单,如下:

r,g,b = im.split()
im = Image.merge("RGB", (r,g,b))

对于split( )函数,如果是单通道的,则返回其本身,否则,返回各个通道。
6)几何变换
对图像进行几何变换是一种基本处理,在Pillow中包括resize( )和rotate( ),如用法如下:

out = im.resize((128,128))
out = im.rotate(45) # degree conter-clockwise

其中,resize( )函数的参数是一个新图像大小的元祖,而rotate( )则需要输入顺时针的旋转角度。在Pillow中,对于一些常见的旋转作了专门的定义:

out = im.transpose(Image.FLIP_LEFT_RIGHT)
out = im.transpose(Image.FLIP_TOP_BOTTOM)
out = im.transpose(Image.ROTATE_90)
out = im.transpose(Image.ROTATE_180)
out = im.transpose(Image.ROTATE_270)

7)颜色空间变换
在处理图像时,根据需要进行颜色空间的转换,如将彩色转换为灰度:

cmyk = im.convert("CMYK")
gray = im.convert("L")

8)图像滤波
图像滤波在ImageFilter 模块中,在该模块中,预先定义了很多增强滤波器,可以通过filter( )函数使用,预定义滤波器包括:
BLUR、CONTOUR、DETAIL、EDGE_ENHANCE、EDGE_ENHANCE_MORE、EMBOSS、FIND_EDGES、SMOOTH、SMOOTH_MORE、SHARPEN。其中BLUR就是均值滤波,CONTOUR找轮廓,FIND_EDGES边缘检测,使用该模块时,需先导入,使用方法如下:

from PIL import ImageFilter

imgF = Image.open("E:/photoshop/lena.jpg")
outF = imgF.filter(ImageFilter.DETAIL)
conF = imgF.filter(ImageFilter.CONTOUR)
edgeF = imgF.filter(ImageFilter.FIND_EDGES)
imgF.show()
outF.show()
conF.show()
edgeF.show()

除此以外,ImageFilter模块还包括一些扩展性强的滤波器:
class PIL.ImageFilter.GaussianBlur(radius=2)

❷ centos 7 为什么 python3 知乎

1–下载python3.5的包
在python官网https://www.python.org/downloads/release/python-351/
下载tgz包就可以了。其实下面的2个包其一都可以使用
Python-3.5.1.tgz (这个不是编译过的东西,不能解压之后直接使用)
Python-3.5.1.tar.xz (这个是pthon的源码)
2–解压文件
tar -xf Python-3.5.1.tgz

3–解压之后有一个目录Python-3.5.1,进入目录
cd Python-3.5.1

4–开始安装,使用编译的方法进行安装
在python的目录中有一个README文件,他介绍了如何安装python。 但是我们要指定这个安装目录
mkdir /usr/python3.5./configure --prefix=/usr/python3.5makemake install

说明./configure命令执行完毕之后创建一个文件creating Makefile,供下面的make命令使用 执行make install之后就会把程序安装到我们指定的目录中去
5–让系统默认使用Python 3.5.1
在/usr/bin中有python、python2、python2.7三个文件依次指向后者,我们将python备份
cd /usr/bin mv python python.bak ln -s /usr/python3.5/bin/python3 /usr/bin/python

注意我们编译安装之后在/usr/python3.5/bin下会自动生成一个python3的连接,他指向bin目录中的python3.5
6–因为yum使用python2,因此替换为python3后可能无法正常工作,继续使用这个python2.7.5
因此修改yum配置文件(sudo vi /usr/bin/yum)。 把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可

❸ Python LXML模块死活安装不了怎么办

最好先说明一下你的python的版本,这样更方便回答一些 我就简单说一下我的解决办法吧 平台是win10 64位 python版本是351 64位 打开python35程序 输入 import pip; print(pippep425tagsget_supported()) 显示如下图: 详细什么意思就不太清Python LXML模块死活安装不了怎么办

❹ python的pillow库怎么使用

Pillow是Python里的图像处理库(PIL:Python Image Library),提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存、图像显示、格式转换以及基本的图像处理操作等。

1)使用 Image 类
PIL最重要的类是 Image class, 你可以通过多种方法创建这个类的实例;你可以从文件加载图像,或者处理其他图像, 或者从 scratch 创建。

要从文件加载图像,可以使用open( )函数,在Image模块中:

[python]view plain

  • >>>fromPILimportImage

  • >>>im=Image.open("E:/photoshop/1.jpg")

  • 加载成功后,将返回一个Image对象,可以通过使用示例属性查看文件内容:

    [python]view plain

  • >>>print(im.format,im.size,im.mode)

  • ('JPEG',(600,351),'RGB')

  • >>>

  • format这个属性标识了图像来源。如果图像不是从文件读取它的值就是None。size属性是一个二元tuple,包含width和height(宽度和高度,单位都是px)。mode属性定义了图像bands的数量和名称,以及像素类型和深度。常见的modes 有 “L” (luminance) 表示灰度图像, “RGB” 表示真彩色图像, and “CMYK” 表示出版图像。
    如果文件打开错误,返回IOError错误。
    只要你有了 Image 类的实例,你就可以通过类的方法处理图像。比如,下列方法可以显示图像:

    [python]view plain

  • im.show()

  • 2)读写图像
    PIL 模块支持大量图片格式。使用在 Image 模块的 open() 函数从磁盘读取文件。你不需要知道文件格式就能打开它,这个库能够根据文件内容自动确定文件格式。要保存文件,使用 Image 类的 save() 方法。保存文件的时候文件名变得重要了。除非你指定格式,否则这个库将会以文件名的扩展名作为格式保存。

    加载文件,并转化为png格式:

    [python]view plain

  • "PythonImageLibraryTest"

  • fromPILimportImage

  • importos

  • importsys

  • forinfileinsys.argv[1:]:

  • f,e=os.path.splitext(infile)

  • outfile=f+".png"

  • ifinfile!=outfile:

  • try:

  • Image.open(infile).save(outfile)

  • exceptIOError:

  • print("Cannotconvert",infile)

  • save() 方法的第二个参数可以指定文件格式。
    3)创建缩略图

    缩略图是网络开发或图像软件预览常用的一种基本技术,使用Python的Pillow图像库可以很方便的建立缩略图,如下:

    [python]view plain

  • #createthumbnail

  • size=(128,128)

  • forinfileinglob.glob("E:/photoshop/*.jpg"):

  • f,ext=os.path.splitext(infile)

  • img=Image.open(infile)

  • img.thumbnail(size,Image.ANTIALIAS)

  • img.save(f+".thumbnail","JPEG")

  • 上段代码对photoshop下的jpg图像文件全部创建缩略图,并保存,glob模块是一种智能化的文件名匹配技术,在批图像处理中经常会用到。
    注意:Pillow库不会直接解码或者加载图像栅格数据。当你打开一个文件,只会读取文件头信息用来确定格式,颜色模式,大小等等,文件的剩余部分不会主动处理。这意味着打开一个图像文件的操作十分快速,跟图片大小和压缩方式无关。

    4)图像的剪切、粘贴与合并操作

    Image 类包含的方法允许你操作图像部分选区,PIL.Image.Image.crop 方法获取图像的一个子矩形选区,如:

    [python]view plain

  • #crop,pasteandmerge

  • im=Image.open("E:/photoshop/lena.jpg")

  • box=(100,100,300,300)

  • region=im.crop(box)

  • 矩形选区有一个4元元组定义,分别表示左、上、右、下的坐标。这个库以左上角为坐标原点,单位是px,所以上诉代码复制了一个 200x200 pixels 的矩形选区。这个选区现在可以被处理并且粘贴到原图。

    [python]view plain

  • region=region.transpose(Image.ROTATE_180)

  • im.paste(region,box)

  • 当你粘贴矩形选区的时候必须保证尺寸一致。此外,矩形选区不能在图像外。然而你不必保证矩形选区和原图的颜色模式一致,因为矩形选区会被自动转换颜色。

    5)分离和合并颜色通道

    对于多通道图像,有时候在处理时希望能够分别对每个通道处理,处理完成后重新合成多通道,在Pillow中,很简单,如下:

    [python]view plain

  • r,g,b=im.split()

  • im=Image.merge("RGB",(r,g,b))

  • 对于split( )函数,如果是单通道的,则返回其本身,否则,返回各个通道。
    6)几何变换

    对图像进行几何变换是一种基本处理,在Pillow中包括resize( )和rotate( ),如用法如下:

    [python]view plain

  • out=im.resize((128,128))

  • out=im.rotate(45)#degreeconter-clockwise

  • 其中,resize( )函数的参数是一个新图像大小的元祖,而rotate( )则需要输入顺时针的旋转角度。在Pillow中,对于一些常见的旋转作了专门的定义:

    [python]view plain

  • out=im.transpose(Image.FLIP_LEFT_RIGHT)

  • out=im.transpose(Image.FLIP_TOP_BOTTOM)

  • out=im.transpose(Image.ROTATE_90)

  • out=im.transpose(Image.ROTATE_180)

  • out=im.transpose(Image.ROTATE_270)

  • 7)颜色空间变换

    在处理图像时,根据需要进行颜色空间的转换,如将彩色转换为灰度:

    [python]view plain

  • cmyk=im.convert("CMYK")

  • gray=im.convert("L")

  • 8)图像滤波

    图像滤波在ImageFilter 模块中,在该模块中,预先定义了很多增强滤波器,可以通过filter( )函数使用,预定义滤波器包括:

    BLUR、CONTOUR、DETAIL、EDGE_ENHANCE、EDGE_ENHANCE_MORE、EMBOSS、FIND_EDGES、SMOOTH、SMOOTH_MORE、SHARPEN。其中BLUR就是均值滤波,CONTOUR找轮廓,FIND_EDGES边缘检测,使用该模块时,需先导入,使用方法如下:

    [python]view plain

  • fromPILimportImageFilter

  • imgF=Image.open("E:/photoshop/lena.jpg")

  • outF=imgF.filter(ImageFilter.DETAIL)

  • conF=imgF.filter(ImageFilter.CONTOUR)

  • edgeF=imgF.filter(ImageFilter.FIND_EDGES)

  • imgF.show()

  • outF.show()

  • conF.show()

  • edgeF.show()

  • 除此以外,ImageFilter模块还包括一些扩展性强的滤波器:

  • classPIL.ImageFilter.GaussianBlur(radius=2)

  • Gaussian blur filter.

    参数:

    radius– Blur radius.
  • classPIL.ImageFilter.UnsharpMask(radius=2,percent=150,threshold=3)

  • Unsharp mask filter.

    See Wikipedia’s entry ondigital unsharp maskingfor an explanation of the parameters.

  • classPIL.ImageFilter.Kernel(size,kernel,scale=None,offset=0)

  • Create a convolution kernel. The current version only supports 3x3 and 5x5 integer and floating point kernels.

    In the current version, kernels can only be applied to “L” and “RGB” images.

    参数:

  • size– Kernel size, given as (width, height). In the current version, this must be (3,3) or (5,5).

  • kernel– A sequence containing kernel weights.

  • scale– Scale factor. If given, the result for each pixel is divided by this value. the default is the sum of the kernel weights.

  • offset– Offset. If given, this value is added to the result, after it has been divided by the scale factor.

  • classPIL.ImageFilter.RankFilter(size,rank)

  • Create a rank filter. The rank filter sorts all pixels in a window of the given size, and returns therank‘th value.

    参数:

  • size– The kernel size, in pixels.

  • rank– What pixel value to pick. Use 0 for a min filter,size*size/2for a median filter,size*size-1for a max filter, etc.

  • classPIL.ImageFilter.MedianFilter(size=3)

  • Create a median filter. Picks the median pixel value in a window with the given size.

    参数:

    size– The kernel size, in pixels.
  • classPIL.ImageFilter.MinFilter(size=3)

  • Create a min filter. Picks the lowest pixel value in a window with the given size.

    参数:

    size– The kernel size, in pixels.
  • classPIL.ImageFilter.MaxFilter(size=3)

  • Create a max filter. Picks the largest pixel value in a window with the given size.

    参数:

    size– The kernel size, in pixels.
  • classPIL.ImageFilter.ModeFilter(size=3)

  • Create a mode filter. Picks the most frequent pixel value in a box with the given size. Pixel values that occur only once or twice are ignored; if no pixel value occurs more than twice, the original pixel value is preserved.

    参数:

    size– The kernel size, in pixels.

    更多详细内容可以参考:PIL/ImageFilter

  • 9)图像增强

    图像增强也是图像预处理中的一个基本技术,Pillow中的图像增强函数主要在ImageEnhance模块下,通过该模块可以调节图像的颜色、对比度和饱和度和锐化等:

    [python]view plain

  • fromPILimportImageEnhance

  • imgE=Image.open("E:/photoshop/lena.jpg")

  • imgEH=ImageEnhance.Contrast(imgE)

  • imgEH.enhance(1.3).show("30%morecontrast")

  • 图像增强:

  • classPIL.ImageEnhance.Color(image)

  • Adjust image color balance.

    This class can be used to adjust the colour balance of an image, in a manner similar to the controls on a colour TV set. An enhancement factor of 0.0 gives a black and white image. A factor of 1.0 gives the original image.

  • classPIL.ImageEnhance.Contrast(image)

  • Adjust image contrast.

    This class can be used to control the contrast of an image, similar to the contrast control on a TV set. An enhancement factor of 0.0 gives a solid grey image. A factor of 1.0 gives the original image.

  • classPIL.ImageEnhance.Brightness(image)

  • Adjust image brightness.

    This class can be used to control the brighntess of an image. An enhancement factor of 0.0 gives a black image. A factor of 1.0 gives the original image.

  • classPIL.ImageEnhance.Sharpness(image)

  • Adjust image sharpness.

    This class can be used to adjust the sharpness of an image. An enhancement factor of 0.0 gives a blurred image, a factor of 1.0 gives the original image, and a factor of 2.0 gives a sharpened image.

  • 图像增强的详细内容可以参考:PIL/ImageEnhance

    除了以上介绍的内容外,Pillow还有很多强大的功能:

    PIL.Image.alpha_composite(im1,im2)

    PIL.Image.blend(im1,im2,alpha)

    PIL.Image.composite(image1,image2,mask)
    PIL.Image.eval(image,*args)

    PIL.Image.fromarray(obj,mode=None)

    PIL.Image.frombuffer(mode,size,data,decoder_name='raw',*args)

❺ python中 运行 print((5025-525)/100+18*17)的结果是351.0,为什么是有一个小数点加个0呢,不是351呢

这是python的官方文档里的一句说明:

上面图片说白了就是,如果一项算式中有N个操作数,但是只要有1个操作数是符点型(符点型就简单的理解为带小数点的数即可),则最终的结果的类型就是符点型。

因为除法得到的结果是符点型的 //可以在python解释器中输入type(2/1),会告诉你结果是float类型

所以(5025-525)/100这步的运算得到的是一个符点型值45.0,既然运算中有一个是符点型值了,则后面无论加减乘除,你最终得到的结果都是符点型,而符点型的标志就是小数点,所以即使是整数也显示的是后面带.0的

*.看看能看明白不,哪句不清楚,可以追问

❻ 如何用Python编写一个素数环

代码:
n = int(input("请输入最大数n:"))
lists = [[1]]#多个素数环
surplusnum = list(range(1,n+1)) #剩余的数
def sumisprime(x, y):
#x与y之和是否是素数
isprime=True#是否是素数
s = x + y#和
for i in range(2, int(s**0.5)+1):
#素数判定法:从2开始直到此数的开方内的整数都不能被该数整除,则此数为素数
if s%i == 0:#能被整除
isprime = False#不是素数
break#跳出循环
return isprime#返回后否是素数(是:True,否:False)
changelast=lambda listx,addvalue:listx[0:-1]+[addvalue]#改变列表末尾的函数
while len(lists[0] if len(lists) else [0]*n) < n:#当素数环长度小于最大数时
n2 = len(lists[0]) #n2为判定,理论当前列表长度最大值
for listn in lists:#遍历各个可能的素数环
surplusnum=list(range(1,n+1))#默认值
for j in listn:#遍历当前列表的数
surplusnum.remove(j)#剩余的数中删除此数
for i in surplusnum:#遍历剩余的数
if sumisprime(listn[n2-1], i):#最后一个数与它的和是素数
if len(listn) == n2:#如果现在这个列表是没有被添加过的
listn.append(i)#增加在这个列表
else:#如果该列表已经被添加过
lista = changelast(listn, i)#要加入的列表
if lista not in lists:#如果不在这个列表里
lists.append(lista)#添加到另一个列表
for listn in lists.():#防止lists被删造成影响
if len(listn) != n2+1:#如果长度没有达到预期(+1)
lists.remove(listn)#删除该列表(取消此可能性)
if len(lists[0]) == n:#已经符合条件
for listn in lists:#遍历列表,检查首尾
if sumisprime(listn[-1], listn[0]):#如果首尾相加等于素数
print(listn)#环成立,打印出来
break#结束循环
说明:经试验,都没什么问题,n=12也能很快运算完(但我劝你不要打出来),如果你只需要1个素数环,可以把break的缩进调到print(listn)并列。

❼ Python不能安装ez_setup.py,提示错误,怎么办

需要进入你的python安装路径,更改里面的代码,再次用cmd运行安装命令即可。

❽ python图像处理初学者求助

Pillow是Python里的图像处理库(PIL:Python Image Library),提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存、图像显示、格式转换以及基本的图像处理操作等。
1)使用 Image 类
PIL最重要的类是 Image class, 你可以通过多种方法创建这个类的实例;你可以从文件加载图像,或者处理其他图像, 或者从 scratch 创建。
要从文件加载图像,可以使用open( )函数,在Image模块中:

1
2

>>> from PIL import Image
>>> im = Image.open("E:/photoshop/1.jpg")

加载成功后,将返回一个Image对象,可以通过使用示例属性查看文件内容:

1
2
3

>>> print(im.format, im.size, im.mode)
('JPEG', (600, 351), 'RGB')
>>>

format 这个属性标识了图像来源。如果图像不是从文件读取它的值就是None。size属性是一个二元tuple,包含width和height(宽度和高度,单位都是px)。 mode 属性定义了图像bands的数量和名称,以及像素类型和深度。常见的modes 有 “L” (luminance) 表示灰度图像, “RGB” 表示真彩色图像, and “CMYK” 表示出版图像。
如果文件打开错误,返回 IOError 错误。
只要你有了 Image 类的实例,你就可以通过类的方法处理图像。比如,下列方法可以显示图像:

1

im.show()

2)读写图像
PIL 模块支持大量图片格式。使用在 Image 模块的 open() 函数从磁盘读取文件。你不需要知道文件格式就能打开它,这个库能够根据文件内容自动确定文件格式。要保存文件,使用 Image 类的 save() 方法。保存文件的时候文件名变得重要了。除非你指定格式,否则这个库将会以文件名的扩展名作为格式保存。
加载文件,并转化为png格式:

1
2
3
4
5
6
7
8
9
10
11
12
13

"Python Image Library Test"
from PIL import Image
import os
import sys

for infile in sys.argv[1:]:
f,e = os.path.splitext(infile)
outfile = f +".png"
if infile != outfile:
try:
Image.open(infile).save(outfile)
except IOError:
print("Cannot convert", infile)

save() 方法的第二个参数可以指定文件格式。
3)创建缩略图
缩略图是网络开发或图像软件预览常用的一种基本技术,使用Python的Pillow图像库可以很方便的建立缩略图,如下:

1
2
3
4
5
6
7

# create thumbnail
size = (128,128)
for infile in glob.glob("E:/photoshop/*.jpg"):
f, ext = os.path.splitext(infile)
img = Image.open(infile)
img.thumbnail(size,Image.ANTIALIAS)
img.save(f+".thumbnail","JPEG")

上段代码对photoshop下的jpg图像文件全部创建缩略图,并保存,glob模块是一种智能化的文件名匹配技术,在批图像处理中经常会用到。
注意:Pillow库不会直接解码或者加载图像栅格数据。当你打开一个文件,只会读取文件头信息用来确定格式,颜色模式,大小等等,文件的剩余部分不会主动处理。这意味着打开一个图像文件的操作十分快速,跟图片大小和压缩方式无关。
4)图像的剪切、粘贴与合并操作
Image 类包含的方法允许你操作图像部分选区,PIL.Image.Image.crop 方法获取图像的一个子矩形选区,如:

1
2
3
4

# crop, paste and merge
im = Image.open("E:/photoshop/lena.jpg")
box = (100,100,300,300)
region = im.crop(box)

矩形选区有一个4元元组定义,分别表示左、上、右、下的坐标。这个库以左上角为坐标原点,单位是px,所以上诉代码复制了一个 200×200 pixels 的矩形选区。这个选区现在可以被处理并且粘贴到原图。

1
2

region = region.transpose(Image.ROTATE_180)
im.paste(region, box)

当你粘贴矩形选区的时候必须保证尺寸一致。此外,矩形选区不能在图像外。然而你不必保证矩形选区和原图的颜色模式一致,因为矩形选区会被自动转换颜色。
5)分离和合并颜色通道
对于多通道图像,有时候在处理时希望能够分别对每个通道处理,处理完成后重新合成多通道,在Pillow中,很简单,如下:

1
2

r,g,b = im.split()
im = Image.merge("RGB", (r,g,b))

对于split( )函数,如果是单通道的,则返回其本身,否则,返回各个通道。
6)几何变换
对图像进行几何变换是一种基本处理,在Pillow中包括resize( )和rotate( ),如用法如下:

1
2

out = im.resize((128,128))
out = im.rotate(45) # degree conter-clockwise

其中,resize( )函数的参数是一个新图像大小的元祖,而rotate( )则需要输入顺时针的旋转角度。在Pillow中,对于一些常见的旋转作了专门的定义:

1
2
3
4
5

out = im.transpose(Image.FLIP_LEFT_RIGHT)
out = im.transpose(Image.FLIP_TOP_BOTTOM)
out = im.transpose(Image.ROTATE_90)
out = im.transpose(Image.ROTATE_180)
out = im.transpose(Image.ROTATE_270)

7)颜色空间变换
在处理图像时,根据需要进行颜色空间的转换,如将彩色转换为灰度:

1
2

cmyk = im.convert("CMYK")
gray = im.convert("L")

8)图像滤波

热点内容
电脑怎么查卡配置 发布:2025-01-14 20:01:29 浏览:27
手机怎么控制服务器 发布:2025-01-14 19:58:46 浏览:307
php难招 发布:2025-01-14 19:06:07 浏览:489
sublime编译php 发布:2025-01-14 18:57:16 浏览:307
云计算服务器是什么 发布:2025-01-14 18:56:22 浏览:44
vip域名查询ftp 发布:2025-01-14 18:46:48 浏览:116
格式化linux 发布:2025-01-14 18:35:14 浏览:595
如何进入安卓原生市场 发布:2025-01-14 18:22:06 浏览:560
台式电脑找不到服务器 发布:2025-01-14 18:19:58 浏览:423
androidsdk网盘 发布:2025-01-14 18:17:43 浏览:82