Python调用腾讯API进行人像动漫化

这篇具有很好参考价值的文章主要介绍了Python调用腾讯API进行人像动漫化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 作者介绍

李犇,男, 西安工程大学电子信息学院,21级硕士研究生
研究方向:智能信息处理
电子邮箱:1135264546@qq.com

孟莉苹,女,西安工程大学电子信息学院,2021级硕士研究生,张宏伟人工智能课题组
研究方向:机器视觉与人工智能
电子邮件:2425613875@qq.com

2. API获取

1.确保电脑正确连接网络。
2.浏览器搜索“腾讯云”,或者输入网址:
https://cloud.tencent.com
3.进行简单的注册、实名认证。
4.新建一个密钥
Python调用腾讯API进行人像动漫化

5.在搜索框搜索人像变换,点击控制台入口下方的人像动漫画,扫码实名认证。
Python调用腾讯API进行人像动漫化

6.实名验证成功之后,就可在此页面查看API的调用情况。
Python调用腾讯API进行人像动漫化

7.搜索相关文档找到想要的API
Python调用腾讯API进行人像动漫化

8.勾选“只看必要参数”,随意选择一个地区,点击“发起调用”,右边框中选择自己熟悉的计算机语言,我选用的是python
Python调用腾讯API进行人像动漫化

3. 代码调试

3.1整体结构

Python调用腾讯API进行人像动漫化

3.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()

问:图片在发送之前被编码成了啥? 答:一堆神秘的字符串
Python调用腾讯API进行人像动漫化
调用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调用成功返回给电脑了什么?
答:返回一个字典类型的数据。
Python调用腾讯API进行人像动漫化
Python调用腾讯API进行人像动漫化
Python调用腾讯API进行人像动漫化

3.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)

3.4效果展示:

Python调用腾讯API进行人像动漫化

“浑元形意太极拳掌门人”马保国老师

4. 问题与分析

API返回的参数需要使用 “ .to_json_string() “像数据格式转换为json可读的形式否则如下图:
Python调用腾讯API进行人像动漫化

如果上传的照片没有人脸:
Python调用腾讯API进行人像动漫化文章来源地址https://www.toymoban.com/news/detail-461265.html

到了这里,关于Python调用腾讯API进行人像动漫化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何利用python调用API接口获取数据进行测试

    一、Python 可以使用 requests 库来调用 API 接口获取数据。以下是基本的步骤: 1.安装 requests 库 pip install requests 2.导入 requests 库 import requests 3.构建 API 请求的 URL 根据 API 文档,构建请求的URL。 例如,  https://api.example.com/posts  是获取所有帖子的 URL。 4.发送 API 请求 使用  requ

    2024年02月11日
    浏览(47)
  • 微信小程序使用TS+腾讯位置API,输入地址,解析经纬度(全局封装及调用)

    我们有时候做小程序时需要用到获取地址的经纬度,腾讯位置提供了相关API,我们可以使用其API进行调用实现功能。 1. 登录腾讯位置服务网址 腾讯位置服务 - 立足生态,连接未来 腾讯位置服务为各类应用厂商和开发者提供领先的LBS服务和解决方案;有针对Web应用的JavaScrip

    2024年02月16日
    浏览(48)
  • 关于微信小程序调用H5腾讯地图API获取定位信息提示失败问题--解决办法之一

    在跳转到H5页面加载腾讯地图API获取定位信息时,“真机调试”、“开发模式”都可以使用 web-view 组件访问我需要的路径。只有“体验版”、“线上版本”会出现这个错误提示。正常加载都是正常的,但是因为腾讯地图API在获取定位信息的同时,会在页面上内嵌一个隐藏的

    2024年04月26日
    浏览(62)
  • vue调用腾讯地图API报错跨域问题解决Access to XMLHttpRequest at‘httplocalhost

    1.下载vue-jsonp解决跨域问题 2.在main.js中引用 3.调用腾讯地图API 4.获取本机IP

    2024年01月19日
    浏览(52)
  • vue - vue使用腾讯api进行定位获取,绘制地图、标点、搜索、路线规划

    首本文主要记录一下在Vue项目里面使用腾讯地图api实现的一些功能。如:引入腾讯地图SDK、定位获取当前经纬度和详细地址、地图marker的使用、搜索功能和路线规划。 我这边实现的效果图如下: 首先要成为腾讯位置服务开发者或者使用公司提供的 key 值;才可以使用腾

    2023年04月17日
    浏览(54)
  • Python调用腾讯云函数传递json数据

    前言   有些时候有一些公共的方法,需要放在服务器上,在不同的电脑上使用。但是我们有没有自己的服务器,所以考虑将公共的方法放在腾讯云、华为云、阿里云、百度云等云平台上,方便在不同的电脑上复用。   我们这里使用的是腾讯云,并且函数的编程语言使用

    2024年02月06日
    浏览(41)
  • base64与BytesIO图片进行编码、解码;api调用

    io.BytesIO 和 Base64 编码都是用于在内存中处理二进制数据的方法,但它们的目的和使用场景有所不同。 1) io.BytesIO io.BytesIO 是 Python io 库中的一个类,它提供了一个在内存中处理二进制数据的接口,模拟了一个文件对象。它允许你像操作文件一样操作内存中的二进制数据,这对

    2024年01月24日
    浏览(60)
  • curl方式调用电商API接口示例 详细介绍

    cURL 是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。 cURL支持的通信协议有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、

    2023年04月27日
    浏览(46)
  • c++调用ffmpeg api将视频文件内容进行udp推流

    代码及工程见https://download.csdn.net/download/daqinzl/88156926 开发工具:visual studio 2019 播放,采用ffmpeg工具集里的ffplay.exe, 执行命令 ffplay udp://238.1.1.10:6016 主要代码如下: #include \\\"pch.h\\\" #include iostream using namespace std; #include stdio.h #define __STDC_CONSTANT_MACROS extern \\\"C\\\" { #include \\\"include/libavcodec/

    2024年02月14日
    浏览(42)
  • c++调用ffmpeg api录屏 并进行udp组播推流

    代码及工程见https://download.csdn.net/download/daqinzl/88155241 开发工具:visual studio 2019 播放,采用ffmpeg工具集里的ffplay.exe, 执行命令 ffplay udp://224.1.1.1:5001 主要代码如下: #include \\\"pch.h\\\" #include iostream using namespace std; #include stdio.h #define __STDC_CONSTANT_MACROS extern \\\"C\\\" { #include \\\"include/libavcodec/

    2024年02月14日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包