如何从JPG图像中删除嵌入的颜色配置文件?

7
我有一张jpeg格式的照片似乎带有滤镜,无论我使用何种查看器,图像都比应该更暗。我没有意识到jpeg格式可以包含这样的东西,但它似乎必须包含。如何在C#中剥离或忽略调整图像大小时的滤镜? 我也不介意解释一下这是如何发生的。这张图片是由用户提供的,但我不知道如何添加这个滤镜(我没有意识到jpeg格式支持这样的功能)。

2
你的照片含有嵌入式色彩配置文件:http://regex.info/exif.cgi?imgurl=http%3A%2F%2Fi.stack.imgur.com%2FUGvpX.jpg 我不确定如何用 C# 代码移除它;但是像 Photoshop 或 Gimp 这样的照片编辑器可以做到。 - Blorgbeard
我已经将标题更改为使用“颜色配置文件”而不是“过滤器”(我不相信有任何图像格式嵌入实际的过滤器,而许多允许某种颜色配置文件或在BMP的简单情况下 - 调色板将颜色映射到字节索引)。 - Alexei Levenkov
只需使用Photoshop,你编写越多的C#代码,图像就会变得越糟糕。 - Just code
知道问题是解决问题的一半 :) 感谢您的评论,它们帮助我解决了问题(希望如此),即使我无法通过编程从照片中删除它。我不确定是否真的想要删除它。如果他们放置了一个颜色配置文件,我们应该使用它,而不是删除它。 - Brian
你确定JPEG本身嵌入了颜色配置文件吗?你可以使用一些JPEG转储程序来查看你的JPEG流中包含哪些APPn标记吗? - user3344003
除了上面的评论之外,https://photo.stackexchange.com/ 可能是您想要访问以搜索类似问题的网站。 - U. Windl
1个回答

1
使用命令exiftool,执行命令为exiftool -ICC_Profile= photo.jpg
实际上,在执行此操作之前,我已经提取了配置文件(尽管exiftool会创建备份),使用命令exiftool -icc_profile -b -w icc photo.jpg。 这将创建photo.icc。 使用exiftool photo.icc检查后发现该配置文件为广色域。
...
display profile (AdobeRGB):
Profile CMM Type                : KCMS
Profile Version                 : 2.1.0
Profile Class                   : Display Device Profile
Color Space Data                : RGB
Profile Connection Space        : XYZ
Profile Date Time               : 1998:12:01 18:58:21
Profile File Signature          : acsp
Primary Platform                : Microsoft Corporation
CMM Flags                       : Not Embedded, Independent
Device Manufacturer             : KODA
Device Model                    : ROMM
Device Attributes               : Reflective, Glossy, Positive, Color
Rendering Intent                : Perceptual
Connection Space Illuminant     : 0.9642 1 0.82487
Profile Creator                 : KODA
Profile ID                      : 0
Profile Copyright               : Copyright (c) Eastman Kodak Company, 1999, all rights reserved.
Profile Description             : ProPhoto RGB
Media White Point               : 0.9642 1 0.82489
...
Red Matrix Column               : 0.79767 0.28804 0
Green Matrix Column             : 0.13519 0.71188 0
Blue Matrix Column              : 0.03134 9e-005 0.82491
Device Mfg Desc                 : KODAK
Device Model Desc               : Reference Output Medium Metric(ROMM)
...

删除该配置文件通常并不能使其在大多数情况下看起来更好。正确的做法是对图像数据应用档案校正(例如将其从AdobeRGB转换为sRGB)。 也许您想看一下如何在任意像素值集上执行带有ICC配置文件的颜色变换(而不是在图像数据结构上)?
一般来说,使用AdobeRGB配置文件的照片在非宽色域显示器(sRGB)上看起来有点暗淡,并且某些程序无法正确应用这些配置文件(例如Windows 7内置图像查看器)。一般来说,Firefox做得很好,除非使用ICCv4配置文件(正在进行中)。
但是既然您要求了它(以及为了让人们看到差异或不看),这是没有配置文件的照片(顺便说一句:我用宽色域显示器查看了您的图片,所以第一张看起来不错): enter image description here

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接