繁体   English   中英

使用C#将14位图像转换为16位TIFF

[英]Convert 14-bit image to 16-bit TIFF using C#

我有一个带14位图像(640 x 512)的缓冲区。 我需要将此图像另存为16位TIFF。

因此,每个像素占用2个字节,我可以像这样转换为灰度(8位):

(buffer[index] | buffer[index + 1] << 8) & 0x3FFF

(例如, index是像素数)。

据我了解,我可以使用位图轻松地将8位图像另存为BMP:

bmp.Save("c:\\button.gif", System.Drawing.Imaging.ImageFormat.Bmp);

但是我不知道如何将其转换为16位TIFF。 我应该将8位转换为16还是将14位转换为16? 如何?

有人告诉我,我必须形成一些TIFF标头并将图像数据添加到此标头中。 是真的吗 有这个例子吗? 或一些库来自动执行此过程。

您可以使用LibTiff .NET将图像保存为TIFF格式:

LibTiff .NET

要将14转换为16位,请将每个像素(2个字节)乘以4。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM