MIT FiveK图像转化--DNG到TIFF,TIFF到JPEG
MIT FiveK图像转化--DNG到TIFF,TIFF到JPEG
MIT FiveK数据库是研究图像自动修饰算法会用到的基准数据库,然而那个网页上提供给我们的5000张原始图像的格式为DNG格式(一种raw格式),需要我们自己应用dcraw对图像进行处理;同时,经过专家修饰过的图像被分散到不同的链接下进行下载(下载的爬虫,可以参考这篇博客),而且格式为16位tiff格式,差不多总共两三百G的大小。数据集非常庞大,而且dng格式不利于程序的处理,因此博主希望能够将这些图片全部都转为最为常见的sRGB空间的JPEG格式,下面就介绍具体操作方法。
注:所用的系统为Ubuntu系统
1、应用dcraw将DNG格式转为16位TIFF格式
首先,需要将原始的数据集从本网站上下载下来,将分散到数个文件夹中的DNG图片放入同一个文件夹中,然后对逐个文件应用dcraw来进行处理,转为16位TIFF文件,色彩空间为Pro Photo,shell脚本如下:
chmod a+rwx DNG2TIFF.sh
filelist=$(ls *.dng | tr " " "\?") #获得文件夹中所有的文件的文件名(这一处理可以解决文件名中有空格的问题,读取完整的文件名)
#遍历dng文件,用dcraw进行处理
for file in $filelist
do
dcraw -o - -T "$file" #对图片进行处理,最后路径上加双引号是因为有的路径之间是有空格的,添加双引号可以避免shell将空格认为分割符号
rm -f "$file" #删除原始DNG文件
echo "$file" 'done!'
done
其中主要需要注意的点是,这个数据集中的某些文件(共29个)的文件名中是包含空格的,在使用shell脚本遍历文件名或者访问文件时尤其需要注意这一点。
2、应用ImageMagick将TIFF转为JPEG
ImageMagick可以说是ubuntu系统上面处理图片神器,可以对图像执行的操作非常丰富,感觉就像是命令行版本的photoshop一样。这一部分主要实现的转换为,将16位TIFF图片(Pro Photo色彩空间)转为JPEG(sRGB)。首先需要在TIFF文件夹内新建立一个名为“JPEG”的文件夹,用于放置处理之后的JPEG图片。同上一个转换一样,也需要注意文件名中的空格问题,具体shell脚本如下。
chmod a+rwx TIFF2JPEG.sh
filelist=$(ls *.tiff | tr " " "\?") #获得文件夹中所有的文件
#遍历tiff文件,用ImageMagick进行处理
for file in $filelist
do
file_name=${file%.*}
convert "$file" -profile sRGB.icc JPEG/"$file_name".jpeg #对每一张tiff格式的图片进行处理
echo "$file" 'done!'
done
其中sRGB.icc文件为sRGB的色彩配置文件,可以在这个地址下载 。
MIT FiveK图像转化--DNG到TIFF,TIFF到JPEG的更多相关文章
- matlab中文本文件与图像转化
一 将图片转化为txt文本文件 a=imread('picture.bmp'); //读取picture.bmp图片 b=rgb2gray(a); //由rgb图 ...
- python将图像转化为矩阵
Image.fromarray(matrix).show()
- JPEG图像密写研究(一) JPEG图像文件结构
[转载]转载自http://www.cnblogs.com/leaven/archive/2010/04/06/1705846.html JPEG压缩编码算法的主要计算步骤如下: (0) 8*8分块. ...
- tiff或tif文件的读取
以下是VC下读取TIFF文件的代码 char* szFileName = "K:\\地图\\fujian-DEM\\fujian1.tif"; TIFF* tiff = TIFFO ...
- Flex 加载tiff
gis系统常常要加载tiff,因为好多土地证书,各种文件都是扫描件,如果你是用as来写的前台,怎么加载呢,顺便说下用插件AlternaTIFF也是可以得不过浏览器加载这么多插件是不太好的. 首先TIF ...
- python图像处理(2)图像水印和PIL模式转化
模式转化: PIL模式转化:将图片转化成其他模式 # 我们将image图像转化为灰度图像(python) from PIL import Image img = Image.open('c:\\1.J ...
- matlab各类数据l图像之间的转化
matlab各类数据图像之间的转化 rgb类型转化为二值的步骤例如以下: 1.採用命令im2double将rgb类型转化三维的double >> str='E:\programing\Ei ...
- DNG格式解析
Author:Maddock Date:2015.04.22 转载请注明出处:http://www.cnblogs.com/adong7639/p/4446828.html DNG格式基本概念 DNG ...
- 第一节,初识OpenCV3-图像的读、写、显、格式转化等
之前一直在看深度学习,突然用到了对图像处理的东西,所以过来补充一下OpenCV基础. 就顺便从网上了买了一本OpenCV 3计算机视觉这本书,这本书比较薄,但是目前已经够我用了,在这里就记录一下我的学 ...
随机推荐
- jdk_Windows基础环境配置
JAVA环境配置 windows 系统环境变量配置: JAVA_HOME C:\Java\jdk1.8.0_25 Path %JAVA_HOME%\bin; classpath .;%JAVA_HOM ...
- 用Python写了个下载快手视频的小脚本
最近又重新拾起了,对python的热情. 贴个地址: https://github.com/d1y/lovepack/blob/master/kuaishou.py 前戏说明 因为我近乎癫狂的喜欢一个 ...
- python所有的标准异常类:
异常名称 描述 BaseException 所有异常的基类 SystemExit 解释器请求退出 KeyboardInterrupt 用户中断执行(通常是输入^C) Exception 常规错误的基类 ...
- 01 - zabbix | LLD自动发现
01 - zabbix | LLD自动发现 1. 原理 zabbix支持设置变量,用{#VAR_NAME}来表示.然后有一些系统保留的变量 2. 设置 2.1 交换机电源自动发现 名字写好后进进入 ...
- AntV F2+vue-cli构建移动端可视化视图
AntV F2是蚂蚁金服旗下的一个专注于移动,开箱即用的可视化解决方案,完美支持 H5 环境同时兼容多种环境(Node, 小程序,Weex), 完备的图形语法理论,满足你的各种可视化需求,专业的移动设 ...
- python 22 类与对象
目录 1. 从空间角度研究类 1.1 添加对象的属性: 1.2 添加类的属性: 1.3 类与对象的关系: 2. 类与类直接的关系 2.1 类与类的关系: 2.2 依赖关系 -- 主从之分 2.3 组合 ...
- spring-cloud-kubernetes官方demo运行实战
关于spring-cloud-kubernetes spring-cloud-kubernetes是springcloud官方推出的开源项目,用于将Spring Cloud和Spring Boot应用 ...
- 从入门到入土的JS 随笔day02 新手向
讲讲自增自减和循环语句及三元一次表达式: 一.自增自减实际上就是按照顺序来解读代码, 例如,a++;代表了a先进行了计算,运算完毕后,才进行增加: ++a呢,则是先进行了自增,值加一后再进行运算: 如 ...
- python控制窗口移动(画圆)
import win32con import win32gui import time import math notepad = win32gui.FindWindow("Notepad& ...
- codeforce375div2-D. Lakes in Berland 搜索
Lakes in Berland 题意与解释:这道题就是求图中被围起来的点群,问最少去掉几个点,可以使得孤立的点群数目为K; 因为自己写的代码又长又had bugs. 我自己写的bfs,想着是先染色, ...