起因

印象中,2006 年之后,数码相机开始普及,可拍照的手机才开始上市。小时候拍照都用胶卷机,一卷胶片拍完,送去暗房冲洗相片。对于 80 后一代人,以及出生更早的,家里相册肯定收藏着或多或少的相片。

胶卷冲洗出相片,原理是相纸表面感光物质发生光化学反应产生颜色,相纸上的影像就是这些化学颜料附着其上形成的。所以相片的损坏可以分成化学损坏和物理损坏。

化学损坏指,随着时间推移,相纸表面的化学颜料会变质、氧化、脱落,导致相片色彩发生变化。物理损坏指,相纸本身可能遭到虫咬、沾水、遗失、人为损坏等直接物理破坏。防止物理损坏,只需要足够细心的保管。但要避免化学损坏,本质上就是对抗时间,即使用专业设备为照片创造出一个恒温恒湿抗氧化的保存环境,时间久了化学颜料还是会氧化褪色。参考敦煌石窟里的彩绘,已经处于国家顶级的护养条件,隔几年还是需要人工修复。对于我等普通人这个难度太大,可以选择另一种简单方式——扫描。

将相纸照片扫描成数码照片,一方面可以变相避免物理损坏(相纸没了,电脑上相片还在),更重要的另一方面在于,影像被固定保存下来,不会随时间褪色,避免化学损坏。此外还有便于保存,易于分享的好处。

于是趁小长假,把橱柜相册里的相片全部扫描成数码照片。

工具

  • 硬件:一台电脑,一台扫描仪(家用的就行)
  • 软件:Photoshop CS6,GIMP,XnViewMP,XnConvert

步骤

1. 连接扫描仪与电脑

如果扫描仪已经能够操作,就不用这一步。我借到的扫描仪比较简易,家用的扫描区域 A4 纸大小,平板手动的,连接自己的电脑后还需要安装驱动,而且没有配套扫描软件,只能通过 Windows7 自带的扫描程序操作。如果能找到扫描后自动发送到电脑的高级货,效率会更高。

2. 扫描照片

将照片扣在扫描仪玻璃平板上,背面朝上,尽量放正位置(可以减少后期旋转摆正照片的工作量)。然后盖上扫描仪盖,启动 Windows7 自带的扫描程序,做如下图中两个设置。

  1. 分辨率 DPI设置为 300(扫描老照片足够);
  2. 预览或将图像扫描为单独文件取消勾选(视扫描仪型号而定,我用的扫描仪就无法设置这一项)。

程序设置好后,点击右下角扫描按钮,等待扫描仪运行完毕,再按提示保存扫描文件。

由于老照片一般都是 6 寸、7 寸大小,扫描仪一次扫描面积 A4 大小,一张接一张扫很花时间,可以一次扫描至少 5 张照片为一张 A4 图片,再后期通过 Photoshop CS6 进行拆分。建议不要一次扫太多照片,保证照片之间留够间隙,利于 Photoshop CS6 自动识别照片边界。

3. 拆分照片

将扫描的图像文件用 Photoshop CS6 打开,选择「文件->自动->裁剪并修齐照片」,Photoshop 会自动识别图像中的照片并拆分成若干个照片文件,然后手动将每个照片文件保存。

Photoshop 根据图像中物体边缘颜色反差识别物体,不一定能正确裁剪出照片。据我自己的使用情况,Photoshop 正确拆分出每张照片的机率约为 70%。对于不能自动拆分的,采用 Photoshop 的裁剪工具手动拆分保存。

这一步相当花时间,一方面因为 Photoshop 自动识别功能耗费大量 CPU 算力,电脑性能一般,程序运行时间就长。另一方面,手动剪裁出每张照片不仅花时间还费精力。

4. 优化照片

搞定上一步拆分照片,本次任务基本上就完成了。但是 Photoshop 自动拆分出来的照片,存在歪斜、黑/白边等问题,扫描仪自身的成像素质,也会造成扫描照片与原相片之间的色彩差异。不过对于数码照片,这些都不是事儿,PS 大法走起。以下是我进行的几个优化项,第 1 项一般都需要,第 5 项纯粹玩票,其他项视扫描成像而定。

  1. 旋转摆正照片、裁去黑/白边;
  2. 修复照片破损区域;
  3. 利用透视工具和切变工具拉正照片画面;
  4. 利用自动色阶工具优化对比度和色彩;
  5. 给黑白照片上色;

