目的需求:
2008年,遇到一本电子书 《女友十年精华》
觉得很美,想 私藏 这些文章:
>网络搜索文章 —— 没有找到;
>反编译程序 —— 所有文字 都是图片格式(部分文章的 非规律乱码 即为证明,且试用  Adobe Director 反编译 确是图片无疑)
>总计 310篇文章 —— 如何降低 工作复杂度 得到 文本格式的文章?

最后方案:
>写区域截屏软件,将一篇文章 截成多图 (图片文字行 有重复);
>过滤 文章多图 的背景图片(背景图片 会干扰 ORC 的准确率);
>将 文章多图 拆解为 每一行文字一个图片(会有图片文字重复);
>识别 单行文字图片 的 段落起始 和 段落结束;
>识别 单行文字图片,ORC 转换为  文字;
>将 识别后的 文字恢复 段落起始 和 段落结束(当前行文字 抬头空两格,下一行文字 另开段落);
>遍历 识别后的文字行,过滤 重复行;
>最后将文本格式化,把本该属于 一个段落的 取消换行。

看图说话:
>原始运行程序界面

>截屏软件

>图片分析,过滤背景


>拆解单行(前后的 “哈哈哈哈哈”,只是为了 保留 段落格式)




>ORC 图片文字,过滤重复行。(略)
>复原完整 文章图片(无用操作)

>识别最后文本:

爱情是需要用一生来培养的,尤其是
已婚的人们。
     送给妻子的鲜找
     方英文
  4 年前的那个夏夭,我忽然心血来潮:去了一个我很本不
清楚为什么要去的地方。在那儿,又因为一个小小的偶然事件
而相识了一位漂亮的女子。那女子长得阳光明媚凤采照人,一
下子勾去了我的魂儿。我认为这绝对是命运的有意安排。她叫
白玫,跟我一样,也是个狂热的诗歌爱好者。不难想象,我俩
很快就粘糊得赫不开了。
  我跟白玫的爱情结果是:我成了诗人,她成了诗人的妻
子。自跟我认识的那夭起,她再也不写什么诗了,而是全心全
意地爱我。当然,她仍喜欢谈诗,还算个相当不错的诗歌鉴赏
家。我俩的情书全用诗体写成,我想一旦我的名气再上升一
截,我们的诗体情书就会出版畅消了。但眼下最要紧的是:如
何将她调到我身边?
  在中国,调动工作的难度丝奎不亚于双职工想生第二胎。
为了将白玫调进市里,我跑座了腿磨肿了嘴。
  不过,还是终于让妻子兴高采烈地跟我过了一个礼拜新婚
般的生活。然而自她到新单位上班的那天起,我俩的苦难就开
始了。她原来的工作是政府部门,给领导当秘书,夭天都受人
茸敬,现在却让她当那该死的营业员,而且常因宪不成任务而
罚奖金扣工资。所以,在她每夭下班回家之前的那几分钟,我
就有一种地震前的恐惧感。她不再是那个爱诗的至纯至情的女
孩了,而成了一个凶悍拨皮的母老虔。有什么办法呢?只能怪
我这做丈夫的无能不能给妻子以幸福。我只好硬着头皮听她的
发泄咒骂,听她以威胁的口吻说要弄个原子弹 1 巴这个城市夷为
平地。我只能一边做饭洗碗一边听她的血泪控诉。当我忍受一
个礼拜到了极限时,就跟她大干一场,把世界上最刻毒的语言
都兜出来。若还不过瘾,就辅助以轻里级的拳脚。结果自然是
两败俱伤,好多天还不过阳来。离婚书也写了一厚沓,装订成
册完全是一部愤怒的匕首般的杂文集子。
  但我们终究没有离婚,一是因为我们的婚姻毕竟有爱情的
基础;二是因为我们没留神却台作了一个孩子。在弱小的孩子
给我们带来不曾有过的劳累和沉重期间,我俩只能相依为命携
手长征。我当然无法写诗,要写也只能写:啊,尿布!哦,大
便!当孩子进了托儿所我们稍有空闲时,空闲时间再次被争吵
占领了。争吵也只有一个内吝:她的工作问题。
  不长时间,我的头发就开始变白,真正是人未老而鬓已
秋。我对生活失去了信心,我的最宝蛊的生命已经成为我担负
不起的沉重的包袱。我想唯有死亡才是根除这种灾难的灵丹妙
药。它能解脱一切,它能一了百了。
  当然我并没有死,因为有孩子。孩子怎么办?我小时候就
