|
本帖最后由 chigre3 于 2018-11-30 08:14 编辑 # U/ C9 q7 V6 K
' ]; [: P1 T- F一、致谢:
}4 `- x& i) o0 Z) j 感谢 @vbnet 的自动画线测试版, 现在经过个人修改, 几乎完全删除了原先的内容, 软件名称仍为 Picture Capture
9 Y+ h7 t2 l% j* @: { 感谢 @孤影 的自动划线软件, 给了很多界面上的参考/ Y& }: o4 ~) k. J) p) {: i J; F+ `% J" ?
------------------------------------------------------------------------
4 \/ @' i. v0 J7 U2 j, A2 f二、这个软件有什么用呢???
9 w! N% J* A2 `3 K; x" b 极大地提高制作图片版词典的效率,现在个人需要做的事情仅仅为:
+ C. J$ B3 @+ h/ A. C/ u 1. 前期的图片处理:Abbyy Finereader(整体校直)、Photoshop(模板调位置, 统一)、ComicEnhancerPro(转换格式、大小) 等7 u* k& i) V: [
2. 使用本软件进行:
1 w$ @% Y! T, Z4 j2 |0 w+ O (1) 全部页面的 自动划线-->自动OCR
% U1 f& H* n7 \) [; a (2) 逐页校对划线和文本(可删可增)
- Q) q) S& \/ q4 z$ Z (3) A.合并 .pdic (词条 + 坐标信息) --> Excel 模板 --> 文本替换 --> 精确高亮定位 整页版 图片词典) w# y/ S* G. M+ [) K9 j7 P# n
B.导出单词整体切图 --> 合并 .PWWords (词条+图片名称) --> 文本替代 --> 切图版 图片词典$ w4 v' J. w( c0 S! W2 s
------------------------------------------------------------------------' {6 G$ {" B" S$ ^1 q$ v1 o
三、实现的功能:& V$ k9 a3 X& m/ Z k
1. 画线:
( a1 s) L) H4 f9 ~) R8 Z (1) 自动分析页面 + 自动画线
7 p0 a i- |( `2 } (2) 手动模式定义页面 + 自动划线) T) x- o9 \9 j
(3) 鼠标右键单击修改单栏重新自动画线2 O6 @8 B# |& a: ^- y, l2 }% [
以上均 + 鼠标左键单击增加画线, 文本框内快捷键`删除划线
0 ^* k9 O' `: I0 _+ Z% [/ Y0 u3 B. u* p" w2 ?
2. OCR:
) u0 x! W! R6 S# \+ K, Z1 J 采用Tesseract OCR, 具体语言文件 tessdata 可以到官网下载:https://github.com/tesseract-ocr/tessdata, {' b0 n" P; Y
(1) 导出文本:可外部编辑后导入, 避免OCR单个切图的不足, x( J x; z9 `, }+ `+ }# l
(2) 导入文本
; T' F7 U0 C0 W6 \1 d (3) 1 + 2:直接将OCR结果导入当前页面的文本框 --> 校对4 e; g1 Q2 ]6 Y
外置批量替换表达式文本, 可自行创建和编辑, 适应各个词典不同OCR处理的场景3 v) x1 H1 Y6 C' X/ Z* b4 [5 _
: ]+ v- g2 p/ p) S' x! H& k 3. 切图:# n9 W7 I3 ?/ H, L v0 D6 i
(1) 词条单行切图:也可以使用外部其他OCR软件处理,或者其他用途- h1 p# r0 j- `' n) u6 k8 V
(2) 词条整体切图:实现切图版图片词典的制作(背景透明,不过目前需要其他PNG优化软件缩减大小:https://www.pdawiki.com/forum/thread-19157-1-1.html)) Q- W, \ Y6 E( y
(实例1:[英-汉] 20161113《英汉大词典(第2版)》10页单词 切图版 https://www.pdawiki.com/forum/thread-19015-1-1.html): \/ L. r! {1 v6 u
(实例2:新西汉词典 切图版 https://www.pdawiki.com/forum/fo ... 6545&fromuid=174481)
2 I6 @1 V2 h" R& s5 V9 N * k, r, p# n7 t2 k" H" y
可实现仅导出切图坐标等信息,不导出切图,方便使用外部软件进行, H% e: j, f7 T4 F: e7 J- H, j0 O
1 _" l& h# v! W8 Z
& G2 }" r; k# B. l9 X$ s' j# A
4. 校对:
L4 {! B, ~9 L( |8 } 列表式样, 与主窗口同步更新文本框内容, 也高亮匹配提示
) |; x* E( T1 O0 ~# |3 P* W
* m; |8 a0 z# p) y4 T6 O7 I9 V 5. 其他:1 f5 [# X }5 u* K. @
(1) 配置文件保存、导入
7 ?5 R0 L% n; \: {5 a (2) 自动下一页+操作(定时):自动保存、自动画线、自动OCR、自动切图。方便无人值守完成相应任务, [" y) E& n; K
(3) 最重要的还是要人工校对!!!!
! D& ^& E/ R, K' { (4) 高度自定义参数设置
9 _6 i- K% i1 f( s; j1 j, H" s! B$ R------------------------------------------------------------------------6 O% M: O# K& g7 W
如题,放个图:# R+ B7 t2 G B7 F
0 [7 j1 L% _* _6 V: J
) X5 I" ^& p6 \ l1 f7 |
. O3 }' p2 n7 e. h9 z
- d0 |6 h* P; I: r: l% I截图内的词条文字为OCR结果( I, P% q0 o/ R+ t) U6 Q+ ~
0 Y& _( j8 O3 ~$ c! _0 W$ f
% M- `4 k' \( M; p! [' m
* D% T) H& G- Y----------------------------20181130更新:) f/ |/ U+ j* A/ ?' c- K
校对窗口增加按当前提示索引(全部或部分)填充当前划线的文本框!
$ |+ l: F5 Z. q! _% v+ I) r! O----------------------------# ]1 g5 z* ~7 D/ E
20180809更新:6 L( O m" e$ g9 m2 \- `% s
插图画区域由之前的矩形升级为任意多边形
) L3 w6 e7 g0 M N# f& b6 k4 F3 M& t5 ?- ~; B
% J( l. ?1 `( g; E6 u" O2 R. x----------------------------
4 ~) a7 ]% d7 H20180614更新:
/ G( Q% z+ C) ~2 N在校对界面中增加一列单词,即大词库表中 上页末单词和本页末单词 之间的所有单词。
6 b* X6 q& b7 `! S9 X% ]单击则替换当前校对文本框中的文本!5 B. i/ O& O( T5 P
不同颜色提示,方便定位!
& Q& K$ l, k- C, }2 _6 i9 V4 x3 N% h4 Q( {+ N
; b* i8 a- P: |$ o6 S
* s7 J+ P5 v" O+ i% t) W
----------------------------! q- j% E7 S9 C/ d( n2 {. _
20170314更新2:- p4 i$ f( |- Z8 Q% H
校对界面修改如下,增添更多特殊字符(aeiou等),方便校对的时候直接复制粘贴:
- C; U- A2 N/ V) ^$ C " A# E7 _# A& [1 e4 c: F; \
2 @$ }+ U4 `, P
20170314更新:
% G# F) _4 k6 D8 [! J6 _7 U起始页-->终止页/ y; I% y, N( x" q( q. \/ E
[切图]-【词条整体切图】5 i$ t# z, j) z$ l5 T
---> 会直接把范围内的页面的所有单词切图导出(软件界面会有假死的状态,不用理会,导出结束就OK了)4 S/ `% s+ Q7 @2 |& ^
如果起始页和终止页为空,则导出当前页的词条切图. O/ m: x% t& V2 U
1 A2 u" t5 Q3 B: e
在校对界面时,主界面【√隐藏线框】,那么此时就只有颜色框(平行线宽)
& V3 H# B9 Z6 {5 Y) P- F当前词条亮黄色,其他还是红色
/ x% j# n( |) X1 ~" y0 D# V- L这儿主要是考虑到有时候词条不只是单行,多行的时候可以方便查看。% i3 Q/ j4 N- p& ^
( V: k! ~4 L7 P4 X----------------------------9 @8 ?4 O9 l/ ? c$ u' Q" o
20170313更新:9 _) G" B' f O7 E. C& L% |/ }
1. 词条整体导出切图的判断逻辑的补充(3栏以上时,位于不同列的上下单词中间隔了空列。之前这个情况未考虑到)
2 o% _( P* K# p0 m+ Y$ S' @6 i: ^, k" x 【仅修改了:从PDIC整体导出切图的坐标数据的这部分补充内容】
, ]* q+ t/ ?- _! @3 H* ~----------------------------
& F( e- U& X7 S. B* j8 [/ K20170217更新:7 p5 @$ a) O& r& H
1. 画线判断的方法改进(2种方法均改进)! E* o: i' h# |! T4 B
----------------------------
4 r+ S9 b4 R' ?, h- \4 C20170115更新:, {9 t8 [; r, y! }# ], e
1. tessdata 的完整语言列表,具体语言移步【https://github.com/tesseract-ocr/tessdata】下载
: S0 `9 \, p. P( _% s2. 在图片文件名列表上方的文本框里输入“SMALL”,点击【校对】,每个词条行的缩略图切图(非原始图片上裁剪)* I& P6 `% F* Y1 P1 U
----------------------------. ?' ^; [5 F4 P" F
20161119更新:
: D1 Q' r/ F3 u& d& g1.修复保存坐标数据时的bug
- E' x- c& ~, H$ o8 g7 |3 a2.修复单词整体导出页面的一个bug
' t0 l( X) |3 w9 a3.增加功能: 选定范围页面的批量导入词条
+ ^$ r6 @1 H2 W5 _) G0 r0 n4.增加功能: 快速查找定位索引
5 N/ a3 ~1 u, S' K+ Y9 x8 p% |----------------------------
. I7 V' I% h7 v- W! D20161123更新:! G+ H! A7 L1 H5 ?% |
重写词条整体导出切图的判断逻辑,现在应该不会有切图坐标不一致、切图数目不一致的情况了。/ ]3 ~& V8 a3 r+ R2 m
) l) Q6 H$ _# s# M, `1 h, d
- 问题:页面是否有词条?
5 f3 @ m1 z) Z' j& c/ i& a1 i+ n - 1. NO --> 直接导出和栏数一致的大切图 (标记为上页末词条续)
. y; b% b5 o( _- M$ c' E& x - 2. YES --> + D) g7 ~. w# V0 x B' c
- (1) 确定0号词条所在栏:
. x- a5 G1 w/ g+ q8 `* R8 X4 E. r - --> 0号词条所在栏之前的栏, 直接导出大切图 (标记为上页末词条续)
" F5 P0 D; q: |# { v5 b - --> 0号词条所在栏上方若还有部分上页末词条接续, 则导出切图 (标记为上页末词条续)2 J" _6 ?0 {4 G0 \% ?1 S7 |5 K
- (2) 次数为所有词条数目的循环:$ l/ [' z* Y% E& |0 X$ m7 N
- A. 若: 当前为最后一个词条 --> 确定高度
/ y, |- H+ r7 z1 X - B. 否则:. O: L4 O1 s9 D
- a. 下一个词条在下一栏 --> 确定高度
- v, e- W0 X: }/ \3 h - --> 如果当前词条在下一栏仍有接续 --> 导出切图 (标记为当前词条接续2)
; y! v& R0 q; l7 u - b. 下一个词条在同一栏 --> 确定高度
0 z. V; H7 _$ @0 O* I( p5 J - , d- B. }6 z% e9 e$ T
- --> 导出每个词条的切图: x# H* w3 _; E7 A4 o
- 4 n3 \1 E7 _8 |/ x9 u8 {
- (3) 确定最后一个词条所在栏:
% v! u u4 f* m' K5 w# E% r% z - --> 最后词条所在栏之后的栏, 直接导出大切图 (标记为本页末词条续)
复制代码 % F: _9 x+ `) m* ~& Z
$ z/ _; V9 w7 G$ v重要更新:/ |: w. G" a, H8 c' Y$ k1 Z
1. 词条整体切图模块重写& J: h& J* u3 ^9 d' i# E
2. 增加根据.pdic导出所有图片切图信息(+切图)--> 几十秒【如下面动图GIF】; M0 p7 K5 B3 A' n
9 k: c+ ]/ _; b! ]
~/ e& M8 b4 i% e% l; Q
7 G! Z7 o& e7 X* {2 C" M2016.11.28
$ w. O6 v/ j. l) m更新:一个小小的bug(跳过页首处下方如果单行接续,会因为判断的距离和行高过于接近造成缺漏 --> 修改了公式)* p7 p( c; B, b1 o7 L
) A" W+ W( v: w5 K$ `( D( J7 ?
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?免费注册
x
评分
-
1
查看全部评分
-
|