vs2015+opencv在xp下使用的问题

工作中使用调用了OpenCV库的dll,在XP系统调用遇到问题。一是无法在XP下使用,dll工程按特定设置编译后可解决;二是在XP下调用时崩溃,查看OpenCV源代码,在delete前加((OutputArrayOfArrays)*contours).release()可解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在工作中使用他人写的一个dll,dll调用了opencv的库,在xp中调用该dll遇到了一些问题,如下:

1、无法在xp下使用

dll工程按以下设置,编译后可在xp下使用:

 

2、在xp下调用时崩溃(win10无此问题)

代码如下:

std::vector<std::vector<cv::Point> > *contours = new std::vector<std::vector<cv::Point> >();

//Mat &pImage

cv::findContours(pImage, *contours, CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE);

......中间代码
    if (contours != NULL)
    {
        delete contours;//崩溃点
        contours = NULL;
    }

查看opencv源代码,发现findContours中第二个参数,有create的动作,但无release动作,故在delete contours前加((OutputArrayOfArrays)*contours).release();即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值