从几个常见需求看扫描电子书处理软件选择「建议收藏」

从几个常见需求看扫描电子书处理软件选择「建议收藏」作者:马健邮箱:stronghorse_mj@hotmail.com发布:2020.01.04这几天在eshuyuan碰到一些人谈到扫描电子书处理,很多人的习惯是使用通用图像处理软件,包括Phot

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

作者:马健
邮箱:stronghorse_mj@hotmail.com
发布:2020.01.04

这几天在eshuyuan碰到一些人谈到扫描电子书处理,很多人的习惯是使用通用图像处理软件,包括Photoshop、光影魔术手、美图秀秀等来处理扫描版电子书。但在我看来,扫描电子书与日常风景照、人物照完全是两件事情,通用图像处理软件尽管功能强大,但在处理扫描电子书时却会面临强大的功能无处使,想要的功能又没有的窘境,没法与专门为处理扫描电子书而开发的软件相比。当然如果用处理扫描电子书的软件去处理日常照片,多半也属于脑子进水。

口说无凭,就用几个处理扫描电子书时经常碰到的问题,检验一下软件的成色吧:

1、自动纠斜功能
扫描图像歪斜是很常见的吧?这个功能很重要是吧?PS等有手动纠斜,自动纠斜有吗?ScanTailor(ST)、ComocEnhancer Pro(CEP)都有。其中ST只支持横排版的自动纠斜,而CEP好歹是中国人写的,所以除了横排版外,还支持祖传的竖排版自动纠斜。

2、版心自动居中

在不把书籍切开进行扫描的情况下,扫出来的版心内容偏左、偏右都是必然的事情,但在通用图像编辑软件里,版心居中需要多步操作:先切边,再扩边。切边时碰到中缝阴影、黑边、麻点 等等的干扰,自动切边就麻爪了,只能靠人。可这对于专门处理扫描电子书的软件而言,属于基本必备技能好吧?

3、自动修正光照不均匀的图像
对于平板扫描仪,这个问题一般不严重,只有在厚书的中缝部分会有一些,碰上了就会恶心一阵。可对于用手机或相机拍的书,光照均匀、不需要修正的我只在几十万一台的V字型扫描仪上见过,自己拍的一张都没有,因为日常拍照环境基本上不可能有这么均匀、强烈的布光。如果 不对不均匀光照进行修正,直接把拍摄的图像转二值化图像基本上就是个梦,还是噩梦。PS可以手工修正光照不均匀,自动修正我活久也不见,但对ST、CEP这算个事吗?ST是全自动,CEP鼠标选一下参数而已。

4、局部自适应二值化
在《The Scan and Share tutorial》中,一再强调书籍应该用300 DPI扫描,然后用软件处理成600 DPI。不过这篇文章毕竟是几年前的了,考虑近期和未来显示器分辨率的发展趋势,我现在处理纯文字页面基本上都是800 DPI打底,高的甚至到1200 DPI。从300 DPI放大到800 DPI以上,不可避免的会出现模糊,这个时候再用Otsu等全局二值化算法,在对笔画的粗细等控制上就会显得无能为力。通用图像处理软件只有全局二值化,没有局部自适应二值化。这方面CEP基本上独此一家。高倍放大处理的例子见这里:
 https://www.cnblogs.com/stronghorse/p/9425046.html
另外从实际处理的情况看,300 DPI灰度图如果不放大直接转成纯黑白二值化图像,笔画粘连等处理起来效果没有放大后的好,所以即使考虑在手持设备上看书时可怜的运算能力而不能放太大,但放大到600 DPI应该是底线。

5、高倍数放大后的高阶锐化
在高倍放大以后,高斯模糊+局部自适应二值化可以控制笔画粗细和平滑度,但对笔画粘连无能为力,只能靠高阶锐化硬磕。PS的锐化实在是太温柔了,与CEP的高斯锐化没法比。

6、自动去毛刺、自动去麻点
对于二值化图像,二值化之前用高斯模糊可以适当平滑笔画、去除孤立点,但二值化过程在笔画上造成的毛刺和一些颜色较深造成的麻点是去不掉的。如果用通用PS处理,麻点只能用鼠标逐点去除,笔画上的毛刺只能放大后逐像素去除,有哪个人有这个耐心?可自动去毛刺、自动去麻点对CEP、ST而言全是标配,只不过ST是全自动,没法进行细部控制,CEP可以根据需要手动配置参数。去毛刺的例子可以看这里: https://www.cnblogs.com/stronghorse/p/7224976.html

7、自动去短线、波浪线
古文里面这些东东比较多,在人名、地名下面(横排)或左面(竖排)都有,现代文少一点,但页眉、页脚和正文中有时候也会有,这些肉眼看没事,但会对OCR造成干扰,所以如果想OCR,还是要先去除才行。用PS就手工滑鼠标、按Del键吧,CEP里对于二值化图像可以按照参数配置自动去除。

