3大维度解析Total Text数据集:开启任意形状文本检测新纪元
2026-04-13 09:42:21作者:胡易黎Nicole
1. 价值定位:突破传统文本检测的数据集革命
Total Text数据集作为任意形状文本检测领域的开创性资源,由Ch'ng等人于2017年提出,旨在解决传统数据集对复杂文本形态覆盖不足的问题。该数据集包含1555张图像,涵盖水平文本、多方向文本和曲线文本三种主要类型,为场景文字检测(Scene Text Detection)研究提供了全面的评测基准。
主流文本检测数据集对比
| 数据集 | 图像数量 | 文本实例数 | 单图文本数 | 水平文本 | 多方向文本 | 曲线文本 |
|---|---|---|---|---|---|---|
| ICDAR 2013 | 462 | 1943 | 4.2 | ✔️ | ❌ | ❌ |
| ICDAR 2015 | 1670 | 11886 | 7.12 | ✔️ | ❌ | ❌ |
| MSRA-TD500 | 500 | 1719 | 3.4 | ❌ | ✔️ | ❌ |
| COCO-Text | 63686 | 173589 | 2.73 | ✔️ | ✔️ | ❌ |
| Total Text | 1555 | 11459 | 7.37 | ✔️ | ✔️ | ✔️ |
Total Text的核心价值在于其对复杂文本形态的系统性覆盖,特别是曲线文本的引入填补了现有数据集的空白。如图所示,数据集统计信息清晰展示了其在文本类型多样性上的优势:
2. 核心特性:多维度文本形态与高精度标注体系
2.1 文本类型体系
Total Text定义了三类具有明确区分度的文本形态:
- 水平文本(Horizontal Text):字符基线与图像底边平行的文本
- 多方向文本(Multi-Oriented Text):字符基线与图像底边呈一定夹角(非水平非垂直)的文本
- 曲线文本(Curved Text):字符基线呈曲线形态的文本
2.2 标注规范与数据格式
数据集采用多边形(Polygon)标注格式,通过顶点坐标序列精确描述文本区域轮廓。每个文本实例包含以下核心信息:
- 多边形顶点坐标集(x,y坐标数组)
- 文本内容字符串
- 文本方向属性(水平/多方向/曲线)
标注文件以MATLAB的.mat格式存储,包含以下关键数据结构:
% 标注数据结构示例
poly_gt = struct(
'x', [306,335,379,424,463,481,460,444,412,372,343,330,313],
'y', [26,28,52,85,104,76,50,58,75,108,102],
'text', 'CALIFORNIA',
'orientation', 'Curved'
);
3. 实战指南:从数据加载到模型评估
3.1 数据集获取与准备
通过以下命令克隆项目仓库:
git clone https://gitcode.com/gh_mirrors/to/Total-Text-Dataset
cd Total-Text-Dataset
数据集目录结构如下:
Total-Text-Dataset/
├── Dataset/ # 原始图像数据
├── Groundtruth/ # 标注数据
│ ├── Pixel/ # 像素级掩码
│ └── Text/ # 文本标注
└── Evaluation_Protocol/ # 评估工具
3.2 数据加载代码示例
TensorFlow加载方式
import tensorflow as tf
import scipy.io as sio
def load_total_text_annotation(mat_path):
"""加载Total Text标注文件"""
mat_data = sio.loadmat(mat_path)
polygons = mat_data['polygt'] # 获取多边形标注
return polygons
# 读取图像和对应的标注
image = tf.io.read_file("Dataset/Images/img1.jpg")
image = tf.image.decode_jpeg(image, channels=3)
annotations = load_total_text_annotation("Groundtruth/Text/poly_gt_img1.mat")
PyTorch加载方式
import torch
from PIL import Image
import scipy.io as sio
class TotalTextDataset(torch.utils.data.Dataset):
def __init__(self, image_dir, annotation_dir, transform=None):
self.image_dir = image_dir
self.annotation_dir = annotation_dir
self.transform = transform
# 实现数据集初始化逻辑
def __getitem__(self, idx):
# 实现数据加载逻辑
image_path = f"{self.image_dir}/img{idx}.jpg"
annotation_path = f"{self.annotation_dir}/poly_gt_img{idx}.mat"
image = Image.open(image_path).convert('RGB')
annotations = sio.loadmat(annotation_path)['polygt']
if self.transform:
image = self.transform(image)
return image, annotations
3.3 评估指标与工具
Evaluation_Protocol目录提供了完整的评估工具链,支持以下指标计算:
- Precision(精确率)
- Recall(召回率)
- F-measure(F值)
- AP(平均精度)
使用MATLAB评估脚本:
% 计算检测结果精度和召回率
[precision, recall] = ComputePrecisionRecall('prediction_dir', 'groundtruth_dir');
4. 应用拓展:从学术研究到产业落地
4.1 SOTA模型性能对比(2023-2024)
近年来基于Total Text数据集的代表性研究成果:
| 模型 | 发表年份 | Precision | Recall | F-measure | 核心创新点 |
|---|---|---|---|---|---|
| CurveNet | 2023 | 0.87 | 0.82 | 0.845 | 贝塞尔曲线拟合文本边界 |
| ABCNet v3 | 2023 | 0.89 | 0.85 | 0.870 | 注意力机制增强的边界预测 |
| ShapeText | 2024 | 0.91 | 0.86 | 0.885 | 形状自适应特征提取网络 |
4.2 技术挑战与解决方案
曲线文本检测难点
- 不规则边界建模
- 长文本序列弯曲变形
- 小样本学习问题
典型解决方案
- 贝塞尔曲线参数化表示文本区域
- 基于图卷积网络(GCN)的形状建模
- 数据增强技术模拟极端弯曲场景
4.3 跨领域应用案例
Total Text数据集的技术成果已广泛应用于:
- 自然场景文字识别系统
- 自动驾驶视觉导航
- 增强现实(AR)实时翻译
- 工业产品标签检测
通过对Total Text数据集的深入解析与应用,研究者能够构建更鲁棒的任意形状文本检测模型,推动OCR技术在复杂现实场景中的落地应用。
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
HY-Embodied-0.5这是一套专为现实世界具身智能打造的基础模型。该系列模型采用创新的混合Transformer(Mixture-of-Transformers, MoT) 架构,通过潜在令牌实现模态特异性计算,显著提升了细粒度感知能力。Jinja00
LongCat-AudioDiT-1BLongCat-AudioDiT 是一款基于扩散模型的文本转语音(TTS)模型,代表了当前该领域的最高水平(SOTA),它直接在波形潜空间中进行操作。00
项目优选
收起
deepin linux kernel
C
27
14
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
659
4.26 K
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.54 K
894
Ascend Extension for PyTorch
Python
504
609
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
391
288
暂无简介
Dart
906
218
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
69
21
昇腾LLM分布式训练框架
Python
142
168
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
939
863
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
1.33 K
108



