当前位置: 首页 > article >正文

深度学习系列73:使用rapidStructure进行版面分析

1. 概述

项目地址https://github.com/RapidAI/RapidStructure?tab=readme-ov-file

在这里插入图片描述

2. 文档方向分类示例

安装$ pip install rapid-orientation

import cv2
from rapid_orientation import RapidOrientation
orientation_engine = RapidOrientation()
img = cv2.imread('test_images/layout.png')
orientation_res, elapse = orientation_engine(img)
print(orientation_res)
# 返回结果为str类型,有四类:0 | 90 | 180 | 270

3. 版面分析RapidLayout

安装$ pip install rapid-layout
在这里插入图片描述

import cv2
from rapid_layout import RapidLayout, VisLayout

# model_type类型参见上表。指定不同model_type时,会自动下载相应模型到安装目录下的。
layout_engine = RapidLayout(conf_thres=0.5, model_type="pp_layout_cdla")

img = cv2.imread('test_images/layout.png')

boxes, scores, class_names, elapse = layout_engine(img)
ploted_img = VisLayout.draw_detections(img, boxes, scores, class_names)
if ploted_img is not None:
    cv2.imwrite("layout_res.png", ploted_img)

4. 文字识别和表格识别rapid_table

from rapid_table import RapidTable, VisTable

# RapidTable类提供model_path参数,可以自行指定上述2个模型,默认是en_ppstructure_mobile_v2_SLANet.onnx
# table_engine = RapidTable(model_path='ch_ppstructure_mobile_v2_SLANet.onnx')
table_engine = RapidTable()
ocr_engine = RapidOCR()
viser = VisTable()

img_path = 'test_images/table.jpg'

ocr_result, _ = ocr_engine(img_path)
table_html_str, table_cell_bboxes, elapse = table_engine(img_path, ocr_result)

5. latex识别rapidLaTexOCR

from rapid_latex_ocr import LatexOCR
model = LatexOCR()
img_path = "tests/test_files/6.png"
with open(img_path, "rb") as f:
    data = f.read()
res, elapse = model(data)

6. 整合版:RapidOCRPDF

在这里插入图片描述

# 基于CPU 依赖rapidocr_onnxruntime
pip install rapidocr_pdf[onnxruntime]
# 基于CPU 依赖rapidocr_openvino 更快
pip install rapidocr_pdf[openvino]
# 基于GPU 依赖rapidocr_paddle
pip install rapidocr_pdf[paddle]

使用:

from rapidocr_pdf import PDFExtracter
pdf_extracter = PDFExtracter()
pdf_path = 'tests/test_files/direct_and_image.pdf'
texts = pdf_extracter(pdf_path, force_ocr=False)
print(texts)

http://www.kler.cn/a/286671.html

相关文章:

  • 基于SMPL的三维人体重建-深度学习经典方法之VIBE
  • 2025.1.21——六、BUU XSS COURSE 1 XSS漏洞|XSS平台搭建
  • Qt Enter和HoverEnter事件
  • 【贪心算法】洛谷P1090 合并果子 / [USACO06NOV] Fence Repair G
  • 腾讯 Hunyuan3D-2: 高分辨率3D 资产生成
  • 编程界“华山论剑”:PHP与Go,谁主沉浮?
  • k3s安装部署说明
  • Bean 的实例化(创建 | 获取)
  • Prometheus和Grafana构建现代服务器监控体系
  • 数据结构之最短路径
  • RAG+知识图谱
  • Linux 背景、命令
  • JAVAEE初阶第一节——计算机的工作原理
  • C++国密SM2算法加解密的使用
  • vue3+elementplus的表格展示和分页实战
  • Oracle超详细(数据库编程)
  • vim 简易配置
  • 一键解决LBP2900通信错误的问题(同样支持Win 11系统)
  • 计算机毕业设计选题-基于python的OA办公管理系统【python-爬虫-大数据定制】
  • kubernetes培训
  • 深入探讨Java JSON解析与HTML标签清除:详解与实例
  • Vue3入门 - 解决pinia判断用户是否登录相关错误
  • 【系统架构设计】嵌入式系统设计(1)
  • sql靶场笔记
  • vue3监听键盘长按
  • flutter之image_picker上传图片