- 什么是OCR?
[!note]
OCR(Optical Character Recognition)即光学字符识别,是一种能将图片、扫描件等图像中的文字信息,转化为计算机可编辑、可处理的文本数据的技术。
- 简单说:它能让计算机 “看懂” 图片里的文字,把 “图像形式的文字” 变成 “字符串形式的文字”。
- 举例:手机拍照识别身份证号、扫描 PDF 变成可复制的文字、快递单号自动识别,背后都是 OCR 技术
Java OCR 3 种方式简单总结(初学者版)
-
Tesseract(免费本地用)
- 简单说:免费开源,能装在自己电脑 / 服务器上用,不用联网。
- 适合:练手、做小项目(比如识别清晰的文字,像打印的文档)。
- 缺点:识别模糊、手写的文字效果差,得自己调参数才好用。
-
云 API(联网用,比如百度 / 阿里云)
- 简单说:不用自己搭环境,调用别人做好的接口(要联网)。
- 适合:想快速出效果(比如识别身份证、发票),不想折腾技术。
- 缺点:用多了要花钱,没网就用不了。
-
商业本地 SDK(花钱本地用,比如 ABBYY)
- 简单说:花钱买的工具,装在自己设备上,不用联网,识别超准。
- 适合:企业做重要项目(比如医疗报告、涉密文档),要高精度 + 安全。
- 缺点:超贵,初学者一般用不上。
通过环境变量配置配置阿里云 AccessKey
更多方法可参考阿里云官方文档
可以避免在代码中硬编码密钥,既安全又方便。
AccessKeyID获取方式
- 「获取阿里云 AccessKey 步骤」:
- 登录阿里云控制台(https://console.aliyun.com),进入「访问控制 RAM」→「用户」→「创建用户」(勾选 “编程访问”);
- 创建后进入用户详情页,「安全信息」→「创建 AccessKey」,保存 AK(仅显示一次,需妥善保管)。
编辑环境变量配置文件 (作用于整个操作系统(所有用户 / 程序)
与下面在idea中二选一
macOS 的环境变量配置文件通常有两种(选一个即可):
~/.zshrc:适用于 zsh 终端(macOS 10.15+ 默认)
查看当前终端类型:
在终端输入 echo $SHELL,输出 bin/zsh 则用 ~/.zshrc,输出 bin/bash 则用 ~/.bash_profile。
编辑文件:
在终端输入以下命令
open -e ~/.zshrc
(如果文件不存在,会自动创建)
3. 添加阿里云 AK 环境变量
在打开的文本编辑器中,添加以下两行(替换为你的实际 AK):
# 阿里云 AccessKey
export ALIBABA_CLOUD_ACCESS_KEY_ID="你的AccessKeyID"
export ALIBABA_CLOUD_ACCESS_KEY_SECRET="你的AccessKeySecret"
- 注意:
=前后不要有空格,引号可以省略(但密钥含特殊字符时建议加引号)。
4. 保存并生效配置
-
按下
Command + S保存文件,关闭文本编辑器。 -
在终端输入以下命令使配置生效:
source ~/.zshrc # 对应 zsh 终端 # 或 source ~/.bash_profile # 对应 bash 终端
5. 验证是否配置成功
在终端输入以下命令,能正确输出你的 AK 即表示配置成功:
echo $ALIBABA_CLOUD_ACCESS_KEY_ID
echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET
在idea中配置环境变量(仅作用于当前 IDEA 项目(局部生效))

# 阿里云 AccessKey
export ALIBABA_CLOUD_ACCESS_KEY_ID="你的AccessKeyID"
export ALIBABA_CLOUD_ACCESS_KEY_SECRET="你的AccessKeySecret"
调用配置好的ak

具体代码示例
参考文件夹
注意需要导入的依赖pom.xml中
~/my/code/java/OCRExample
这里使用的alibab的json

将ocr导入配置成一个工具类

在controller层调用

前端传进来的文件路径在这个地方

controller层调用时要注意传入的文件路径跟传给ocr工具类的路径
element ui中获取上传的ui组件

注意点 这里传文件 访问后端不走axios
所有需要配置代理转发与请求头(携带token)
代理转发方式


420

被折叠的 条评论
为什么被折叠?



