ICC色彩校正

當前要做一件事情,根據色彩板生成ICC文件,然後對圖像進行色彩校正。什麼是ICC文件呢?
ICC文件實際上是爲了對色彩進行特徵管理,而出的一個規範。該規範有一系列的固定格式,主要用於色彩管理。這裏就涉及到色彩空間的概念,也就是一幅圖像可以由不同的色彩空間表示。

色彩空間

所謂色彩空間,即一定的色彩範圍,這是一種色彩模型。sRGB、AdobeRGB、ProPhotoRGB、CMYK等都是不同的色彩空間。它們都以可見光譜爲基礎,但分別包含不同的色彩範圍。
在這裏插入圖片描述
具體可參考文章:什麼是sRGB、AdobeRGB和CMYK色彩空間?

ICC文件格式

可以通過軟件 ICC Profile Inspector 進行查看,在路徑 C:\Windows\System32\spool\drivers\color 下有很多預設好的ICC文件,我這裏打開一個AdobeRGB1998.cc 爲例
在這裏插入圖片描述

左側顯示的是ICC文件的頭部信息,其中Color Space爲 RGB . 右側爲一些Tag 標籤列表。具體的格式可以閱讀 ICC特徵文件格式和信息讀取

利用ICC文件進行空間轉換

我這裏用.net 文件進行處理。圖像庫使用ImageMagic的.net 版本。 具體代碼如下:

// 定義ICC文件
ImageProfile imageProfile = new ImageProfile("icc2", @"C:\Windows\System32\spool\drivers\color\Canon EOS 700D CCPP C1-111.icc");
            
 using (MagickImage image = new MagickImage(@"E:\SJDAID\色彩校正\色卡_CMYK.jpg"))
   {
       //var colorProfile = image.GetColorProfile();
       // 加載ICC色卡
       image.AddProfile(imageProfile);
       // 配置要轉換的顏色空間
       image.AddProfile(ColorProfile.sRGB);
       // 保存色彩校正後的圖片
       image.Write(@"E:\SJDAID\色彩校正\色卡dst.jpg");
   }

在這裏插入圖片描述 處理前後對比

參考:
[1] http://secai.h.baike.com/article-28780.html#3
[2] https://stackoverflow.com/questions/18914919/how-to-set-profile-using-magick-net-in-the-same-way-using-image-magick/18918798#18918798
[3] https://archive.codeplex.com/?p=magick
[4] https://www.docin.com/p-1349271474.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章