【问题标题】:C++ crash when using OpenCV's Canny function in Windows Server 2012 R2在 Windows Server 2012 R2 中使用 OpenCV 的 Canny 函数时 C++ 崩溃
【发布时间】:2019-01-07 09:43:24
【问题描述】:
while (true)
{
    cap.read(frame);

    if (frame.empty())
    {
        cap.release();
        break;
    }

    cv::cvtColor(frame, frame, CV_BGR2GRAY);
    cv::GaussianBlur(frame, frame, cv::Size(3, 3), 1.8);

    cv::Mat edgeImage;
    cv::Canny(frame, edgeImage, 120, 255, 5);

    imshow("window", edgeImage);
    cv::waitKey(15);
}

带有 Update3 的 Visual Studio 2015。 使用 OpenCV 3.4.3(x64) 构建它 x64。

这是一个很奇怪的错误。

在 Windows7 中运行此应用程序时,就可以了。但在 Windows Server 2012 R2 中,无法正常工作。 应用程序崩溃并死机。

应用程序崩溃后,我在控制面板的事件查看器中找到了日志。

无法访问文件 'C:\Windows\System32\vcruntime140.dll'

但是文件在那里,而且我安装了所有的 VC++ 运行时再分发包(2005,2008,2010,2012,2013,2015)x86 和 x64。

更多,这里有最好的东西。 当我评论 cv::Canny 和应用程序工作得很好! (当然我把下面的 imshow 改成 imshow("window", frame);)

我不知道这个应用程序发生了什么... 请给我任何建议。

由于某些原因,我无法在 Server 2012 R2 中使用 VS2015 对其进行调试

【问题讨论】:

    标签: opencv visual-c++ 64-bit windows-server-2012-r2


    【解决方案1】:

    问题解决了。

    服务器 CPU 是 Intel Xeon Gold 6126。

    我认为 OpenCV 3.4.3 有一个 bug。

    OpenCV 3.4.5 效果很好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多