根据图片识别车牌号

群里有人发的毕设要求,本身不是专业的后端,也就没敢接,但对车牌识别挺感兴趣的,于是自己就做了下

看了网上别人的做法,基本都是调用大厂提供的API。这里我就选择百度的了,因为有一月1000次的免费额度

首先打开百度AI开放平台-全球领先的人工智能服务平台 (baidu.com)官网。然后跟着下面选择并点击


点击立即使用车牌识别_车牌识别系统_车牌OCR识别-百度AI开放平台 (baidu.com),然后登录自己账号(百度网盘账号登录就可,有一些开通什么的操作,直接按照步骤开通就行,然后记得认证下,选择个人认证)。最后再点击立即使用

会进入到下面页面,然后点击去领取:百度智能云-管理中心 (baidu.com)

0元领取即可

领取之后,再点击应用

会进入到下面的页面,点击创建应用

会进入到应用配置页面

记得选择个人并写描述信息。最后点击立即创建即可

应用就创建成功了。然后开始查看技术文档文字识别OCR (baidu.com)

这里我用的java,所以选择java

下载对应的工具类:右键打开连接即可下载

会得到四个Java工具类。然后把类粘贴到Java项目对应的工具类包下

新建LicensePlate.java。把上面的代码粘贴进去,并引入爆红的类

package com.itheima.utils;

import java.net.URLEncoder;

