From 654fb4952c8f3d77b1645be6465954178500b71e Mon Sep 17 00:00:00 2001 From: newrain001 Date: Sun, 5 Sep 2021 12:49:41 +0000 Subject: [PATCH] =?UTF-8?q?=E6=97=B7=E8=A7=86ai=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 美颜/requirements.txt | 7 ++++ 美颜/view.py | 88 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100644 美颜/requirements.txt create mode 100644 美颜/view.py diff --git a/美颜/requirements.txt b/美颜/requirements.txt new file mode 100644 index 0000000..7dbb8aa --- /dev/null +++ b/美颜/requirements.txt @@ -0,0 +1,7 @@ +certifi==2021.5.30 +charset-normalizer==2.0.4 +colorama==0.4.4 +idna==3.2 +requests==2.26.0 +tqdm==4.62.2 +urllib3==1.26.6 diff --git a/美颜/view.py b/美颜/view.py new file mode 100644 index 0000000..12d99c1 --- /dev/null +++ b/美颜/view.py @@ -0,0 +1,88 @@ +desc = ''' +*********************************************** +authOr: newrain * +blog: https://blog.csdn.net/NewRain_wang * + https://newrain001.gitee.io * +github: https://github.com/newrain001 * +gitee : https://gitee.com/newrain001 * +email : newrain_wang@163.com * +*********************************************** +1、此脚本采用旷视ai人脸美颜技术接口 +https://www.faceplusplus.com.cn/ +2、文件不得大于2M +3、像素不大大于4096x4096 +4、首次执行程序后会生成配置文件,请注册并填写api_key和api_secret +5、配置文件解析 +'whitening': 100, # 美白 +'smoothing': 100, # 磨皮 +'thinface': 100, # 瘦脸 +'shrink_face': 100, # 小脸 +'enlarge_eye': 100, # 大眼 +'remove_eyebrow': 100, # 去眉毛 +'filter_type': 'beautify', # 滤镜 https://console.faceplusplus.com.cn/documents/134252584 +6、原图请放置在images文件夹中,新图会在源文件前加上new +''' +from requests import post +from time import sleep +from json import dump,load +import os +import base64 + + +# from tqdm import tqdm + +class Kuangshi(): + def __init__(self): + if not os.path.exists('./readme.txt'): + with open('./readme.txt', 'w', encoding='utf-8') as f: + f.write(desc) + os.system('notepad ./readme.txt') + if not os.path.exists('./config.json'): + config = { + 'api_key': '', + 'api_secret': '', + 'whitening': 100, # 美白 + 'smoothing': 100, # 磨皮 + 'thinface': 100, # 瘦脸 + 'shrink_face': 100, # 小脸 + 'enlarge_eye': 100, # 大眼 + 'remove_eyebrow': 100, # 去眉毛 + 'filter_type': 'beautify', # 滤镜 https://console.faceplusplus.com.cn/documents/134252584 + } + with open('./config.json', 'w') as f: + dump(config, f, indent='\t', ensure_ascii=False) + print('请先修改配置文件运行') + sleep(5) + else: + with open('./config.json', 'r') as f: + self.config = load(f) + if not os.path.exists('./images'): + os.mkdir('./images') + print('请将需要优化的图片放置在images目录中') + sleep(5) + else: + image = os.listdir('./images') + self.image = [i for i in image if not i.startswith('new')] + + def beautify_image(self): + os.startfile('images') + for image in self.image: + #try: + if not image.startswith('new'): + r = post(url='https://api-cn.faceplusplus.com/facepp/v2/beautify', + data=self.config, + files={ + 'image_file': (image, open(os.path.join('./images', image), 'rb'), 'image/jpeg')}) + print(r.json()) + with open(os.path.join('./images', 'new_' + image), 'wb') as f: + f.write(base64.b64decode(r.json()['result'])) + sleep(3) + # except Exception as e: + # print(e) + # print('处理异常') + # sleep(5) + + +if __name__ == '__main__': + ai = Kuangshi() + ai.beautify_image()