LayoutParser 是为了终结文档处理混乱而建立的开源深度学习工具包。它提供了用于文档图像分析任务的统一接口,包括布局检测、OCR 集成和视觉信息提取。
核心功能
| 功能 | 描述 | 后端选项 |
|---|---|---|
| 布局检测 | 检测文档图像中的区域(文本、表格、图形) | Detectron2, TensorFlow, ADQ |
| OCR | 从检测到的区域提取文本 | Tesseract, 可插拔自定义引擎 |
| 模型动物园 | 常见文档数据集的预训练模型 | PubLayNet, Prima, Newspaper |
快速开始
pip install layoutparser
import layoutparser as lp
image = lp.load_image("document.png")
model = lp.DetectionModel("lp://PubLayNet/faster_rcnn_r50_fpn")
result = model.detect(image)
lp.draw_box(image, result, box_width=5).show()
模型动物园
| 数据集 | 可用模型 | 区域类型 |
|---|---|---|
| PubLayNet | Faster R-CNN, Mask R-CNN, RetinaNet | 文本, 标题, 表格, 图形, 列表 |
| Prima | Faster R-CNN, Mask R-CNN | 文本, 图像, 表格, 图形 |
| Newspaper | Faster R-CNN | 文本, 照片, 插图, 地图, 广告, 标题 |
OCR 集成
ocr_agent = lp.TesseractAgent()
text_blocks = ocr_agent.detect(image)
table_blocks = [b for b in result if b.type == "Table"]
for block in table_blocks:
text = ocr_agent.detect(block.crop(image))
print(text)
常见问题
什么是 LayoutParser? 开源 Python 工具包,用于文档图像分析,将布局检测、OCR 和模型动物园统一在单一一致的 API 下。
如何使用? pip install layoutparser,然后 4 行代码即可完成布局检测。
支持哪些模型? 预训练 Faster R-CNN、Mask R-CNN 和 RetinaNet 模型。
能与 OCR 引擎集成吗? 是的,内置 Tesseract 集成。
如何引用? 在 LayoutParser 仓库的 CITATION 文件中获取。
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!