标签: c# c++ visual-studio-2010 image
整整一个月我一直试图找出如何加载cmyk图像(8位tiff)并进行UCA,UCR,GCR转换。
我知道这个转换的公式,但我有一个问题是用C ++或C#加载cmyk图像。
我的计划是逐个像素地操纵图像并更改该像素的每个值C,M,Y,K,最后将更改的图像保存为8位tiff cmyk图像。所以基本上我想要遍历每个像素,更改cmyk值,并保存图像。
我很难找到并安装这样的C#或C ++库,而我正在使用Visual Studio Express 2010。
我可以使用哪些库来加载这些图像?
答案 0 :(得分:2)
libtiff可让您操作TIFF文件。另请参阅使用Visual Studio构建libtiff的this答案。
您需要使用TIFFReadScanline逐行读取图像,以避免库转换为RGB。开源tifftopnm实用程序执行此操作;它的来源是here - 它在获取数据后使用pick_cmyk_pixel将数据转换为RGB,但自然你可以替换自己的逻辑。
TIFFReadScanline
tifftopnm
pick_cmyk_pixel
答案 1 :(得分:0)
EMGU是opencv(c ++)的c#包装器,其中任何一个都可以轻松使用和操作Tiff文件。它们将允许您更容易地访问像素并使用高度优化的代码。由于这些是专用的图像处理库,因此它们可以让您对图像进行更多操作,而无需担心RGB转换或读取文件等。
希望他们帮忙,
干杯 克里斯