简体   繁体   English

16位灰度TIFF

[英]16-bit grayscale TIFF

What is the bit-format of a 16-bit grayscale TIFF? 什么是16位灰度TIFF的位格式? I read that only 10 bits actually contain intensity data--is this true? 我读到只有10位实际上包含强度数据 - 这是真的吗? When I try to open a 16-bit TIFF in Matlab using imshow(), the image is totally black, but the same image reduced to 8-bits displays fine. 当我尝试使用imshow()在Matlab中打开16位TIFF时,图像完全是黑色,但同样的图像缩小到8位显示正常。

How many bits are used depends a lot on the camera that took the picture. 使用了多少位取决于拍摄照片的相机。 A 14-bit camera will use 14 of 16 bits, a 10-bit camera will use 10. 14位摄像机将使用16位中的14位,10位摄像机将使用10位。

If you display the image by calling imshow(img) , all will be black if the full dynamic range of the image wasn't used, since imshow will scale to the dynamic range (ie 0 to 2^16-1). 如果通过调用imshow(img)显示图像,如果未使用图像的完整动态范围,则所有图像都将为黑色,因为imshow将缩放到动态范围(即0到2 ^ 16-1)。 If you call imshow(img,[]) instead, which scales the image to min/max, the image displays nicely. 如果你imshow(img,[])调用imshow(img,[]) ,将图像缩放到min / max,图像显示效果很好。

If a TIFF creator is writing a well-behaved TIFF, each channel should be normalized to the full dynamic range of that channel. 如果TIFF创建者正在编写表现良好的TIFF,则应将每个通道标准化为该通道的完整动态范围。 In other words, 16 bits per channel should range from 0-65535, 8 bits per channel should range from 0-255. 换句话说,每个通道16位应该在0-65535之间,每个通道8位应该在0-255之间。

While the number of bits used could be encoded into a tag, there are no baseline tags that encode this. 虽然使用的位数可以编码到标签中,但是没有基线标签可以对此进行编码。 This means that if a 10 bit device doesn't normalize to 16 bits, there is no way for a baseline reader to understand the intent of the image. 这意味着如果10位设备未标准化为16位,则基线读取器无法理解图像的意图。

As a side note, there are other image file formats (Dicom is one) which provide a way to express how many bits per channel are significant. 作为旁注,还有其他图像文件格式(Dicom是一种),它提供了一种表达每个通道有多少位重要的方法。

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

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