使用numpy和PIL进行简单的图像处理方法
如下所示:
fromPILimportImage importnumpyasnp #反相 #a=np.array(Image.open("test.jpg")) #b=[255,255,255]-a #灰度,反相 #a=np.array(Image.open("test.jpg").convert('L')) #b=255-a #灰度,颜色变谈 #a=np.array(Image.open("test.jpg").convert('L')) #b=(100/255)*a+150#区间压缩再增加 #灰度,颜色加重 #a=np.array(Image.open("test.jpg").convert('L')) #b=255*(a/255)**2#像素平方 #转手绘 a=np.array(Image.open('test.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("./result.jpg")
以上这篇使用numpy和PIL进行简单的图像处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。