gpt4 book ai didi

c# - 使用 Emgu 读取图像与将其作为字节数组读取之间的区别

转载 作者:行者123 更新时间:2023-11-30 23:10:16 25 4
gpt4 key购买 nike

我有一个 .png 文件,我做了以下两件事

  1. 将文件作为字节数组读取

    byte[] arr = File.ReadAllBytes(Filename)
  2. 使用 Emgu 读取它,将文件读入图像,然后使用以下方法将位图转换为字节数组。

    Image<Gray,Byte> Img = new Image<Gray,Byte>(Filename);
    byte[] arr = ImageToByte2(Img.Bitmap);


    public static byte[] ImageToByte2(Image img)

    {

    using (MemoryStream stream = new MemoryStream())

    {

    img.Save(stream, System.Drawing.Imaging.ImageFormat.Png);

    return stream.ToArray();

    }

    }

我的字节数组长度不同。我不明白为什么会有差异。请帮忙。

最佳答案

第一个选项读取文件的所有字节,包括文件头,而第二个选项只读取普通图像的字节。

有关 png 的结构和标题的更多信息,请查看此处:https://en.wikipedia.org/wiki/Portable_Network_Graphics

关于c# - 使用 Emgu 读取图像与将其作为字节数组读取之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45463868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com