gpt4 book ai didi

c# - iisexpress.exe 中的 Emgu.CV.CvInvoke 异常

转载 作者:太空宇宙 更新时间:2023-11-03 15:14:19 25 4
gpt4 key购买 nike

我在 Web 解决方案 ASP.NET MVC5 中使用库 Emgu.CV.World 和一组 x86 类。版本 EMGU:3.1.0.2282。

用了一段时间,然后我把项目复制到同一个目录下,改了文件夹的名字,然后开始出现错误:

iisexpress.exe 中的 0x2AF630B1 (cvextern.dll) 处抛出异常:0xC0000005:访问冲突读取位置 0x00000000。

在相同库的 Win Forms 应用程序中实现了相同的功能,它可以正常工作。但是 Web 应用程序总是在这个方法上崩溃:CvInvoke.Threshold ()。

使用 x86、x64 目录,将所有库复制到一个单独的目录中,将应用程序类型更改为任何 CPU,将 x86 更改为 x64,什么都不做。在其他系统(64位)上试过也是一样的。最有趣的是它最初有效,即我的代码没有错误。

我使用的是 IIS Express 10,vs 2015 社区。

请多多指教,谢谢

最佳答案

找到了答案。在最后的重构行中没有注意到错误的原因:imgGray.Dispose();

imageRotate = imgGray.Rotate(-avg, new Gray(255));
}
else
{
imageRotate = imgGray;
}
imgGray.Dispose();

//return imageRotate.Bitmap;
return BlackFilterImage(imageRotate);
}

private static Bitmap BlackFilterImage(Image<Gray, byte> img)
{
UMat resultImg = new UMat();
CvInvoke.Threshold(img, resultImg, 105, 255, ThresholdType.BinaryInv); //Error is here

不幸的是,错误的性质让我糊涂了。

关于c# - iisexpress.exe 中的 Emgu.CV.CvInvoke 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39644213/

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