【百度智能云】通过调用baidu_aip对图像进行画质增强

调用baidu_aip对图像进行画质增强

注册/登录百度账号

https://cloud.baidu.com/product/imageprocess/enhancement?track=cp:nsem|pf:pc|pp:nsem-chanpin-tuxiangzengqiang-383|pu:tuxiangzengqiang-tongyongci|ci:|kw:10268585&renqun_youhua=2850304&bd_vid=9480874408973864616

领取/购买资源

在控制台总览页面可以领取免费资源,这里先领取了图像增强的免费资源
在这里插入图片描述

创建应用

创建应用后可以在管理应用页面看到自己的appid等信息,在调用api时会用到
在这里插入图片描述

调用API

在运行代码之前,我们需要安装对应的sdk

pip install baidu-aip
pip install cv2

接下来就可以运行我们的代码进行画质增强了

from aip import AipImageProcess
import base64
import numpy as np
import cv2

""" 你的 APPID API_KEY SECRET_KEY  """
APP_ID = 'XXXXXXX'
API_KEY = 'XXXXXXXXXXXXXXXXXXX'
SECRET_KEY = 'XXXXXXXXXXXXXXXXXXX'
client = AipImageProcess(APP_ID, API_KEY, SECRET_KEY)

""" 读取图片 """
def get_file_content(filePath):
    with open(filePath, 'rb') as fp:
        return fp.read()

""" base64图片解码 """
def base64_to_image(base64_code):
    # base64解码
    img_data = base64.b64decode(base64_code)
    # 转换为np数组
    img_array = np.fromstring(img_data, np.uint8)
    # 转换成opencv可用格式
    img = cv2.imdecode(img_array, cv2.COLOR_RGB2BGR)
    return img

img_path = ('14.jpg')#如果是绝对路径需要加'/'
ori_img = cv2.imread(img_path)
image = get_file_content(img_path)

# """ 调用图像无损放大 """
# img2 = client.imageQualityEnhance(image);
""" 调用图像画质增强"""
img = client.imageDefinitionEnhance(image)
# """ 调用图像对比度增强 """
# img = client.contrastEnhance(image)

img = img['image']
show_img = base64_to_image(img)
imgs = np.hstack([ori_img,show_img])

cv2.imshow('img',imgs)
cv2.imwrite('%s.jpg'%(img_path.split('.')[0]+'2'),imgs,[cv2.IMWRITE_JPEG_QUALITY, 100])
cv2.waitKey(0)

画质增强前:在这里插入图片描述
画质增强后:在这里插入图片描述

海獭真的好可爱。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值