4.1 旋转摆正照片、裁去黑/白边

基本上所有照片都需要做这一项处理,选择 XnViewMP 来实现。XnViewMP 不仅可以浏览目录中的照片,还可以在浏览界面进行旋转、裁剪,非常适合此项操作。

4.2 修复照片破损区域

有些老照片本身存在缺角、孔洞等画面缺失的问题,利用 GIMP 的仿制图章工具进行修补。当然也可以用 Photoshop,哪个顺手用哪个。

4.3 利用透视工具和切变工具拉正照片画面

部分照片由于扫描时相片有弯曲,没有完全贴在玻璃平板上,造成画面部分塌缩畸变,挤在一起。利用透视工具和切变工具,可以把它们拉开。比如下图 1 这张黑白老照片,左上角明显缩在一起。用透视工具向上拉伸,再配合裁剪,效果就如下图 2,正常化了。

↓ 图1 左上角畸变

↓ 图2 透视工具优化后

这一步采用工具是 GIMP,没用 Photoshop 是因为没找到这两个工具。

4.4 利用自动色阶工具提高对比对和色彩

相比原相片,我用的扫描仪成像偏暗,还有一层雾。如果扫描仪比较高级,估计无需折腾这一项了。依然是所有照片都要处理,采用 XnConvert 批量操作。

输入页中选择所有照片。

输出页中选择转换后的照片存放目录。由于扫描成像格式为 JPEG,所以输出格式保持一直,并在输出设置中将 JPEG 格式质量调成 98%(至于为什么是 98%,因为 GIMP 中「另存为」时候显示扫描照片质量是这个数)。

动作页中,选择自动色阶和锐化,轻微锐化下,值调到 10。

以上设置好,点击右下角 Convert 按钮,XnConvert 将按动作设置,批量处理照片,转换完成后的照片可在存放目录中找到。

4.5 给黑白照片上色

这个不说了,看过报道好像有能给黑白照片上色的 AI 工具,反正我现在的技术实现不了,纯粹当玩票小目标。

后记

380 张照片,全部扫描处理完,花了将近 20 个小时,挺有成就感。毕竟老照片承载着记忆,既有个人的记忆,更有家人一起的美好回忆。把照片存储一份进电视机里,闲暇时候跟家人,或者亲朋好友来访,一起浏览,话题肯定特别多。

数码照片有了,不意味着相纸照片就没有价值,不需要细心保管了。要知道数码照片只能给予视觉,相纸照片还能使人产生触觉,甚至嗅觉。给人的感觉越多,勾起的回忆,引发的情绪也就越丰富。图像可以复制百遍,可相片只有一张。每张老相片都沉淀着岁月,这是数码照片无法替代的。


欢迎关注微信号:[桃源乡吃桃](kktaoyuanxiang)

