【问题标题】:"Parameter is not valid" when creating a bitmap创建位图时“参数无效”
【发布时间】:2017-09-12 18:24:45
【问题描述】:

我正在创建一个EmguCv Image object,然后检索它的字节并尝试创建一个位图。这是我的代码

Image<Bgr, byte> myImg = new Image<Bgr, byte>("C:filePathToPng");
byte[] mybytes = myImg.Bytes; //This does NOT work
// byte[] m1bytes = File.ReadAllBytes(@"C:filePathToPng.png");    This does work
using (var stream = new MemoryStream(mybytes))
using (var bitmap = new Bitmap(stream)) //PARAMETER IS NOT VALID HERE
{
....

但是我收到了描述中的错误。

任何有关如何解决此问题的建议都会很棒

【问题讨论】:

  • 可能在将位图转换为base64字符串时出现错误:见How to convert Bitmap to a Base64 string?
  • 这看起来很有希望。一瞬间
  • 所有三个建议都不起作用:(
  • 您是否尝试过在 vs 中进行单步调试以查看代码失败的确切代码行?
  • Bitmap(Stream) 构造函数要求流提供以编解码器支持的格式之一存储的有效图像。像 PNG、JPEG、BMP 文件等。所以绝对不是 emgu 图像中的原始字节。很多现有的关于如何将图像转换为位图的帖子。

标签: c# arrays base64 restsharp


【解决方案1】:

从 EmguImage 创建位图不起作用。选择将图像保存到磁盘,读取所有字节然后创建位图

【讨论】:

    猜你喜欢
    • 2011-11-30
    • 2011-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多