图像的Byte[]表示实际上意味着什么

本文关键字:实际上 意味着 什么 表示 Byte 图像 | 更新日期: 2023-09-27 18:24:38

我将一个1像素的图像加载到位图中,然后将其转换为字节[]

           _Image = "test.jpg";
            Bitmap testImage = new Bitmap(_Image);
            ImageConverter converter = new ImageConverter();
            byte[] byteTestImage =  (byte[])converter.ConvertTo(testImage,typeof(byte[]));

单个像素具有RGB值(25511625)。这些中的每一个可以由一个字节来表示,所以我假设byteTestImage将与此相对应。但是,byteTestImage总共有635个元素。

这些字节和1像素图像之间的关系是什么?

图像的Byte[]表示实际上意味着什么

您加载的文件是一个JPG。它有某些附加信息(宽度、高度、EXIF数据),而不仅仅是颜色。看看https://en.wikipedia.org/wiki/JPEG

尝试在十六进制编辑器中打开它。你甚至可以阅读关于用来拍摄它的相机的信息。

位图中的单个像素不总是RGB格式。这完全取决于格式。你可以有一个alfa组件,你可以有像素矩阵所指的调色板,等等。。。

检查:位图格式