了解 OCR 如何利用人工智能和YOLO11 将图像和 PDF 转换为可搜索、可编辑的文本,从而实现快速、准确的文本检测和提取。
光学字符识别 (OCR) 是计算机视觉技术中的一项关键技术。 是计算机视觉领域的一项重要技术,可将不同类型的 文件(如扫描的纸质文件、PDF 文件或数码相机拍摄的图像)转换为可编辑和可搜索的数据。 可搜索数据。通过弥合实体纸张和数字数据之间的鸿沟,OCR 使机器能够 "读取 "和处理文本,而这种方式在过去是无法实现的。 和处理文本,而这在历史上仅限于人类的能力。早期的 OCR 依靠简单的 模式匹配,而现代 OCR 则利用先进的 机器学习和 深度学习算法来处理复杂的字体、手写体和嘈杂的背景、 手写体和嘈杂的背景,而且精确度极高。
当代 OCR 系统的功能是将原始视觉输入转化为结构化信息的多级管道。 信息。这一过程已从僵化的模板匹配发展到灵活的人工智能驱动方法。
OCR 与其他人工智能学科的融合,使自动化在各行各业得到广泛应用。
在智能城市基础设施中,OCR 是以下方面的引擎 自动车牌识别。物体检测器首先识别视频帧中的车辆和车牌。随后,OCR 算法提取字母数字字符,与数据库进行交叉比对,以进行收费或安全监控。 安全监控。这需要 实时推理能力,以处理 高速交通数据。
金融和法律部门利用 OCR 智能文档分析。人工智能系统可以扫描发票、收据和合同,而不是手动输入数据。通过将 OCR 与 名称实体识别(NER)相结合,这些系统可以自动提取特定字段,如日期、收据和合同。 系统可以自动提取日期、供应商名称和总金额等特定字段,大大降低了管理开销和推理延迟。 管理费用和推理延迟。
将 OCR 与 图像分类。图像 分类是对整个图像进行分类(例如,将图像标记为 "文件 "或 "街道标志"),而 OCR 则是细粒度的。 例如,将图像标记为 "文件 "或 "路标"),而 OCR 是细粒度的;它能定位和识别图像中的特定字符序列。 图像中的特定字符序列。同样,OCR 也不同于标准的对象检测、 标准对象检测可能会将 "停车标志 "作为一个对象类别,而 OCR 会读取标志上的字母 "S-T-O-P"。 标志上的字母 "S-T-O-P"。
常见的工作流程是使用YOLO 模型detect 文本区域,然后将其传递给识别引擎(如开源YOLO Tesseract OCR 引擎 开源Tesseract OCR 引擎)。下面的示例 演示了如何加载预训练模型,以detect 通常包含文本的对象,如车牌或 交通标志。
from ultralytics import YOLO
# Load the YOLO11 model pre-trained on COCO dataset
model = YOLO("yolo11n.pt")
# Perform inference on an image containing text objects (e.g., a street sign)
# The model detects the object, allowing a secondary OCR step to crop and read it
results = model.predict(source="path/to/street_sign.jpg", save=True)
# Display the detected class names (e.g., 'stop sign')
for r in results:
print(f"Detected classes: {r.boxes.cls}")
为了探索推动早期 OCR 研究的基础数据集,我们使用了 MNIST 数据库。 MNIST 手写数字数据库 是一个经典资源。对于那些对技术发展感兴趣的人来说,Tesseract 项目的历史可以让他们深入了解开源 OCR 技术。 Tesseract 项目的历史提供了有关开源 贡献。现代基于云的解决方案,如 Google 视觉 API和 亚马逊 Textract等现代云解决方案代表了当前最先进的托管 OCR 服务的最先进水平。此外,对场景文本识别的研究也在不断突破界限,使人工智能能够在不受制约的 "野外 "环境中读取文本。 此外,对场景文本识别的研究也在不断突破界限,使人工智能能够在不受限制的 "野外 "环境中读取文本。