死了父亲,因此我深知没父亲的孩子是多么苦难!可我又无法
忍受失妻间这种非人的折磨。他妈的,难道就没有一丝阳光注
入我们这阴暗潮湿的家庭之地吗?
  奇迹出现了。事情发生在春天的某个日子。那是礼拜四的
下午,我妻子的周末。她带着一种我们恋爱时的微笑回来了。
我问她有什么高兴事,她的脸颊屯和寸红起来,犹孩了半夭才告
诉我。原来,有个男顾客送了她一束迎春花,而她又不知道那
人是谁,因为花儿是别的营业员转交的。我的脸上立刻不高兴
起来,她以为我在吃醋,就要解释什么。我慌忙制止说,我也
很高兴呢,这说明我的妻子漂亮嘛;再说人家送的是鲜花,又
不是牛粪。这也确是我的心里话,因为我招架不住了,我可以
忍痛让别人爱她。
  自此,每个星期四下午,也就是说,在妻子的每个周末,
她都带着一束鲜花笑吟吟地回到家里。那些花儿各式各样,全
因季节的变化而变化,都是从郊外新采来的。我想,这或许是
某个大学生的浪漫行为,因为我上大学时,也给一位翘鼻子的
书店姑娘送过鲜花。我妻子为了表示对那鲜花的满不在乎,就
当着我面弃之垃级堆。这绝不是她的本意,因为她宪全可以让
我压根) L 不知道这回事嘛。
  鲜花出现在我们家庭,不能不说是一种危险信号。我本欲
提醒她的,但发觉没这个必要,因为鲜花的出现使她恢复 7 先
前的一切可爱之处:鼓鼓业业地领导我们父子俩过好小日子,
抢着干家务活,整天谋划着给我添置衣服。而且开始打扮,又
素雅又纯吉,既像个女学生,又像个家庭主妇。整夜跟我有说
不宪的话儿,给我讲她碰到的一切有趣的顾客,再也不提她的
以干代工有什么委屈了。当我俩绞尽脑汗也猜不出那个送花的
人是谁时,她高兴地说了一句非常非常重要的话:“有意思,
生活真是有意思 l ”
  我很有兴趣地告诉妻子,希望她尽快弄清那个送花人的真
实面目。于是,她每个礼拜四的下午就特别留心,用她那双乌
黑的眸子探素每一个走入营业厅的男子。但她一次又一次地失
败了。总是在她没留神的时候,由那位女店员转来一束鲜花。
i 司那男子是何等模样,回答总是含糊其辞和带着某种些许醋意
的神秘的微笑。
  妻子就有些不安了,说,搞得人家这么痴迷,又不能回
报,实在是犯罪。我说你去爱吧,咱俩离婚得了。她说放屁,
你死了我也不嫁人。我说在 80 年代,那个送你鲜花的人绝对不
是个柏拉图式的精神恋爱者,他肯定有本质的要求。
  不幸被我言中。有一天,妻子神色不安地回来,除带了一
束白菊,还有一张鹅黄色的字笺。字笺上写道:“请明夭下午
一点在 x 公园木瓜享东第三只长椅上一会。不来也罢。”妻子
绝对不去,但我做了耐心地劝导,主要理由只有一个:权当改
善生活呢。妻子总算答应了,而且,我俩还准备了对付了那男
子的台词。
  那天的公园阳光很好,风景也相当媚人。白玫坐到指定的
凳子上,我则躲到隐蔽的远处。我发现妻子像受刑似地坐在那
儿。时间已超过了两小时,只有两个中学生和三个拖儿带女的
老太太到她身边坐过,再也没有出现他人了。在返回的路上,
妻子说,有三个男人神色不对,其中肯定有那个送花人。我说
不是三个,而是 30 个 300 个甚至更多,因为男人见到你就自然
联想到鲜花,因为再漂亮的风景也没有美女好看。妻说我是拍
马屁我说这是我唯一的优点。
  当夭夜里,我改写了一首诗:
  花儿们都到哪儿去了/花儿们都被小伙子摘掉了/小伙子
们都到哪儿去了/小伙子们都给姑娘献花去了/姑娘们都到哪
儿去了/姑娘们都嫁给丈失了/丈失们都到哪儿去了/丈失们
都给妻子采花去了。
  读了这首诗就会明白,那个给我妻子送花的男人不是别
人,而她的丈失海桅。海桅正是我的名字。
  当我知道送鲜花不可能成为永远的秘密时,我就趁早原原
