美白,磨皮,搞笑图片处理
PIL库
这是一个支持图像存储、显示和处理的函数库,它能够处理几乎所有图像格式,可以完成对图像的缩放、裁剪、叠加以及图像添加条纹,文字等信息等的操作。
首先我们当然学习的是经典的Image子库;
方法 | 描述 |
Image.open(filename) | 根据参数加载图像文件 |
Image.new(mode,size,color) | 根据给定参数创建一个新的图像 |
Image.open(StringIO.StringIO(buffer)) | 从字符串中获取图像 |
Image.frombytes(mode,size,data) | 根据像素点data创建图像 |
Image.verify() |
对图像文件完整性进行检查,返回异常 |
首先我认识到一个简单的例子:读取下载好的图片并将它可视化(代码如下):
1
2
3
|
from PIL import Image im = Image.open( 'test1.jpg' ) # 读取图片 im.show() # 可视化 |
通过使用相关的图片查看器,我们就可以打开自己桌面上图片进行可视化了
美颜开始:
代码如下:
from
PIL import Image
from
PIL import ImageEnhance
import cv2
import numpy
as
np
# image = Image.open('test4.jpg')
#image.show()
def BrightnessEnhancement(brightness):
image = Image.open(
'test4.jpg'
)
enh_bri = ImageEnhance.Brightness(image)
# brightness =1.5
image_brightened = enh_bri.enhance(brightness)
image_brightened.show()
def ContrastEnhancement(contrast):
image = Image.open(
'test4.jpg'
)
enh_con = ImageEnhance.Contrast(image)
# contrast =1.5
image_contrasted = enh_con.enhance(contrast)
image_contrasted.show()
def ColorEnhancement(color):
image = Image.open(
'test4.jpg'
)
enh_col = ImageEnhance.Color(image)
# color =0.8
image_colored = enh_col.enhance(color)
image_colored.show()
def SharpnessEnhancement(sharpness):
image = Image.open(
'test4.jpg'
)
enh_sha = ImageEnhance.Sharpness(image)
# sharpness = 2
image_sharped = enh_sha.enhance(sharpness)
image_sharped.show()
def Filter(image):
image =cv2.imread(
'test4.jpg'
)
Remove=cv2.bilateralFilter(image,0,0,10)
cv2.imshow(
'filter'
,Remove)
cv2.waitKey(0)
cv2.destroyAllWindows()
# res = np.uint8(np.clip((1.2 * image + 10), 0, 255))
# tmp = np.hstack((dst, res))
# cv2.imshow('bai',res)
def WhiteBeauty(image,whi):
image =cv2.imread(
'test4.jpg'
)
white = np.uint8(np.clip((whi * image + 50), 0, 255))
cv2.imshow(
'bai'
,white)
cv2.waitKey(0)
cv2.destroyAllWindows()
if
__name__ ==
"__main__"
:
filepath =
'test4.jpg'
#原始图像
brightness = 1.5
contrast = 0.2
color=1.9
sharpness=0.1
BrightnessEnhancement(brightness)
ContrastEnhancement(contrast)
ColorEnhancement(color)
SharpnessEnhancement(sharpness)
whi = 1.2
image =cv2.imread(
'test4.jpg'
)
Filter(image)
WhiteBeauty(image,whi)
美白成功