Skip to content

身份证识别OCR

函数名:idc_OCR / idc_OCR

功能描述

对身份证图片进行 OCR 识别,提取身份证字段信息。支持返回结构化表格或原始 JSON 数据,采用异步执行避免阻塞 Excel。

会员等级:🟢 免费版(Free)

语法

excel
=idc_OCR(文件路径, [原始数据])

参数

参数名类型必填默认值说明
文件路径String-身份证图片的完整文件路径,支持 jpg/jpeg/png/bmp 格式
原始数据BooleanFALSETRUE 返回原始 JSON 字符串,FALSE 返回横向结构化表格

返回值

二维数组(Object[,])或 String -

  • 原始数据 = FALSE:返回 2 行 N 列的横向表格,第一行为字段名,第二行为对应值。
  • 原始数据 = TRUE:返回 OCR 识别的原始 JSON 字符串。

使用示例

结构化表格识别(默认)

公式

excel
=idc_OCR("C:\images\idcard.jpg")

结果(横向表格):

姓名    性别    民族    出生日期        住址          身份证号
张三    男      汉      1990-01-01      北京市...     110101199001011234

返回原始 JSON

公式

excel
=idc_OCR("C:\images\idcard.jpg", TRUE)

结果

json
{
  "name": "张三",
  "sex": "男",
  "nation": "汉",
  "birth": "1990-01-01",
  "address": "北京市...",
  "idcard": "110101199001011234"
}

文件不存在

公式

excel
=idc_OCR("C:\images\nofile.jpg")

结果

文件不存在

技术说明

  • 异步执行:通过 ExcelAsyncUtil.Run 异步调用,识别期间单元格显示"Waiting...",完成后自动刷新结果。
  • 后端接口:调用 /api/ocr/recognize 接口,识别类型 recognize_type = idcard,图片以 Base64 编码上传。
  • 格式支持:仅支持 .jpg、.jpeg、.png、.bmp 格式图片。
  • 字段过滤:结构化表格自动过滤 msgdatetimeerr_codedata 等非业务字段。
  • 配额管理:识别成功后记录使用次数;配额限制类错误原样返回。

错误处理

错误场景返回值
文件路径为空文件路径不能为空
文件不存在文件不存在
文件格式不正确文件格式不正确,支持jpg png bmp
配额已达上限原样返回配额限制提示信息
OCR 识别失败OCR识别失败: 错误信息处理错误: 错误信息
异步执行中Waiting...

基于源代码最新版本文档