高糊图像变清晰

一、前提

之前的项目需要进行车框识别,但是具体识别过程中,发现效果不是很理想,因为我们检测的对象往往是以车辆作为背景,也就是车辆的清晰度并不高,比如像下面这样的。对于这种清晰度不高的图像,hyperlpr的识别效果很不理想(比如下图就不能检测出车牌)

思考后,决定直接对图像清晰度下手。目前有两种方法:

(1)自己在网上找开源或者自己编写神经网络结构,借助数据集进行训练,然后得到模型。

(2)借助第三方接口,直接调用接口就可以将图片转化为高清。

由于我们这里对于图像清晰度的处理并不是非常重要的技术点,所以考虑直接调用接口:百度智能云平台       百度智能云-登录

二、具体实施

1、申请账号获得id

使用别人的接口,需要权限才可以,先进行权限的申请。申请账号后,进入“创建新应用”,先领取接口的免费额度。

这里我把《图像增强与特效》板块的接口都领取、选了,然后还是上图, 创建新应用。创建之后就可以获取到API key和Secret key ,这两个参数在获取token的时候用到。

2、获取token

# client_id 为官网获取的AK, client_secret 为官网获取的SK
import requests
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【官网获取的AK】&client_secret=【官网获取的SK】'
response = requests.get(host)
if response:
    print(response.json())
access_token = response.json()['access_token']
print(access_token)

注意: &号前后不要加空格!!!直接把你的API key和Secret key弄上去取代【官网获取的AK】和【官网获取的SK】

运行程序,打印出来的信息花括号外的这一行就是你的token

 3、图片高清化处理

官方参考文档图像增强与特效 - 图像清晰度增强 | 百度AI开放平台 (baidu.com)

import requests
import base64

request_url = "https://aip.baidubce.com/rest/2.0/image-process/v1/image_definition_enhance"
# 二进制方式打开图片文件
f = open(r'C:\Users\DELL\Desktop\1.png', 'rb')#参数为自己所要处理的图片的地址!!!
img = base64.b64encode(f.read())

params = {"image": img}
access_token = '自己的token值!!!,进行替换!!!'
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)
if response:
    print(response.json()['image'])

"""post的返回值是base64,不是png图像,需要进行转换"""
img_new = base64.b64decode(response.json()["image"])
file = open(r'C:\Users\DELL\Desktop\2.png', 'wb')#参数为自己所希望的处理结果的位置!!!
file.write(img_new)
file.close()

4、观察处理效果 

 处理之后可见如下,emmmm,轮胎什么的确实变清晰了,但是我需要的车牌。。。还是一样糊。(左为处理前,右为处理后)

寻找下一个目标 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

这男人可真帅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值