SuperAPI AI 工具集

matlab-ocr

设计与创作

查看项目

更新于 10-16 06:45

技能介绍

用途:在 MATLAB 中搭建 OCR 流程,用 ocr() 从图片中读取文字,覆盖文档、标牌、仪表、显示屏、标签等场景,也可作为其他计算机视觉流程的辅助步骤(读取场景中的标签、时间戳、序列号)。不适用:纯手写连笔、艺术字、CAPTCHA、完整版面表格分析、实时视频 OCR、图中无文字。

主要能力:完整流程为诊断、预处理、检测、识别、验证。预处理路由按图像分类选择:光照不均用 imtophat;盖章/压印/雕刻文字用局部对比度相减;倾斜大于 10 度先用 imrotate 校正;文字小于 50px 先用 imresize 放大 4-8 倍;极性反了用 imcomplement。场景文字检测默认用 detectTextCRAFT,固定布局可手动 ROI,均匀背景用 regionprops。贴在有纹理背景上的文字(如贴在箱子、墙上的标牌)用 imsegsam,SAM 不能用于表面特征(盖章/雕刻)。

使用方式:调用 ocr() 前必须先输出图像特征与 OCR 计划;预处理最多 2 条管线;传边界框时必须设置 LayoutAnalysis(单词用 "word",多行用 "block");使用检测插件前用 exist('<函数名>','file') 检查安装;用 evaluateOCR 与真实值对比计算 CER/WER;结果须先写入 ocr_pipeline_<descriptor>.m 与 decision_log.txt 再展示。常见调用:ocr(I)、ocr(I,bbox,LayoutAnalysis="word")、ocr(BW,CharacterSet="0123456789")、ocr(I,roi,Model="seven-segment",LayoutAnalysis="word")。

限制:手写连笔、艺术字、CAPTCHA 识别效果差或不可用;OCR 高置信度不代表正确,需校验;检测插件缺失时需安装对应支持包(如 detectTextCRAFT 需 “Text Detection Using Deep Learning”);多数细节如价格、平台等资料暂未提供。