本本地告诉了白玫。她有点生气:
  “你干吗要说出来?”
  稍顷,她又说:
  “其实,我早就知道。”
  静默了许久,她摸着我两鬓的几结白发,深情地说:
  “真对不起。真没想到我害得你费了那么大的心 … … 我会
让你的头发变黑的。”
  诗人和他的妻子拥抱了。
>格式化文本:

>格式化 段落(即为 最后的文本)

>将 文字 转为 HTML (最后使用的格式)

至此结束:
>相关源码 写的很糟糕,各位园友似乎也用不到 ORC(就不开源 啦 —— 需要源码的 再联系我);
>ORC 效果最好的 是 Office 2007(2010 应该也不错)
  需要补丁 office2007sp1-kb936982-fullfile-zh-cn.exe 和 office2007sp2-kb953195-fullfile-zh-cn.exe

>其他 第三方 ORC 组件 完全是 渣渣;
>不想要 源码,只想要 数据库 的 也可以 再联系我;

舒小龙
                                                                           2014-07-13 12:02

附上源码下载:http://www.shuxiaolong.com/DoAjax/DownloadHandler.ashx?Number=5IBADAP0MRC

『方案』《女友十年精华》 ORC 图片 文字识别 详解的更多相关文章

  1. “全栈2019”Java多线程第二十四章:等待唤醒机制详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  2. “全栈2019”Java多线程第十六章:同步synchronized关键字详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  3. “全栈2019”Java多线程第十四章:线程与堆栈详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  4. “全栈2019”Java第九十六章:抽象局部内部类详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  5. “全栈2019”Java第六十四章:接口与静态方法详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  6. “全栈2019”Java第六十二章:接口与常量详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  7. “全栈2019”Java第五十九章:抽象类与抽象方法详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  8. “全栈2019”Java第五十六章:多态与字段详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  9. “全栈2019”Java第五十二章:继承与初始化详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

随机推荐

  1. C#XmlHelper操作Xml文档的帮助类

    using System.Xml; using System.Data; namespace DotNet.Utilities { /// <summary> /// Xml的操作公共类 ...

  2. nyoj 1029/hdu 3714 Error Curves 三分

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3714 懂了三分思想和F(x)函数的单调性质,这题也就是水题了 #include "stdio ...

  3. chrome升级54以后,显示Adobe Flash Player 因过期而遭到阻止

    请直接下载 最新的Adobe flash player 离线安装包.经测试,在线安装不管用. 百度云地址: install_flash_player_23_ppapi.exe  密码:8c2i

  4. html的input输入框边框

    1.输入框边框完全隐藏<input type="text" style="outline:none;border:0" /> 2.input去边框立 ...

  5. C++STL之迭代器

    迭代器 迭代器提供对一个容器中的对象的访问方法,并且定义了容器中对象的范围.迭代器就如同一个指针.事实上,C++的指针也是一种迭代器.但是,迭代器不仅仅是指针,因此你不能认为他们一定具有地址值.例如, ...

  6. [转]ionic tab view hide tab bar

    http://stackoverflow.com/questions/23991852/how-do-i-hide-the-tabs-in-ionic-framework ////// tabs.ht ...

  7. Linux 系统常用命令汇总(一) 文件和目录操作

    文件和目录 命令 选项 注解 示例 文件的基本操作 ls [选项][文件] 显示所有文件和目录  ls -al  -a(A) 显示所有文件和目录,包括隐藏文件和目录(显示所有文件和目录,包括隐藏文件和 ...

  8. 【Android UI设计与开发】5.底部菜单栏(二)使用Fragment实现底部菜单栏

    既然 Fragment 取代了TabActivity,当然 TabActivity 的能实现的菜单栏,Fragment 当然也能实现.主要其实就是通过菜单栏的点击事件切换 Fragment 的显示和隐 ...

  9. 怎样用好ZBrush中的PaintStop插件

    PaintStop是ZBrush®3.1的手绘插件,可以比较真实的模拟手绘风格,尤其是用水彩笔刷画水墨风格画.PaintStop插件可供用户免费使用. PaintStop是一款功能强大的插件,已经被添 ...

  10. hdu 5862 Counting Intersections

    传送门:hdu 5862 Counting Intersections 题意:对于平行于坐标轴的n条线段,求两两相交的线段对有多少个,包括十,T型 官方题解:由于数据限制,只有竖向与横向的线段才会产生 ...