修复老相片_将老相片数码化相关推荐

  1. 安卓9 怎么运行老程序_孩子老走神怎么办?9张图教你培养孩子的注意力!

    注意力并非天生的,注意力靠的是后天的培养. 俄罗斯教育家乌申斯基曾精辟地指出:"'注意'是我们心灵的惟一门户,意识中的一切,必然都要经过它才能进来." 注意力是智力的五个基本因素之 ...

  2. 使用AI修复高压缩失真的老视频~~以“机修钳工”教育片为例

    使用AI修复高压缩失真的老视频~~以"机修钳工"教育片为例 概述 原理 步骤 前处理 软件设置 加载原始视频 选择模型 开始修复 后处理 效果对比 外链 概述 笔者从某鱼搞来一些& ...

  3. 帷幕的帷是什么意思_《老酒馆》热播背后:你真的看明白大戏背后的意思了吗?...

    最近热播剧<老酒馆>非常火,里面陈宝国.秦海璐.冯雷.刘桦.程煜.冯恩鹤等人的表演固然精彩,剧情也很有意思,但这场大戏背后的意思却没有多少人看明白. 实际上,整部戏的戏眼就在前两集. 还记 ...

  4. datahub文档_新老DataHub迁移手册

    DataHub服务用户迁移文档 前言 原Odps版内测DataHub(下文统称为老DataHub服务),于2016年11月21日起已经处于维护状态,新版DataHub届时已经开启公测,公测至今已有半年 ...

  5. jvm对象从新生代到老年代_一文搞懂JVM新生代、老年代和永久代

    Java堆是垃圾收集器管理的主要区域,因此很多时候也被称为"GC堆". 从内存回收角度看,由于现在收集器基本都采用分代收集算法,所以Java堆中还可以细分为:新生代和老年代.再细致 ...

  6. 狗蛋(驱动小白)和老王(硬件老司机)关于硬件那点事儿的一次密谈

    引子 "老王,有个bug啊,很紧急啊?" QA急忙反馈到. "什么问题? 老王心里咯噔了下,心想,NND,被QA缠住,看来今晚又得和我的躺椅相依为伴了." &q ...

  7. 数组里面都是人的名字,分割成:例如:老杨|老苏|老邹…”(老杨,老苏,老邹,老虎,老牛,老蒋,老王,老马)

    //数组里面都是人的名字,分割成:例如:老杨|老苏|老邹-"(老杨,老苏,老邹,老虎,老牛,老蒋,老王,老马) string[] names = {"老杨"," ...

  8. 原来PID是在老王头和老斯基的斗争中诞生的

    获取更多好文章: 原来PID是在老王头和老司机的斗争中诞生的 30年前,老王头在国内某十八线小县城的水泥厂做锅炉工.由于水泥厂的环境比较差,工人们工作完都是满身的水泥灰尘,回家前都要在厂子里洗个澡.老 ...

  9. 模拟山羊mmo服务器的位置,模拟山羊mmo老山羊在哪 老羊山位置一览

    模拟山羊mmo老山羊在哪?老羊山又在哪?今天安趣网小编为大家带来的是模拟山羊mmo老山羊在哪 老羊山位置一览.在模拟山羊mmo中,我们有任务是击败老山羊,首先我们要找到老山羊所在的位置老羊山,那么老羊 ...

最新文章

  1. bs和cs架构的区别和优缺点_C/S和B/S两种架构区别与优缺点分析
  2. Objective-C:随机的读取文件中的内容
  3. C++STL的deque容器
  4. OSGI和Spring动态模块–简单的Hello World
  5. 20135202闫佳歆--week 8 实验:理解进程调度时机跟踪分析进程调度与进程切换的过程--实验及总结...
  6. php ffmpeg
  7. 【ABAP系列】SAP ABAP中关于commit的一点解释
  8. biee12c连接hive_BIEE 12c Linux下连接Hadoop Hive
  9. Android Studio 字体大小设置
  10. Q141:PBRT-V3,交点处各种微分的求解(球面,3.2章节)
  11. java---键盘输入,写入到本地硬盘的数据
  12. 电机选型及校核方法总结
  13. Mastik:微体系结构侧信道攻击工具包
  14. 应届生产品助理/经理面试,应当多谈点什么?
  15. 2017服务器cpu性能排行,桌面CPU性能排行榜单 CPU天梯图2017年6月最新版
  16. 【渝粤教育】国家开放大学2018年春季 0553-21T色彩 参考试题
  17. 自律努力有目标的人生有多美
  18. 情感充沛,去体悟生活
  19. python info函数的使用方法_sysinfo函数使用方法
  20. MATLAB-工具箱-如何导出拟合系数?

热门文章

  1. 【kafka】在 Kafka Streams 中启用 Exactly-Once
  2. 【kafka】Kafka Consumer 中的心跳线程有什么作用?
  3. 【IDEA】idea中maven项目Resource目录下的资源文件无法编译
  4. MetaException(message:Hive Schema version 2.1.0 does not match metastore‘s schema version 1.2.0 Meta
  5. android Mediaplayer各种属性和方法简单介绍
  6. elastic search与postgresql的数据同步
  7. 云计算实战系列十三(Linux计划任务)
  8. 构建私有的 CA 机构
  9. java将字符串转小写转大写字母_输入一个字符串,将字符串中的所有大写字母转换为小写字母,所有小写字母转换为大写字...
  10. @Component,@Service等注解是如何被解析的?