|
本帖最后由 chigre3 于 2018-11-30 08:14 编辑
5 R8 b( j% r+ _$ D$ T/ |, v; s0 g. G* y; s
一、致谢:2 B1 |. g6 }, a$ T: F
感谢 @vbnet 的自动画线测试版, 现在经过个人修改, 几乎完全删除了原先的内容, 软件名称仍为 Picture Capture8 J; c- }# q% j) ~
感谢 @孤影 的自动划线软件, 给了很多界面上的参考! ^" \. [# s$ s0 X; b
------------------------------------------------------------------------
3 ?; r4 S6 L/ ` ?1 q/ c: I" }二、这个软件有什么用呢???( L# J/ V: _& I& k2 H1 w( w6 q
极大地提高制作图片版词典的效率,现在个人需要做的事情仅仅为:
+ r* K# B' Y+ n' M: x 1. 前期的图片处理:Abbyy Finereader(整体校直)、Photoshop(模板调位置, 统一)、ComicEnhancerPro(转换格式、大小) 等/ n5 A8 z3 w ~4 b
2. 使用本软件进行:
% l* l% O4 P+ k9 q (1) 全部页面的 自动划线-->自动OCR
9 ~' |+ u4 Y+ _5 }2 _' H8 J (2) 逐页校对划线和文本(可删可增)
0 b" z5 }- n/ v3 \& K, ] (3) A.合并 .pdic (词条 + 坐标信息) --> Excel 模板 --> 文本替换 --> 精确高亮定位 整页版 图片词典
& a# Y- t8 A$ V% V0 p1 J0 c B.导出单词整体切图 --> 合并 .PWWords (词条+图片名称) --> 文本替代 --> 切图版 图片词典
3 M9 P4 S- n d7 Q& O------------------------------------------------------------------------! f; B$ S/ B! t, z
三、实现的功能:
( ^3 G- I! u$ g4 {2 \( ~ 1. 画线:# M3 `( v) ^5 I1 s9 v
(1) 自动分析页面 + 自动画线
/ s8 D& F; P- U5 G (2) 手动模式定义页面 + 自动划线
: G. f5 k! ^2 C# z (3) 鼠标右键单击修改单栏重新自动画线
) C M2 c" [' M0 ?! T 以上均 + 鼠标左键单击增加画线, 文本框内快捷键`删除划线
# W5 {* |* d$ X+ p
7 F; H0 Q9 n3 Y" d7 B7 y' R 2. OCR:. j& i4 U/ a6 l
采用Tesseract OCR, 具体语言文件 tessdata 可以到官网下载:https://github.com/tesseract-ocr/tessdata
. Q$ h' t3 M4 e! l: Z! f2 Q5 g3 _ (1) 导出文本:可外部编辑后导入, 避免OCR单个切图的不足
z1 ~. r; L5 e C (2) 导入文本4 z2 v) ^; z& t. b( h/ n3 [3 w
(3) 1 + 2:直接将OCR结果导入当前页面的文本框 --> 校对
, L1 i: `9 W6 Y, k& v4 p8 V c1 `8 { 外置批量替换表达式文本, 可自行创建和编辑, 适应各个词典不同OCR处理的场景
8 A" r C% F9 }# r; L$ a6 J2 ~2 S+ F( }. }+ _7 T
3. 切图:3 i6 ~" o4 l, M ^- H1 e( b0 u2 ]
(1) 词条单行切图:也可以使用外部其他OCR软件处理,或者其他用途9 c$ O& `& z' x7 O
(2) 词条整体切图:实现切图版图片词典的制作(背景透明,不过目前需要其他PNG优化软件缩减大小:https://www.pdawiki.com/forum/thread-19157-1-1.html)9 h8 ?" B+ ^% L+ s# p
(实例1:[英-汉] 20161113《英汉大词典(第2版)》10页单词 切图版 https://www.pdawiki.com/forum/thread-19015-1-1.html)
" z! S1 n8 |. S2 b5 B7 O* K- L- N( X (实例2:新西汉词典 切图版 https://www.pdawiki.com/forum/fo ... 6545&fromuid=174481)$ P& u1 u% g5 \
+ @" S) q3 f& l' I8 b: v& D
可实现仅导出切图坐标等信息,不导出切图,方便使用外部软件进行
6 b: O6 \6 w- i b( R4 S & M, m. G( W8 S+ O7 Z6 U$ t1 h
" a8 t- r8 C' U
4. 校对:* I. N% o. i* G, Z( f) o! C0 H+ [
列表式样, 与主窗口同步更新文本框内容, 也高亮匹配提示
+ w+ J# {5 L) @; P! @. {% Y
, d6 m+ ]& s; N" Z 5. 其他:
" A3 b( X4 O o (1) 配置文件保存、导入+ k7 K s; D- D+ w5 v9 {
(2) 自动下一页+操作(定时):自动保存、自动画线、自动OCR、自动切图。方便无人值守完成相应任务
9 k/ t+ ~+ W& v$ @* a% A3 v (3) 最重要的还是要人工校对!!!!
, w' r3 \, q2 {( O2 `+ f( q! A* W (4) 高度自定义参数设置, V9 c1 @1 s3 f) I
------------------------------------------------------------------------+ X7 k( @2 R% U# v7 P. r8 b
如题,放个图:
6 j/ n0 u6 U7 x0 a; z3 G6 s3 a* r$ G; n6 A+ f+ I% z
5 t0 k* w2 e4 F* V: d3 @& ]
, Z% @+ t( _; [6 {! L4 p
+ D; B' N6 Y" ]& k! N
截图内的词条文字为OCR结果0 E& v8 Y8 v5 v% c$ O( H

; V3 G! n! e$ u, {+ K2 \
& o8 L0 [; H$ [+ l' Q 4 X$ V" H, x8 W: r. v
----------------------------20181130更新:8 Q% F0 z" t) M" z! {
校对窗口增加按当前提示索引(全部或部分)填充当前划线的文本框!
& J; y$ @/ G$ u8 r0 |----------------------------
- X7 ]- J/ i* v* a20180809更新:
0 j n+ y0 n; H5 [# \: _; @插图画区域由之前的矩形升级为任意多边形
2 }; L' O" O0 n) o2 m& s! x& ^. @9 ?, B( k1 I2 g; L
3 F2 j* q9 O$ W7 E' a( d$ l---------------------------- @& O0 V) a9 Y3 W% x8 H
20180614更新:
; ^6 q! J/ G/ r8 l) G) V在校对界面中增加一列单词,即大词库表中 上页末单词和本页末单词 之间的所有单词。+ ]2 x0 D0 j; z
单击则替换当前校对文本框中的文本!
9 e7 R( ?4 o; P( k! f2 D不同颜色提示,方便定位!
, S6 |; {- e) o2 @. f. j* M5 b9 Q0 G
4 W% ~% `7 e& [0 B
. Z* V% _* m7 y8 D* ~
----------------------------, }( |! p- |. V4 K
20170314更新2:
5 i9 f7 C# J9 y" m9 D校对界面修改如下,增添更多特殊字符(aeiou等),方便校对的时候直接复制粘贴:
7 Y# k6 k# p# E e' X4 d/ D * G. R$ ?2 H2 @' O
O8 S- ^' O3 @0 a8 r
20170314更新:5 }4 r' E! d% H
起始页-->终止页# `. ?4 j) T; v9 Z! S% S
[切图]-【词条整体切图】( h7 t: E- P q8 l
---> 会直接把范围内的页面的所有单词切图导出(软件界面会有假死的状态,不用理会,导出结束就OK了)
0 q( E* H/ c. C) `' i8 J+ \如果起始页和终止页为空,则导出当前页的词条切图" L' g3 U+ w- T: L' B
$ C, K1 T* @; e0 ?在校对界面时,主界面【√隐藏线框】,那么此时就只有颜色框(平行线宽)
$ `% Y/ v- H1 v- G. v当前词条亮黄色,其他还是红色" ~/ e) Y$ _5 n+ a. f7 E
这儿主要是考虑到有时候词条不只是单行,多行的时候可以方便查看。
" K4 J ]8 \3 \) j$ q* g3 U7 A, O/ R
----------------------------
9 _6 P. C& a. { n8 [5 J6 S! E20170313更新:% ] J( f% P- r# W4 z: X# x
1. 词条整体导出切图的判断逻辑的补充(3栏以上时,位于不同列的上下单词中间隔了空列。之前这个情况未考虑到)
0 P. g. O$ y$ ~1 T 【仅修改了:从PDIC整体导出切图的坐标数据的这部分补充内容】
! P; U: K' p* z: [; c----------------------------; z% S3 X' Z8 U& r0 ~1 f
20170217更新:
: h+ o! g. O; d1. 画线判断的方法改进(2种方法均改进)
4 B: Q$ R, |1 x----------------------------9 g/ I) ] u# ^/ E1 l }
20170115更新:; z8 X: |& e3 W1 Y8 S
1. tessdata 的完整语言列表,具体语言移步【https://github.com/tesseract-ocr/tessdata】下载% u$ L- `# R: f7 b1 a% C
2. 在图片文件名列表上方的文本框里输入“SMALL”,点击【校对】,每个词条行的缩略图切图(非原始图片上裁剪)
+ R. }- X+ i- b ~----------------------------4 v* u0 j- X) ? q* W2 m
20161119更新:
, C8 b, S+ z' c5 X. ^8 I p1.修复保存坐标数据时的bug
% I# _$ i; x. j! _2.修复单词整体导出页面的一个bug
7 s; i* P& b' P" a7 n! {6 h' x/ v3.增加功能: 选定范围页面的批量导入词条
6 I1 x, c% |/ B1 l4 d4.增加功能: 快速查找定位索引" h& Q0 o/ g0 G. s$ K' K
----------------------------
3 k x& {8 l% Y+ b20161123更新:
! L; K+ C, I; w( b重写词条整体导出切图的判断逻辑,现在应该不会有切图坐标不一致、切图数目不一致的情况了。
. F3 M! z* b5 X' @5 e( r: r$ ~$ {# \( I* w4 C0 w
- 问题:页面是否有词条?: s+ {1 F) j2 V* Y# w$ u: I! h
- 1. NO --> 直接导出和栏数一致的大切图 (标记为上页末词条续)& h, m) G8 B' y' m- M# U
- 2. YES -->
% z6 U7 g- q S2 E6 @* u - (1) 确定0号词条所在栏:$ t+ n" P s2 y
- --> 0号词条所在栏之前的栏, 直接导出大切图 (标记为上页末词条续)
( r0 u S+ q4 {% b3 M9 I8 ~' H" Z8 R - --> 0号词条所在栏上方若还有部分上页末词条接续, 则导出切图 (标记为上页末词条续)& s9 q" Q- V9 B! ]/ ?+ b, q
- (2) 次数为所有词条数目的循环:
4 P( b' g% M0 }3 c; P - A. 若: 当前为最后一个词条 --> 确定高度
# T1 } M' _9 `+ H - B. 否则:
4 [0 [/ M1 P$ X/ m) A8 D1 X - a. 下一个词条在下一栏 --> 确定高度2 g" `$ H- ]2 L8 L
- --> 如果当前词条在下一栏仍有接续 --> 导出切图 (标记为当前词条接续2)
- `( }8 B4 T4 _! \3 }% d - b. 下一个词条在同一栏 --> 确定高度3 y2 z# ?' u1 i- f, j% V4 ]
6 S S0 {: s) h. j1 k* ^- --> 导出每个词条的切图
! x- C/ [: w! j, N - : ^& S/ I$ H3 e* O
- (3) 确定最后一个词条所在栏:
$ r& v, D( w. v4 o - --> 最后词条所在栏之后的栏, 直接导出大切图 (标记为本页末词条续)
复制代码
4 r, e, M) ?+ T B* e, y
8 J2 `: ~9 @ i; q% t4 v! w: R# ~重要更新:" j: w" X; j" O' Z8 ^4 u
1. 词条整体切图模块重写7 l+ T7 M" C; b9 J) ~% U
2. 增加根据.pdic导出所有图片切图信息(+切图)--> 几十秒【如下面动图GIF】
6 ~5 f7 Q7 z4 ? x3 Y. c1 c3 n- N( J( O) o9 o" f
3 V. c5 [/ A) C% Y1 [; B2 l& K/ z6 w* u$ c! D9 t5 N; p6 Z% `+ J( Q6 x
2016.11.28
' @, j: H. F3 [$ q, [& m更新:一个小小的bug(跳过页首处下方如果单行接续,会因为判断的距离和行高过于接近造成缺漏 --> 修改了公式); P* L8 {' h2 a( L* w
5 L5 j2 U ]# P |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?免费注册
x
评分
-
1
查看全部评分
-
|