• Vs2010+opencv2.3.1 imread出现异常


    转至:http://www.cnblogs.com/panlonyin/archive/2013/08/14/3257560.html

    问:最近将vs2008换成2010后重新配置环境后,运行时在imread处出现如下错误:draw.exe 中的 0x55f165af 处有未经处理的异常: 0xC0000005: 读取位置 0x676f4c78 时发生访问冲突;不知道什么原因。请大牛指点。

    解决方案:

    这个问题也许可以按以下办法解决:
    要是发生类似“0x01307ef5 处未处理的异常: 0xC0000005: 读取位置 0xffffffff 时发生访问冲突”的问题,可能的原因之一是DLL加载错误(加载版本不对或未成功加载)。以我碰到的这个问题的解决方法为例:

    环境:VS2010+OpenCV 2.3.1,同时还安装了VS2008,所以系统环境变量Path的值会有2个路径:
    C:opencvvc9in;
    C:opencvvc10in;

    在VS2010中,依次点击菜单“调试->选项和设置->调试->输出窗口”在右侧窗口找到“模块加载消息”,将其设置为打开,这样在输出窗口的下拉框“显示输出来源”才会有“调试”选项。然后在出问题的代码行设置一断点,运行程序至断点,在输出窗口的下拉框“显示输出来源”选择“调试”,会看到加载了那些DLL,当出现了这种访问冲突问题,我发现我本来打开的是VS2010,却发现其加载的是VC9in下的DLL,这显然是错误的,由于装了多个版本的VS,导致路径混乱了。所以我在用VS2010时,就将“C:opencvvc9in;”删除,再注销电脑重启即可。

    另外,需要注意的时,如果在Release版时,未将debug版本的opencv_core231d.dll切换至opencv_core231.dll,也会出现这种访问冲突的问题。反之,也会出现类似问题。

    这是我在网上找的方法,但是我没试,我只是在debug模式下将opencv_calib3d231d.lib 所有的类似库d去掉变为opencv_calib3d231.lib就可以用了。具体为什么现在没时间去求索,忘有人知道的告诉一声

  • 相关阅读:
    Mysql添加用户与授权
    php导出数据到csv
    mysql导入数据和导出数据
    null在mysql中的不同表现
    乌班图安装Lnmp环境
    php框架路由美化后提示No input file specified
    cookie删除失效问题
    MongoDb安装
    MongoDb简介
    位置索引介绍
  • 原文地址:https://www.cnblogs.com/HIT-wyy-BJTU/p/3485339.html
Copyright © 2020-2023  润新知