Planning - kana112233/tesseract GitHub Wiki

#Tesseract发布计划

在这里,我们可以计划Tesseract的下一个版本.

##未来版本

以下是未来Tesseract版本的一些想法.

*使用C ++ 11实现代码的现代化(参见讨论此处和[here](https://github.com /的tesseract-OCR/超正方体​​/提交/69a2e94bc52b57ba26081fb43051dacf2fdc56a0)).

*使用llvm的工具:clang-format,clang-tidy,scan-build,sanitizers.

*用C ++标准类型(GenericVector,...)替换更多Tesseract数据类型,尤其是API.

*添加json(或xml)输出格式. 它将用于完整的ocr和psm 2 - 仅用于布局信息.

*添加选项以使用leptonica的替代二值化方法.

*添加一个选项,输出多页输入的单独文件(out1.hocr,out2.hocr ...).

*在命令行中添加多线程选项(在此模式下,openmp将在运行时禁用).

*探索对训练有素的数据使用Protocol Buffers或FlatBuffers的选项.

*改进错误处理,不要忽略函数的返回值(参见讨论).

4.0.0

请参阅发行说明.

另见[问题#1423]的讨论(https://github.com/tesseract-ocr/tesseract/issues/1423).

###打开应修复的问题

*####“bug”标签的问题(参见list here)

*####噪音字符被bbox识别为整页#1192

*####使用整数模型进行LSTM培训时出现分段错误#1573

*####当Tesseract初始化代码检测到不支持的区域设置时报告警告. (见评论)

*####无法创建输出文件时错误消息不足问题1424

混合语言(fra + ara)项目的####“没有最好的话!!”(见issue 235)

*#### mgr_.Init(traineddata_path.c_str()):错误:断言失败:#1075(参见issue 1075)

###此版本需要的功能

*####仅从github安装选定语言的脚本(参见issue)    https://github.com/zdenop/tessdata_downloader

要讨论的

根据可用的资源和意见,这些建议将被添加到下一个或未来版本的计划中或被放弃.

*####增强--list-langs以显示脚本和语言的其他信息,例如legacy/LSTM,版本
   这将使命令变慢,因为必须打开并解析每个文件. 将此作为--list-langs-details或--list-lang-details添加到基于lang-code的一个语言文件中?

*#### - list-langs也应该显示它正在使用的目录

*####修复autotools构建,以便调试模式按预期使用-O0

*####添加选项以选择点积(CPU,SSE,AVX,...)的实现

*####相对包括训练有素的数据    tessedit_load_sublangs应该搜索相对于父级的子语言,而不是从tessdata目录开始.

*####有关Coverity Scan报告的编译器警告和问题的更多修复

*####添加一个简单的bash脚本来构建tesseract

*####新的训练数据格式    除了当前的专有格式,Tesseract还可以支持ZIP存档(参见讨论).

使用libarchive的可能实现是可用,但需要更多测试.

*####“训练之光” - 边做边学(见问题)

*####修改text2image以使用PrepareDistortedPix()#1052

*####安排日期

###从3.0x回归功能

Tesseract 4.0应该是Tesseract 3.05的完全替代品,并且与旧的OCR引擎(--oem 0)一起使用时具有相同的功能. 以下回归仍需要验证(它们是否真的是回归,或者它们只是缺少LSTM的功能):

*####用户词(见评论)

*####用户模式(见问题)

LSTM缺少3.0x的功能

这些功能仍然适用于旧的OCR引擎(--oem 0),但LSTM缺少并且需要它们.

*####黑名单/白名单(见问题). 这是解决方法.

*#### hOCR字体信息(参见评论)

##未来发布

在这里,我们收集4.0.0之后的版本的重要问题和功能.

*####新的基于LSTM的OSD检测器(参见评论).

*####删除Legacy Tesseract Engine(参见issue)

*####更好的多语言培训实施(参见评论)

*#### ARM SIMD对点积的支持#519

*####将OpenMP用于点积#983

*####删除已弃用的代码    这不包括OpenCL或旧的Tesseract引擎.

*#### Tesseract为缺少的输入创建输出(参见issue 1023).    大部分都解决了,但可以改进.

*####问题1353:/training/tessopt.cpp的补丁(参见pull request 13)    看起来在同一个过程中不可能运行多个培训. pull请求描述了可能的修复,但不包括完整的实现(低优先级).

⚠️ **GitHub.com Fallback** ⚠️