首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C++ OpenCV 0xC0000005相机读取错误

C++ OpenCV 0xC0000005相机读取错误
EN

Stack Overflow用户
提问于 2013-05-08 20:51:37
回答 1查看 1.9K关注 0票数 0

如前所述,当我试图从相机中获取一个帧时,我得到了一个0xC0000005读取访问冲突错误,这个错误发生在VSFilter.dll上。我尝试过在网上和OpenCV文档中找到不同的示例代码,但仍然会遇到错误。例如,这是我现在使用的代码:

代码语言:javascript
运行
复制
#include <opencv/cv.h>
#include <opencv/highgui.h>

using namespace cv;

int main(int, char**)
{
    VideoCapture cap(0);

    if(!cap.isOpened()) return -1;

    Mat frame;

    namedWindow("Camera",1);

    while(1)
    {
        cap >> frame;
                
        imshow("Camera", frame);

        if(waitKey(30) >= 0) break;
    }

    return 0;
}

在输出中有以下两个错误(第一次机会外泄和未处理的出丑,对意大利语表示歉意):

代码语言:javascript
运行
复制
Eccezione first-chance in 0x000007FEEB115791 (VSFilter.dll) in OpenCV.exe: 0xC0000005: violazione di accesso durante la scrittura del percorso 0x000000000468E000.
Eccezione non gestita in 0x000007FEEB115791 (VSFilter.dll) in OpenCV.exe: 0xC0000005: violazione di accesso durante la scrittura del percorso 0x000000000468E000.

所以代码非常简单,不应该是问题,我想知道为什么错误与VSFilter.dll (VobSub & TextSub filter for DirectShow/VirtualDub/Avisynth)有关?

我使用的是OpenCV 2.4.5和VisulaStudio 2012。

解出

我下载了VSFilter.dll并替换了Windows/system32 32/中的原始版本,现在一切都正常了!

EN

回答 1

Stack Overflow用户

发布于 2013-05-08 21:06:31

有没有可能,你最后被关进了"dll地狱“?

像这样:

  1. 将发布代码链接到调试dll(或反过来)
  2. 将32位代码与64位dll连接起来(或者反过来)
  3. 将vc9代码与vc10 dll( .我希望,你现在明白了)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16449971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档