8、双页自动切分
扫描的时候为了提高效率,双页连扫是常规操作,但看书的时候还是希望逐页看,所以分页对扫描书籍处理而言也属于常规操作。在中缝位置不固定的情况下,PS分页只能靠手,ST、CEP可以靠算法自动切。

9、曲面展平
在图书馆里拿着手机拍过平摊在桌面上的书页的人都对这个功能很渴望,PS只提供梯形矫正,还是手动的,更没有页面弯曲矫正,而ST、CEP都有自动梯形矫正、自动弯曲页面展平功能。CEP的自动梯形矫正、自动展平操作见我网盘里的PPT,ST展平的视频见这里:

链接:https://pan.baidu.com/s/1CqFezSFxmWChgR6m9EIF2g
提取码:ksxs

ST各版本的展平不太一样,参见这里:
ScanTailor版本简介 – strnghrs – 博客园 (cnblogs.com)

发展到现在。ST与CEP还是有区别的,参见这里:
ScanTailor与ComicEnhancerPro的区别 – strnghrs – 博客园 (cnblogs.com)

============================================
怎么样,上面这些功能有没有看得你心潮澎湃?然并卵,如果自己不从事书籍扫描工作,只是看别人扫描的电子版书籍,那么以上软件其实用处都不太大,因为能够下定决心并采取实际行动对一本扫得不好的书籍进行二次处理的人真心太少。以我自己为例,虽然看PDG版电子书的时候经常被扫得歪歪斜斜的书页恶心到,但让我把整本书重新处理一遍,我又觉得太麻烦、太费时间。这个时候如果所用的扫描版电子书阅读软件能够提供常用的纠斜、居中及图像处理功能,点几下鼠标就能把歪斜、模糊、发白的扫描书籍处理得至少看上去不那么恶心,还能提供OCR功能便于摘抄,那就是看扫描版电子书的福音了。UnicornViewer(UV)就是这样的阅读软件,它与CEP共享同一套图像处理引擎,因此CEP的常用二次处理功能在UV中都有,包括纠斜、居中、自动色阶、锐化等,所以我现在都是用UV看扫描版电子书,包括PDG、PDF、DjVu、TIFF等格式的电子书,看到处理得不好的图像就自己点几下鼠标,然后就可以爽了。UV具体功能介绍参见这里:

Z版与D版UnicornViewer的区别 – strnghrs – 博客园 (cnblogs.com)

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167055.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python删除文件到回收站

    Python删除文件到回收站利用activepython里面的shell模块可以完成删除到回收站的操作,如下:fromwin32com.shellimportshell,shellcondefdeltorecyclebin(filename):   shell.SHFileOperation((0,shellcon.FO_DELETE,filename,None,/      shellc

    2022年5月30日
    37
  • mysql—如何为innodb选择主键

    mysql—如何为innodb选择主键

    2020年11月12日
    221
  • 卸载pycharm重新安装_乌班图怎么下载pychsrm

    卸载pycharm重新安装_乌班图怎么下载pychsrmpycahrm安装首先要去pycharm的官方网站下载Linux版本的pycharm安装包。如果想要下载以前版本的pycharm可以登录下方的网站去下载。https://www.jetbrains.com/pycharm/download/other.html安装包下载完毕后应该是一个后缀为:.tar.gz的压缩文件。此处我将下载的安装包放到了Downloads目录下(放在哪里随意)…

    2022年8月29日
    5
  • LSTM和双向LSTM

    LSTM和双向LSTM文章目录1.RNN2.LSTM2.1简介2.2细胞状态2.3遗忘门2.4输入门2.5输出门3.双向LSTM(Bi-directionalLSTM)4.keras实现4.1LSTM模型4.2Bi-LSTM模型4.3训练模型4.4预测参考连接:https://www.cnblogs.com/Allen-rg/p/11712703.html1.RNN循环神经网络(RecurrentNeuralNetwork,RNN)是一种处理序列数据的网络。其中xt为t时刻的输入,h

    2022年6月16日
    41
  • 【小白视角】大数据基础实践(五) MapReduce编程基础操作

    【小白视角】大数据基础实践(五) MapReduce编程基础操作目录1.MapReduce简介1.1起源1.2模型简介1.3MRv1体系结构1.4YARN1.4.1YARN体系结构1.4.2YARN工作流程2.MapReduce工作流程3.JavaApi要点4.实验过程最后1.MapReduce简介1.1起源在函数式语言里,map表示对一个列表(List)中的每个元素做计算,reduce表示对一个列表中的每个元素做迭代计算。它们具体的计算是通过传入的函数来实现的,map和reduce提供的是计算的框架。在MapReduce

    2022年6月22日
    33
  • 用python实现关机程序_python实现重启关机程序

    用python实现关机程序_python实现重启关机程序python实现重启关机程序发布于2014-08-2523:12:16|595次阅读|评论:0|来源:网友投递Python编程语言Python是一种面向对象、解释型计算机程序设计语言,由GuidovanRossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块…

    2022年7月22日
    14

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号