public class LicensePlate {
    public static String licensePlate() {
        // 请求url
        String url = "https://aip.baidubce.com/rest/2.0/ocr/v1/license_plate";
        try {
            // 本地文件路径
            String filePath = "C:\\Users\\DELL\\Desktop\\OIP-C.jpg";
            byte[] imgData = FileUtil.readFileByBytes(filePath);
            String imgStr = Base64Util.encode(imgData);
            String imgParam = URLEncoder.encode(imgStr, "UTF-8");

            String param = "image=" + imgParam;

            // 注意这里仅为了简化编码每一次请求都去获取access_token,线上环境access_token有过期时间, 客户端可自行缓存,过期后重新获取。
            String accessToken = "[调用鉴权接口获取的token]";

            String result = HttpUtil.post(url, accessToken, param);
            System.out.println(result);
            return result;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

    public static void main(String[] args) {
        LicensePlate.licensePlate();
    }
}

然后修改对应的地方

获取token:百度智能云-管理中心 (baidu.com)。点击api在线调试

会跳到页面:点击调试,获取token,找到accessToken,赋值并粘贴到LicensePlate.java的accessToken里

最后就可以进行测试了

测试结果

如果出现下面的错误,则是没有领取

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/478696.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++:类的6大默认成员函数(拷贝构造函数篇)

文章目录 1、拷贝构造函数的概念const用途 2、拷贝构造函数的特性浅拷贝/值拷贝 前言:Hello,大家好,咱这篇博客继续默认成员函数,今天的笔记分享为拷贝构造函数~ 1、拷贝构造函数的概念 在创建对象时,我们能否创建一个与已存在对象一某一样的…

C/C++代码性能优化——数据结构和算法

1. 数据结构 合适的数据结构,对代码的性能提升非常明显。针对数据结构,我们不需要可以做到白板手写的程度。只要熟知其特点,然后推导出其应用场景,等到了真正需要时,再查找示例代码来修改应用即可。 1.1. 数组 固定…

Nginx离线安装(保姆级教程)

1、下载与安装gcc-c环境 获取rpm包的方式很多,在这里推荐使用yum工具获取,因为手动从官网下载,手动执行rpm -Uvh *.rpm --nodeps --force命令进行安装,可能会缺少某个依赖,我们也不确定到底需要哪些依赖。 因此需要准…

Java毕业设计 基于springboot医院挂号系统 医院管理系统

Java毕业设计 基于springboot医院挂号系统 医院管理系统 springboot医院挂号系统 医院管理系统 功能介绍 用户:登录 首页 个人资料 修改密码 门诊管理 用户挂号 医生:登录 首页 个人资料 修改密码 门诊管理: 用户挂号 处方划价 项目划价 项目缴费 项目…

【机器学习300问】43、回归模型预测效果明明很好,为什么均方根误差很大?

一、案例描述 假设我们正在构建一个房地产价格预测模型,目标是预测某个城市各类住宅的售价。模型基于大量房屋的各种特征(如面积、地段、房龄、楼层等)进行训练。 回归模型在大部分情况下对于住宅价格预测非常精准,用户反…

【教程】深入探究 JS代码混淆与加密技术

🔒 引言 在网络世界中,保护代码安全是至关重要的一环。JS代码混淆与加密技术则成为了开发者们常用的手段之一。本文将深入探讨混淆和加密的概念,以及其实现原理和应用方法,帮助读者更好地了解并运用这些技术。 ✨ 概念介绍 &quo…

调用百度通用翻译API进行中文翻译(附python代码)

文章目录 1. 百度API2. API接口3. 大规模使用4. AcknowledgmentReference彩蛋:百度大脑 AI开放平台 1. 百度API 在百度翻译开放平台(http://api.fanyi.baidu.com/api/trans/product/desktop)注册账号,可以免费使用基本版翻译功能…

C语言复杂度(个人笔记)

时间复杂度主要衡量一个算法的运行快慢. 空间复杂度主要衡量一个算法运行所需要的额外空间. 时间复杂度 算法中的基本操作的执行次数,为算法的时间复杂度. 只需要大概执行次数,我们使用大O的渐进表示法。(看谁对数学表达式的影响最大) 空间复杂度 是…

论文笔记:Contrastive Multi-Modal Knowledge GraphRepresentation Learning

论文来源:IEEE Transactions on Knowledge and Data Engineering 2023 论文地址:Contrastive Multi-Modal Knowledge Graph Representation Learning | IEEE Journals & Magazine | IEEE Xplorehttps://ieeexplore.ieee.org/abstract/document/9942…

可变形卷积颠覆式创新!新SOTA提速80%,更高性能,更强几何适应能力

在传统的卷积神经网络中,固定模式的卷积核在处理图像时可能会限制网络对不规则形状特征的提取能力。为了解决这个问题,研究者提出了可变形卷积。 可变形卷积是一种改进的卷积操作,它通过引入可学习的偏移量来增强模型对几何变化的适应能力&a…

qt+ffmpeg 实现音视频播放(三)之视频播放

一、视频播放流程 (PS:视频的播放流程跟音频的及其相似!!) 1、打开视频文件 通过 avformat_open_input() 打开媒体文件并分配和初始化 AVFormatContext 结构体。 函数原型如下: int avformat_open_inpu…

python 教你如何创建一个自定义库 colorlib.py

目录 Colorlib 生成代码 模块代码 导入测试 测试一 测试二 应用测试 颜色列表 colorList 随机颜色元组 randcolorTuples 随机颜色字串 randcolorStrings Color类测试 测试一 测试二 题外话 Colorlib 有没有碰到过这样的场景:写代码时想要用上丰富的色…

C#混淆心得

C#混淆心得 近期遇到混淆C#代码的需求,在网上找了很多办法,在此记录一下。 混淆的本质就是让代码变丑,让别人看不懂。 为什么要混淆: 1.保护核心代码 可以在一定程度上避免别人偷代码,从而保护重要的部分&#xf…

3.3 RK3399项目开发实录-板载Ubuntu系统的使用(wulianjishu666)

嵌入式物联网常用90款传感器开发例程。链接:https://pan.baidu.com/s/1oisHMZXDzKqa4EspY83V-A?pwdo5f4 1. 介绍 Ubuntu 使用手册是针对 Firefly 官方发布的 Ubuntu 系统固件特性所编写,适用于 Ubuntu Desktop 与 Minimal 系统,部分与 UI 显…

适用于智能语音小家电的语音ic类型有哪些?

适用于智能语音小家电的语音ic类型有哪些? 1. 语音播放芯片:这种芯片主要用于实现语音提示和报警功能。例如,当按下某个按钮时,它可以发出语音提醒,或者在出现故障时发出报警声音。这种芯片的应用非常广泛&#xff0…

Halcon 条码读取

一维码读取 create_bar_code_model 创建条码读取器的模板 set_bar_code_param 配置解码方式 find_bar_code 读取条码 clear_bar_code_model 清除条码匹配模板 * 1.创建条码读取器的模板 * 参数一:通用参数的名称,针对条形码模型进行调整。默认值为空 * 参…

Java实用经验总结

前言:以下为笔者在工作中总结的好用且简洁代码的经验 文章目录 1、多判断代替if2、通配符替换内容(常见于邮件、短信等模版)3、spring获取bean对象4、动态获取nacos配置5、优雅校验请求入参 1、多判断代替if 针对多个是和否的问题&#xff0…

如何安装和卸载SFP光模块

SFP光模块的安装和拆卸是简单直接的过程。然而,任何非标准操作都可能导致隐式损坏甚至永久故障。您需要参考及时更新的光模块的数据表或用户手册,以熟悉其特性和锁定机制。 准备工作 常见事项 拆卸和插入SFP光模块可能会缩短其使用寿命,因…

搜索二维矩阵

题目链接 搜索二维矩阵 题目描述 注意点 每行中的整数从左到右按非严格递增顺序排列每行的第一个整数大于前一行的最后一个整数1 < matrix.length, matrix[0].length < 100 解答思路 先二分查找找到target所处的行&#xff0c;找到行后再二分查找找到target所处的列…

Java毕业设计-基于springboot开发的数码论坛系统设计与实现-毕业论文+答辩PPT(附源代码+演示视频)

文章目录 前言一、毕设成果演示&#xff08;源代码在文末&#xff09;二、毕设摘要展示1、开发说明2、需求分析3、系统功能结构 三、系统实现展示1、系统功能模块2、管理员功能模块3、用户后台管理模块 四、毕设内容和源代码获取总结 **Java毕业设计-基于springboot开发的数码论…