Python调用腾讯API进行人像动漫化效果实例

 更新时间:2024年04月08日 11:22:23   作者:ZHW_AI课题组  
最近上网的时候看到了一个有趣的东西,叫做人物动漫化,尝试着用python实现了,所以下面这篇文章主要给大家介绍了关于Python调用腾讯API进行人像动漫化效果的相关资料,需要的朋友可以参考下

1. API获取

1.确保电脑正确连接网络。

2.浏览器搜索“腾讯云”,或者输入网址:

https://cloud.tencent.com

3.进行简单的注册、实名认证。

4.新建一个密钥

5.在搜索框搜索人像变换,点击控制台入口下方的人像动漫画,扫码实名认证。

6.实名验证成功之后,就可在此页面查看API的调用情况。

7.搜索相关文档找到想要的API

8.勾选“只看必要参数”,随意选择一个地区,点击“发起调用”,右边框中选择自己熟悉的计算机语言,我选用的是python

2. 代码调试

2.1整体结构

2.2 代码解析

pip 安装腾讯云SDK:

pip install --upgrade tencentcloud-sdk-python 

导入必要的包,输入申请好的密钥和密码,读取图片,然后将图片转码。

import json
from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from tencentcloud.ft.v20200304 import ft_client, models
import base64

SecretId = "自己的SecretId"
SecretKey = "自己的SecretKey"

img_dir = "C:/Users/Ben/Desktop/img/flower.jpg"
with open(img_dir, 'rb') as f:
    base64_data = base64.b64encode(f.read())
    base64_code = base64_data.decode()

问:图片在发送之前被编码成了啥? 答:一堆神秘的字符串

调用API处理图片, 接收数据,解码显示。

pip 安装腾讯云SDK:

try:
    cred = credential.Credential(SecretId, SecretKey)
    httpProfile = HttpProfile()
    httpProfile.endpoint = "ft.tencentcloudapi.com"
    clientProfile = ClientProfile()
    clientProfile.httpProfile = httpProfile
    client = ft_client.FtClient(cred, "ap-beijing", clientProfile)
    req = models.FaceCartoonPicRequest()
    req.Image = base64_code
    resp = client.FaceCartoonPic(req)
    print(resp)
    json_data = resp.to_json_string()
    bb = json.loads(json_data)

    image = bb["ResultImage"]

    with open('C:/Users/Ben/Desktop/img/flower2.jpg', 'wb') as f:
        f.write(base64.b64decode(image))
        f.close()

问:API调用成功返回给电脑了什么?

答:返回一个字典类型的数据。

2.3完整代码

import json
from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from tencentcloud.ft.v20200304 import ft_client, models
import base64

SecretId = "自己的SecretId"
SecretKey = "自己的SecretKey"

img_dir = "C:/Users/Ben/Desktop/img/flower.jpg"
with open(img_dir, 'rb') as f:
    base64_data = base64.b64encode(f.read())
    base64_code = base64_data.decode()

try:
    cred = credential.Credential(SecretId, SecretKey)
    httpProfile = HttpProfile()
    httpProfile.endpoint = "ft.tencentcloudapi.com"
    clientProfile = ClientProfile()
    clientProfile.httpProfile = httpProfile
    client = ft_client.FtClient(cred, "ap-beijing", clientProfile)
    req = models.FaceCartoonPicRequest()
    req.Image = base64_code
    resp = client.FaceCartoonPic(req)
    print(resp)
    json_data = resp.to_json_string()
    bb = json.loads(json_data)

    image = bb["ResultImage"]

    with open('C:/Users/Ben/Desktop/img/flower2.jpg', 'wb') as f:
        f.write(base64.b64decode(image))
        f.close()

except TencentCloudSDKException as err:
    print(err)

2.4效果展示:

3. 问题与分析

API返回的参数需要使用 “ .to_json_string() “像数据格式转换为json可读的形式否则如下图:

如果上传的照片没有人脸:

总结

到此这篇关于Python调用腾讯API进行人像动漫化效果的文章就介绍到这了,更多相关Python人像动漫化内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python+xlwings制作天气预报表

    Python+xlwings制作天气预报表

    python操作Excel的模块,网上提到的模块大致有:xlwings、xlrd、xlwt、openpyxl、pyxll等。本文将利用xlwings模块制作一个天气预报表,需要的可以参考一下
    2022-01-01
  • 如何写python的配置文件

    如何写python的配置文件

    在本篇文章里小编给大家分享了关于python写配置文件方法,对此有兴趣的朋友们可以学习参考下。
    2020-06-06
  • Python轻松读写TOML文件实现示例

    Python轻松读写TOML文件实现示例

    这篇文章主要介绍了Python轻松读写TOML文件实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • 一文带你了解Python中pymysql的使用

    一文带你了解Python中pymysql的使用

    pymysql就是联通mysql实现python窗口与mysql数据库交互的库,十分方便操作,这篇文章将详细说明如何掌握并使用该库,感兴趣的可以了解一下
    2023-02-02
  • python数据挖掘使用Evidently创建机器学习模型仪表板

    python数据挖掘使用Evidently创建机器学习模型仪表板

    在本文中,我们将探索 Evidently 并创建交互式报告/仪表板。有需要的朋友欢迎大家收藏学习,希望能够有所帮助,祝大家多多进步早日升职加薪
    2021-11-11
  • Python的控制结构之For、While、If循环问题

    Python的控制结构之For、While、If循环问题

    这篇文章主要介绍了Python的控制结构之For、While、If循环问题,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 解决pyinstaller打包pyqt5的问题

    解决pyinstaller打包pyqt5的问题

    今天小编就为大家分享一篇解决pyinstaller打包pyqt5的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • python中的list字符串元素排序

    python中的list字符串元素排序

    这篇文章主要介绍了python中的list字符串元素排序方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • python定位xpath 节点位置的方法

    python定位xpath 节点位置的方法

    今天小编就为大家分享一篇python定位xpath 节点位置的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • python实现二次元图片展示(屏保)

    python实现二次元图片展示(屏保)

    这篇文章主要介绍了python实现二次元图片展示,用了API端口相关的知识实现,下面详细的文章内容需要的小伙伴可以参考一下
    2022-02-02

最新评论