百度云IOCR自定义模版分类器进行文字识别(非通用文字识别)

  • 模版管理

云账号登录

访问模版管理地址:点击下面地址新建模版

百度智能云-登录https://ai.baidu.com/iocr?castk=4819agr76c7d09971d248#/templatelist/1

  • 添加模版

如果有模版,识别效果不理想可以编辑上述模版,如果新的报表格式可以新建模版

分为两步:

参照字段:这个报表特有的特征
识别区:框选识别区域,可以调整大小,直到识别效果最优

  • 分类器训练(AI) 自动根据上传标本图像自动识别模版并识别

点击编辑或者新增,选择模版,上传海量数据标本,进行模型训练

  • 模版部分 Over !

  • Java代码实现

文档地址: 文字识别OCR (baidu.com)https://ai.baidu.com/ai-doc/OCR/Ek3h7y961

工具类先可以自行下载

java 复制代码
package com.baidu.ocr;

import com.baidu.ai.aip.utils.Base64Util;
import com.baidu.ai.aip.utils.FileUtil;
import com.baidu.ai.aip.utils.HttpUtil;


public class App 
{
    public static void main(String[] args) throws Exception
    {
        /**
         * 重要提示代码中所需工具类
         * FileUtil,Base64Util,HttpUtil,GsonUtils请从
         * https://ai.baidu.com/file/658A35ABAB2D404FBF903F64D47C1F72
         * https://ai.baidu.com/file/C8D81F3301E24D2892968F09AE1AD6E2
         * https://ai.baidu.com/file/544D677F5D4E4F17B4122FBD60DB82B3
         * https://ai.baidu.com/file/470B3ACCA3FE43788B5A963BF0B625F3
         * 下载
         */
        // iocr识别apiUrl
        String recogniseUrl = "https://aip.baidubce.com/rest/2.0/solution/v1/iocr/recognise";


        String filePath = "path	oyourimage.jpg";
        try {
                byte[] imgData = FileUtil.readFileByBytes(filePath);
                String imgStr = Base64Util.encode(imgData);
                // 请求模板参数
                String recogniseParams = "templateSign=your_template_sign&image=" + URLEncoder.encode(imgStr, "UTF-8");
                // 请求分类器参数
                String classifierParams = "classifierId=your_classfier_id&image=" + URLEncoder.encode(imgStr, "UTF-8");
                
                
                String accessToken = "your_access_token";
                // 请求模板识别
                String result = HttpUtil.post(recogniseUrl, accessToken, recogniseParams);
                // 请求分类器识别
                // String result = HttpUtil.post(recogniseUrl, accessToken, classifierParams);
                
                System.out.println(result);
        } catch (Exception e) {
                e.printStackTrace();
        }
    }
}
  • 识别模式选择

如果模版少,自行维护模版,可以使用选择模版的方式进行识别,模版过多,可以使用分类器训练模型,自动根据上传的图片识别模版并识别,此为终极奥义!

相关推荐
用户018349301692 小时前
用Zustand管理AI多会话状态
人工智能
武子康5 小时前
调查研究-198 Agent 到底该记住什么?读懂《What Must Generalist Agents Remember?》
人工智能·openai·agent
aqi005 小时前
15天学会AI应用开发(九)利用Chroma持久化向量数据
人工智能·python·大模型·ai编程·ai应用
武子康6 小时前
调查研究-197 FAISS vs Elasticsearch 全面对比:从向量检索、全文搜索到 RAG 选型指南
人工智能·elasticsearch·agent
青禾网络7 小时前
Web 前端如何接入 AI 音效生成:从零到可用的完整方案
人工智能·设计模式
用户252736278147 小时前
【技术实战】用 Spring Boot + Vue3 + LM Studio 在本地跑通 RAG 知识库
人工智能
用户5191495848457 小时前
VBScript随机数生成器内部机制:从时间种子到密码令牌破解
人工智能·aigc
米小虾7 小时前
Context Engineering —— 知识与记忆的窗口
人工智能·agent
IT_陈寒7 小时前
Python里这个赋值坑,连老司机都能翻车
前端·人工智能·后端