|
|
本帖最后由 chigre3 于 2018-11-30 08:14 编辑
) z7 i. w) o# _2 h* ^1 `) `" i }# J+ j6 i6 l
一、致谢:; u0 K. n2 u, H( ^
感谢 @vbnet 的自动画线测试版, 现在经过个人修改, 几乎完全删除了原先的内容, 软件名称仍为 Picture Capture# D2 L; G. [/ O$ e
感谢 @孤影 的自动划线软件, 给了很多界面上的参考
4 A: k+ k+ m! }0 |------------------------------------------------------------------------6 H. {6 s9 y* H: z2 Z+ o
二、这个软件有什么用呢???% o4 l, c( _- Z7 h: C z
极大地提高制作图片版词典的效率,现在个人需要做的事情仅仅为:5 |! {: z* t6 a* q/ K
1. 前期的图片处理:Abbyy Finereader(整体校直)、Photoshop(模板调位置, 统一)、ComicEnhancerPro(转换格式、大小) 等
3 r; H" S0 |6 l( B: V0 H 2. 使用本软件进行:! W; J) K- D( `, @9 M& I0 Z, ^/ d4 T
(1) 全部页面的 自动划线-->自动OCR
2 ]6 w, d, E( b (2) 逐页校对划线和文本(可删可增)
( V H2 e% g. i (3) A.合并 .pdic (词条 + 坐标信息) --> Excel 模板 --> 文本替换 --> 精确高亮定位 整页版 图片词典
, I! l! ~; b( N8 p4 @ B.导出单词整体切图 --> 合并 .PWWords (词条+图片名称) --> 文本替代 --> 切图版 图片词典
0 k. ]7 ^" O$ c8 J4 _% Z, r' @------------------------------------------------------------------------
: ]2 }$ U& @ X三、实现的功能:1 f9 Q0 W, D3 X2 I8 r3 d) k' M& D& X
1. 画线:
! c c8 H$ |5 U5 f: U. {' j (1) 自动分析页面 + 自动画线. z, j S9 B$ H
(2) 手动模式定义页面 + 自动划线
6 M3 R8 k3 k4 B5 _: F (3) 鼠标右键单击修改单栏重新自动画线6 i: n, g1 h, P1 z7 b2 r5 c# l
以上均 + 鼠标左键单击增加画线, 文本框内快捷键`删除划线. l7 g5 T( x" W* a
1 c5 D1 x) R; v9 B# j6 T9 K 2. OCR:6 K, b# S# M4 z" g
采用Tesseract OCR, 具体语言文件 tessdata 可以到官网下载:https://github.com/tesseract-ocr/tessdata' s' X. j3 x4 s* h
(1) 导出文本:可外部编辑后导入, 避免OCR单个切图的不足
' {* v6 Q$ b( D0 r (2) 导入文本% y1 y9 v- p7 K4 V
(3) 1 + 2:直接将OCR结果导入当前页面的文本框 --> 校对
; t1 b" F, Y. ]9 [# q0 y 外置批量替换表达式文本, 可自行创建和编辑, 适应各个词典不同OCR处理的场景0 V2 |; H Q) [3 G2 r
5 j2 J4 p6 i7 {0 S1 J
3. 切图:
0 y) I2 j/ F: T6 j8 y6 X (1) 词条单行切图:也可以使用外部其他OCR软件处理,或者其他用途
$ L1 Q8 p8 g9 r5 X+ |8 E8 B. I (2) 词条整体切图:实现切图版图片词典的制作(背景透明,不过目前需要其他PNG优化软件缩减大小:https://www.pdawiki.com/forum/thread-19157-1-1.html)
, A, f1 G6 S) n' Q* } (实例1:[英-汉] 20161113《英汉大词典(第2版)》10页单词 切图版 https://www.pdawiki.com/forum/thread-19015-1-1.html)- b2 j. V, M4 n" w; G
(实例2:新西汉词典 切图版 https://www.pdawiki.com/forum/fo ... 6545&fromuid=174481)* [3 H, C; I3 x0 @

n8 S |5 v, D: E9 Y/ U7 N 可实现仅导出切图坐标等信息,不导出切图,方便使用外部软件进行
! G- I" q; {# B- O$ w0 w9 a% G 
, V, q! v1 r- O- v q
) @, ]7 \& ~ E7 h) L+ n# [% k8 M+ e 4. 校对:$ M6 ?3 G# A8 n: \
列表式样, 与主窗口同步更新文本框内容, 也高亮匹配提示
' l* g" c# z8 v8 n" i7 V2 N( o' o/ l
" E7 f" ^1 E5 h& C% f 5. 其他:* D# u' I6 {. D
(1) 配置文件保存、导入2 I. o& v' T6 {. u: m
(2) 自动下一页+操作(定时):自动保存、自动画线、自动OCR、自动切图。方便无人值守完成相应任务
4 `; o& f1 |0 F2 l: ?+ N$ Z/ s (3) 最重要的还是要人工校对!!!!
2 M% y: L4 G9 B5 J/ K% `) D (4) 高度自定义参数设置" n# _3 y5 [6 Y2 i3 C+ e+ T4 H: l
------------------------------------------------------------------------7 [. h$ r5 `1 s
如题,放个图:: ]1 x/ s/ w k7 y6 b8 K
. G9 n/ Q4 g1 D$ A2 q
5 f# n" u8 a% ~( `! q0 ?: F% d& g
' A5 P+ R3 p0 y2 I. }
1 C* Z* h. h4 D% ^* x" h截图内的词条文字为OCR结果8 f J% o" o3 Z: x( v# n
, W# n+ \, h M$ }( m! O
1 W& @* S! a% t* [! m: ^) {2 k
( s$ D' s" P+ {: s1 j
----------------------------20181130更新:
. `. X6 {- s$ h' s校对窗口增加按当前提示索引(全部或部分)填充当前划线的文本框!) d7 I5 M( v2 E: T, g2 w4 ?
----------------------------
5 q. _$ [8 ?) E- }. E# |20180809更新:1 c( ^" u3 a& N! s. e( \
插图画区域由之前的矩形升级为任意多边形+ p8 m3 I, n0 J2 u! ?9 c
8 u% i g9 M6 _9 D: C/ \9 _
1 }. h {, F3 s6 z. E7 W8 |----------------------------: f5 ?9 p0 w5 g3 \% p. }
20180614更新:8 l* m. ^+ f: X9 Q! N
在校对界面中增加一列单词,即大词库表中 上页末单词和本页末单词 之间的所有单词。9 u1 L) l/ s5 y; B3 z; A$ h
单击则替换当前校对文本框中的文本!/ O, v9 b9 X+ u: C
不同颜色提示,方便定位!
% ~# o3 }! D5 c7 W' r+ C9 U- u) J5 U: `
; D5 c7 O* h2 Z2 u4 a# m! a* e& R+ ^, p- q8 ?% v* n' `
----------------------------
' X ~1 X, h3 T1 G! D5 M0 Z0 T6 |20170314更新2:( c0 e6 i! ~7 p6 @( y6 Y
校对界面修改如下,增添更多特殊字符(aeiou等),方便校对的时候直接复制粘贴:% ?7 ~8 k+ e% O$ A5 Q
% R' ~, H5 C% k+ u% w
8 P6 q0 m8 i% C5 ]20170314更新:: Z$ Z, M7 e; E- p3 d
起始页-->终止页* w0 P3 }' L7 q) m8 a2 b/ y5 s
[切图]-【词条整体切图】8 I( o8 L7 k" j! m& K! s
---> 会直接把范围内的页面的所有单词切图导出(软件界面会有假死的状态,不用理会,导出结束就OK了)
; [" N) w4 ?; Z; N+ M ~- U如果起始页和终止页为空,则导出当前页的词条切图5 e8 P" R1 x8 g& Z, T, B4 w# y: P
" R" T5 h8 C5 O5 ^
在校对界面时,主界面【√隐藏线框】,那么此时就只有颜色框(平行线宽)
: ^/ P- G* w* k- C3 C$ F' f6 M当前词条亮黄色,其他还是红色
T% J, P/ W# W$ ] v这儿主要是考虑到有时候词条不只是单行,多行的时候可以方便查看。
9 {2 E' e/ G0 _$ W
p) X5 p% y+ i7 L" Z' K----------------------------
8 ^9 y- o3 \3 f9 D' s7 T8 A1 l20170313更新:
6 H a% U% b$ f: g1. 词条整体导出切图的判断逻辑的补充(3栏以上时,位于不同列的上下单词中间隔了空列。之前这个情况未考虑到)( c$ Y+ M- V* @- X; o( t/ G: j
【仅修改了:从PDIC整体导出切图的坐标数据的这部分补充内容】; p' U2 Y' Y0 E4 N* M; o6 B4 |# R
----------------------------
9 E4 a7 f. r$ A/ c4 A2 v0 A20170217更新:% j0 A! E& b, x9 a# Z4 y+ I: X
1. 画线判断的方法改进(2种方法均改进). ]; }5 a. d6 K: r
----------------------------8 I; I; n) P$ o, n* `. J9 j% R
20170115更新:
1 o9 ^7 ^4 A! N! {$ |1. tessdata 的完整语言列表,具体语言移步【https://github.com/tesseract-ocr/tessdata】下载
. I1 b Y2 s# {5 k- l0 S5 G2. 在图片文件名列表上方的文本框里输入“SMALL”,点击【校对】,每个词条行的缩略图切图(非原始图片上裁剪)/ j6 d4 n. {- J! J
----------------------------+ q0 |1 }% ^% p& C# N- X- a! y
20161119更新:
7 c$ z1 A) }9 Y; }9 x1.修复保存坐标数据时的bug, E/ ~, u7 S4 N
2.修复单词整体导出页面的一个bug
; @' R1 \7 z% X3.增加功能: 选定范围页面的批量导入词条9 I. I1 T- Z5 M4 j. v% Z
4.增加功能: 快速查找定位索引8 L: d. f0 ]0 w
----------------------------4 a' U5 h) v1 ?! w9 X7 b
20161123更新:
9 Q& B- a6 ^: z o+ _2 {重写词条整体导出切图的判断逻辑,现在应该不会有切图坐标不一致、切图数目不一致的情况了。+ q5 }$ g: B! D# _( _
+ j, R( ?) u3 r2 g$ P- 问题:页面是否有词条?
# b) D' g+ y' x, I1 t4 e) J- G - 1. NO --> 直接导出和栏数一致的大切图 (标记为上页末词条续)
: n0 z3 L4 H7 Q7 H% \" Q - 2. YES --> * A, T% Z6 V7 c8 {1 e0 n
- (1) 确定0号词条所在栏:
# s* H9 o* y, a - --> 0号词条所在栏之前的栏, 直接导出大切图 (标记为上页末词条续)
' W5 [3 q/ k4 ?& \+ w# Y( Z - --> 0号词条所在栏上方若还有部分上页末词条接续, 则导出切图 (标记为上页末词条续)' R4 b" b: }" G7 ?5 _
- (2) 次数为所有词条数目的循环:4 H" b2 L, d8 j% F
- A. 若: 当前为最后一个词条 --> 确定高度6 ~1 n" \" q$ f( Y8 O0 b0 X" L
- B. 否则:
% N4 e# Q( r! q9 U4 u* Z4 E! |- Q - a. 下一个词条在下一栏 --> 确定高度
9 [* h- y. l. n. K) U" i - --> 如果当前词条在下一栏仍有接续 --> 导出切图 (标记为当前词条接续2)
* Q% H* v: ?$ D, V - b. 下一个词条在同一栏 --> 确定高度" }: i. ^# H# C2 e6 I+ X2 v( w7 S2 S2 j
- 4 ~; `, U8 C6 T3 i6 Z' {
- --> 导出每个词条的切图5 L3 ?1 }) s7 L+ k; \; |4 _
- 7 G: _6 A2 B l
- (3) 确定最后一个词条所在栏:
C% W- `+ t. a* e; O - --> 最后词条所在栏之后的栏, 直接导出大切图 (标记为本页末词条续)
复制代码 ( u) q v+ \2 X- e) |5 i
6 i9 ^: E2 ^4 [! ~) ~
重要更新:
5 t+ B- E0 U9 j5 ^1. 词条整体切图模块重写. `) }' g2 o7 G$ O
2. 增加根据.pdic导出所有图片切图信息(+切图)--> 几十秒【如下面动图GIF】
9 V/ v* ]9 {) f# i n4 T
# v% S! k' F p1 W- Y. D. v/ G! }& |
1 ], N1 I8 j% b* R2 C. x3 T. D6 e& p' h2016.11.28
^2 c: f# \+ s! ~0 u$ \* v8 t$ A- S更新:一个小小的bug(跳过页首处下方如果单行接续,会因为判断的距离和行高过于接近造成缺漏 --> 修改了公式)
. z3 C; C1 O% N, _" a! Z X1 t# n3 l
+ K/ [9 Y0 t( b9 H+ Q |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?免费注册
x
评分
-
1
查看全部评分
-
|