『方案』《女友十年精华》 ORC 图片 文字识别 详解
2008年,遇到一本电子书 《女友十年精华》
觉得很美,想 私藏 这些文章:
>网络搜索文章 —— 没有找到;
>反编译程序 —— 所有文字 都是图片格式(部分文章的 非规律乱码 即为证明,且试用 Adobe Director 反编译 确是图片无疑)
>总计 310篇文章 —— 如何降低 工作复杂度 得到 文本格式的文章?
最后方案:
>写区域截屏软件,将一篇文章 截成多图 (图片文字行 有重复);
>过滤 文章多图 的背景图片(背景图片 会干扰 ORC 的准确率);
>将 文章多图 拆解为 每一行文字一个图片(会有图片文字重复);
>识别 单行文字图片 的 段落起始 和 段落结束;
>识别 单行文字图片,ORC 转换为 文字;
>将 识别后的 文字恢复 段落起始 和 段落结束(当前行文字 抬头空两格,下一行文字 另开段落);
>遍历 识别后的文字行,过滤 重复行;
>最后将文本格式化,把本该属于 一个段落的 取消换行。
看图说话:
>原始运行程序界面

>截屏软件

>图片分析,过滤背景


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






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

>识别最后文本:

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

>将 文字 转为 HTML (最后使用的格式)
至此结束:
>相关源码 写的很糟糕,各位园友似乎也用不到 ORC(就不开源 啦 —— 需要源码的 再联系我);
>ORC 效果最好的 是 Office 2007(2010 应该也不错)
需要补丁 office2007sp1-kb936982-fullfile-zh-cn.exe 和 office2007sp2-kb953195-fullfile-zh-cn.exe
>不想要 源码,只想要 数据库 的 也可以 再联系我;
舒小龙
2014-07-13 12:02
附上源码下载:http://www.shuxiaolong.com/DoAjax/DownloadHandler.ashx?Number=5IBADAP0MRC
『方案』《女友十年精华》 ORC 图片 文字识别 详解的更多相关文章
- “全栈2019”Java多线程第二十四章:等待唤醒机制详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
- “全栈2019”Java多线程第十六章:同步synchronized关键字详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
- “全栈2019”Java多线程第十四章:线程与堆栈详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
- “全栈2019”Java第九十六章:抽象局部内部类详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第六十四章:接口与静态方法详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第六十二章:接口与常量详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第五十九章:抽象类与抽象方法详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第五十六章:多态与字段详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第五十二章:继承与初始化详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
随机推荐
- C# listview 拖动节点
/// <summary> /// 当拖动某项时触发 /// </summary> /// <param name="sender"></ ...
- Sping mvc 环境下使用kaptcha 生成验证码
一.kaptcha 的简介 kaptcha 是一个非常实用的验证码生成工具.有了它,你可以生成各种样式的验证码,因为它是可配置的.kaptcha工作的原理是调用 com.google.code.kap ...
- ELK 信息统计分析-1
Aggregations 格式如下: "aggregations"{ //可以简写为aggs "<aggregation_name>":{ //名称 ...
- java String部分源码解析
String类型的成员变量 /** String的属性值 */ private final char value[]; /** The offset is the first index of the ...
- C++find函数
头文件 #include <algorithm> 函数实现 template<class InputIterator, class T> InputIterator find ...
- IOS版本被拒的经历
IOS版本被拒的经历: 1,登陆方式依赖外部平台 因为我们的APP是只用微博登陆,想做成类似meerkat类型的,也能各种消息都同步微博. 结果当然行不通,这个确实是不听好人言,网上多个人都说过这个问 ...
- 深度优先搜索 codevs 1031 质数环
codevs 1031 质数环 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 一个大小为N(N<=17)的质数环是 ...
- HOJ 1640 Mobile Phone
题意:有一个n*n的矩阵,op==1时,在(x,y)增加值z,op==2时,求以(x1,y1)和(x2,y2)构成的矩阵的和. 思路:二维线段树. 代码: #include<stdio.h> ...
- 第23章 SEH结构化异常处理(1)_系统SEH机制
23.1 基础知识 23.1.1 Windows下的软件异常 (1)中断和异常 ①中断是由外部硬件设备或异步事件产生的 ②异常是由内部事件产生的,可分为故障.陷阱和终止三类. (2)两种异常处理机制: ...
- BFGS方法
今天看了 Nocedal 写的Numerical Optimization 中关于BFGS方法的介绍. BFGS方法有个近亲,叫做DFP方法.下面先介绍DFP方法. 这个方法的意图是找一种方法对Hes ...