百度智能云.图像特效:图像风格转换&黑白图像上色

目标

在上一篇文章中体验了人像动漫化效果,看了官方文档,这个还可以转换图像的风格和黑白图像上色,这个必须要尝试一下。

准备工作

  1. 百度云智能账号
  2. 创建图像特效应用
  3. 开发环境python3.7+pycharm

首先要注册一个百度智能云账号,并创建这个图像特效应用
在这里插入图片描述

操作流程

1.阅读官方文档

官方文档
当我们要使用一个我们不太了解的东西时,阅读官方文档无疑是最重要的,官方文档一般都写的特别详细,对每一个功能描述的很细节,我们先来看一下
在这里插入图片描述
这个调用api的方式和上篇文章的类似,就不在过多的阐述,详见:百度智能云.图像特效:人像动漫化

2.开始实现鉴权

修改上述代码以获取access_token

import requests
def get_access_token(id,secret):
    get_access_token_url='https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+id+'&client_secret='+secret
    response=requests.get(get_access_token_url)
    content=response.json()
    access_token=content['access_token']
    print(access_token)
id='*******************'
secret='******************'
get_access_token(id,secret)

3.图像风格转换

正片开始
在这里插入图片描述
在这里插入图片描述

完整代码如下

import requests
import base64
def get_access_token(id,secret):
    get_access_token_url='https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+id+'&client_secret='+secret
    response=requests.get(get_access_token_url)
    content=response.json()
    access_token=content['access_token']
    return access_token

def change(img_file,access_token):
    request_url='https://aip.baidubce.com/rest/2.0/image-process/v1/style_trans'
    f=open(img_file,'rb')
    image=base64.b64encode(f.read())
    params = {"image":image,"option":"pencil"}#风格参数
    request_url = request_url + "?access_token=" + access_token
    headers = {'content-type': 'application/x-www-form-urlencoded'}
    response = requests.post(request_url, data=params, headers=headers)
    image_content=response.json()
    image=image_content['image']
    with open('result2.jpg','wb') as f:
        f.write(base64.b64decode(image))
def main():
    img_file = '1.jpg'#图片地址
    id = '**************************'
    secret = '**************************'
    access_token = get_access_token(id, secret)
    change(img_file, access_token)
if __name__ == '__main__':
    main()

4.对比一下

原图:
在这里插入图片描述
效果图:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
其他的就不试了,你喜欢哪种风格呢?快去尝试一下吧。

5.黑白图像上色

官方文档
在这里插入图片描述
完整代码如下:

import requests
import base64
def get_access_token(id,secret):
    get_access_token_url='https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+id+'&client_secret='+secret
    response=requests.get(get_access_token_url)
    content=response.json()
    access_token=content['access_token']
    return access_token

def add_color(img_file,access_token):
    request_url='https://aip.baidubce.com/rest/2.0/image-process/v1/colourize'
    f=open(img_file,'rb')
    image=base64.b64encode(f.read())
    params = {"image":image,"option":"mononoke"}
    request_url = request_url + "?access_token=" + access_token
    headers = {'content-type': 'application/x-www-form-urlencoded'}
    response = requests.post(request_url, data=params, headers=headers)
    image_content=response.json()
    image=image_content['image']
    with open('result3.jpg','wb') as f:
        f.write(base64.b64decode(image))
def main():
    img_file = '3.jpg'#图片地址
    id = '**************************'
    secret = '**************************'
    access_token = get_access_token(id, secret)
    add_color(img_file, access_token)
if __name__ == '__main__':
    main()

对比一下
在这里插入图片描述
在这里插入图片描述
不得不说这个效果还是十分明显的,就很nice。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值