不知道pillow是什么,根据别人的步骤学了之后,才知道是一种图片处理的库
#coding=utf-8
import Image,ImageFilter
'''1'''
im=Image.open('D:\ppppp\images\\test1.jpg')
w,h=im.size
print str(w)+" "+str(h)
im1=im.filter(ImageFilter.BLUR) #模糊需要生成新的对象
im1.save('D:\ppppp\images\\test2.jpg') #\\转义
'''2'''
im2=Image.open('D:\ppppp\images\yingtao.jpg') #(u"樱桃.jpg")-图片命名为中文时
print im2.format,im2.size,im2.mode
#im.thumbnail((w//2,h//2)) 缩略不需要产生新对象但会改变原对象
im3=im2.resize((128,128),Image.ANTIALIAS)
im3.save('D:\ppppp\images\y1.jpg') #改变大小需要生成新的对象且消除锯齿效果
im4=im2.convert('L')
im4.save('D:\ppppp\images\y2.jpg')
'''
img.split()分割通道
bands=img.split()
rIm=bands[0]
gIm=bands[1]
bIm=bands[2]
aIm=bands[3]
remadeImage=Image.merge("RGBA",(rIm,gIm,bIm,aIm))
remadeImage.save("remadeImage.png")
'''
'''3'''
im5=Image.open('D:\ppppp\images\\arrow.png')
im2.paste(im5,(10,10)) #黏贴新图片(10,10)相对左上角的位置
im2.save('D:\ppppp\images\\a1.png')
bounds=(0,0,493,254)
cutoutIm=im2.crop(bounds) #拷贝图片
cutoutIm.save('D:\ppppp\images\cotoutim.png')
fixedIm=im2.rotate(90) #旋转图片
fixedIm.save('D:\ppppp\images\\fixedim.png')
打开图片的方法:
im=Image.open('D:\ppppp\images\\test1.jpg')
保存图片的方法
im1.save('D:\ppppp\images\\test2.jpg')
打开一张图片
模糊后
im1=im.filter(ImageFilter.BLUR)
打开第二张照片
重新改变图片大小后
im3=im2.resize((128,128),Image.ANTIALIAS)
转换图片的色彩---有RBGA转成L
im4=im2.convert('L')
打开第三张照片
将第三张照片贴在第二张照片上
im2.paste(im5,(10,10)) #黏贴新图片(10,10)相对左上角的位置
根据通道拷贝图片
bounds=(0,0,493,254) #从左下角到右上角
cutoutIm=im2.crop(bounds)
逆时针旋转第二张图片90度
fixedIm=im2.rotate(90)
关于把一张图片编程手绘的,自己不是朝着这方面来学python的,所以没有过多深究其中的含义
我是冲着爬虫来学python的
下面贴网上的代码
#coding=utf-8
import Image,ImageFilter
from PIL import Image
import numpy as np
a = np.asarray(Image.open('D:\ppppp\images\\timg.jpg').convert('L')).astype('float')
depth = 10. # (0-100)
grad = np.gradient(a) # 取图像灰度的梯度值
grad_x, grad_y = grad # 分别取横纵图像梯度值
grad_x = grad_x * depth / 100.
grad_y = grad_y * depth / 100.
A = np.sqrt(grad_x ** 2 + grad_y ** 2 + 1.)
uni_x = grad_x / A
uni_y = grad_y / A
uni_z = 1. / A
vec_el = np.pi / 2.2 # 光源的俯视角度,弧度值
vec_az = np.pi / 4. # 光源的方位角度,弧度值
dx = np.cos(vec_el) * np.cos(vec_az) # 光源对x 轴的影响
dy = np.cos(vec_el) * np.sin(vec_az) # 光源对y 轴的影响
dz = np.sin(vec_el) # 光源对z 轴的影响
b = 255 * (dx * uni_x + dy * uni_y + dz * uni_z) # 光源归一化
b = b.clip(0, 255)
im = Image.fromarray(b.astype('uint8')) # 重构图像
im.save('D:\ppppp\images\\timg2.jpg')
原图
手绘板