开发者社区 > 视觉智能 > 文字识别 > 正文

请问OCR中表格识别有没有直接转成这种json格式的示例呢,指定表头对应的key生成?

请问OCR中表格识别有没有直接转成这种json格式的示例呢,指定表头对应的key生成{ "tableContent": [ { "nighttime": "52.8", "site": "厂界东", "daytimeIsStandard": "是", "nighttimeStandardVal": "55", "daytime": "58.6", "daytimeStandardVal": "65", "nighttimeIsStandard": "是" }, { "nighttime": "53.6", "site": "厂界南", "daytimeIsStandard": "是", "nighttimeStandardVal": "55", "daytime": "59.0", "daytimeStandardVal": "65", "nighttimeIsStandard": "是" } ], "tail": "噪声检测结果 单位:等效声级Leq[dB(A) 】", "title": "检测结果执行《工业企业厂界环境噪声排放标准》(GB12348-2008)表1三类标准限值" }?

展开
收起
真的很搞笑 2023-06-07 16:29:24 283 0
3 条回答
写回答
取消 提交回答
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    阿里云OCR中的表格识别功能,可以将识别结果输出为JSON格式,但是需要对返回结果进行解析和处理才能得到您想要的格式。具体可以按照以下步骤进行操作:

    1. 调用表格识别接口,获取返回结果。
    2. 对返回结果进行解析和处理,将表格数据提取出来,并按照您需要的格式进行组织。
    3. 将处理后的数据输出为JSON格式。

    以下是一个示例代码,可以将阿里云OCR返回的表格识别结果转换成您需要的JSON格式:

    import json
    
    # 假设阿里云OCR返回的表格识别结果为table_result
    table_result = {
        "result": {
            "tables": [
                {
                    "body": [
                        ["52.8", "厂界东", "是", "55", "58.6", "65", "是"],
                        ["53.6", "厂界南", "是", "55", "59.0", "65", "是"]
                    ],
                    "head": ["nighttime", "site", "daytimeIsStandard", "nighttimeStandardVal", "daytime", "daytimeStandardVal", "nighttimeIsStandard"],
                    "tail": ["噪声检测结果 单位:等效声级Leq[dB(A) 】"],
                    "title": ["检测结果执行《工业企业厂界环境噪声排放标准》(GB12348-2008)表1三类标准限值"]
                }
            ]
        }
    }
    
    # 解析表格数据
    table_data = table_result["result"]["tables"][0]
    table_head = table_data["head"]
    table_body = table_data["body"]
    table_tail = table_data["tail"]
    table_title = table_data["title"]
    
    # 组织JSON格式数据
    json_data = {
        "tableContent": [],
        "tail": table_tail[0],
        "title": table_title[0]
    }
    for row in table_body:
        row_dict = {}
        for i in range(len(table_head)):
            row_dict[table_head[i]] = row[i]
        json_data["tableContent"].append(row_dict)
    
    # 输出JSON格式数据
    print(json.dumps(json_data, ensure_ascii=False))
    

    以上代码将阿里云OCR返回的表格识别结果解析成了一个JSON格式的数据,其中包含了您需要的表头对应的key和表格数据。

    2023-06-07 19:09:35
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    1 阿里云 OCR 表格识别接口返回结果是一个结构化的表格数据,其中包含表格的行列信息和每个单元格的内容。如果您需要将表格数据转换成特定的 JSON 格式,可以根据实际情况编写相应的代码,对表格数据进行解析和转换。

    以下是一个示例代码,可以将表格数据转换成您提供的 JSON 格式。该代码使用 Python 语言编写,需要安装相应的 OCR SDK 和 JSON 库。

      
    import json
    from aliyunsdkcore import client
    from aliyunsdkocr.request.v20191230 import RecognizeTableRequest
    
    accessKeyId = 'your_access_key_id'
    accessKeySecret = 'your_access_key_secret'
    endpoint = 'https://ocr.cn-shanghai.aliyuncs.com'
    client = client.AcsClient(accessKeyId, accessKeySecret, 'cn-shanghai')
    
    def recognize_table(url):
        request = RecognizeTableRequest.RecognizeTableRequest()
        request.set_ImageURL(url)
        response = client.do_action_with_exception(request)
        result = json.loads(response)
        table = result['Tables'][0]
        rows = table['Rows']
        cols = table['TitleCols']
        tableContent = []
        for row in rows:
            rowContent = {}
            for i, cell in enumerate(row['Cells']):
                col = cols[i]['Value']
                rowContent[col] = cell['Value']
            tableContent.append(rowContent)
        json_result = {
            'tableContent': tableContent,
            'title': table['Title'],
            'tail': table['Tail'],
        }
        return json_result
    
    url = 'your_table_image_url'
    json_result = recognize_table(url)
    print(json.dumps(json_result, ensure_ascii=False, indent=4))
      
    
    
    

    在 上述示例代码中,recognize_table 函数接收一个表格图片的 URL,调用 OCR 表格识别接口进行识别,并将识别结果转换成您提供的 JSON 格式。具体地,该代码首先解析表格数据的行列信息和每个单元格的内容,然后将表格数据转换成您提供的 JSON 格式,并返回 JSON 对象。

    2023-06-07 18:38:26
    赞同 展开评论 打赏
  • 不行 。需要自己根据识别的结果转成你需要的这种格式 ,此回答整理自钉群“【官方】阿里云OCR公共云客户交流群”

    2023-06-07 16:35:48
    赞同 展开评论 打赏

文字识别技术可以灵活应用于证件文字识别、发票文字识别、文档识别与整理等行业场景,满足认证、鉴权、票据流转审核等业务需求。

相关电子书

更多
阿里云智能-印刷文字识别OCR-产品介绍 立即下载
阿里巴巴读光OCR 立即下载
印刷文字识别算法设计与在线服务 立即下载