标题:VS2013+MFC编程程序可以运行,但是一个按钮的结果出错
只看楼主
cquwt
Rank: 1
等 级:新手上路
帖 子:41
专家分:2
注 册:2013-12-24
结帖率:69.23%
 问题点数:0 回复次数:1 
VS2013+MFC编程程序可以运行,但是一个按钮的结果出错

程序代码:
// 2个容器来存放图像数据和对应的标签
vector<Mat> images;
vector<int> labels; //作为外部变量定义
void FaceRecognitionDlg::OnBnClickedRecognize()
{
    // TODO:  在此添加控件通知处理程序代码
    images.clear();
    labels.clear();
    pEdtConfidence->GetWindowText(strConfidence);

    try
    {
        dConfidence = atoi((const char *)strConfidence);
    }
    catch (cv::Exception &e)
    {
        MessageBox("置信度请输入整数!");
        return;
    }
    model->set("threshold", dConfidence);
    if (!read_img(images, labels))
    {
        AfxMessageBox("Error in reading images!");
        images.clear();
        labels.clear();
        return;
    }
    if (images.size() < 1)
    {
        MessageBox("This demo needs at least 1 images to work!");
        return;
    }
    //training
    model->train(images, labels);

    bool_detec_reco = true;
    bool_picNum = true;
}

程序可以运行,但是这个按钮的对应函数(如上所示)出错了。
调试到这一句出错了:
//training
    model->train(images, labels);
调试到上面那句时的各个变量的值如下:

出错提示如下:
  0x5DAB77A9 (opencv_core2413.dll) (Faces.exe 中)处的第一机会异常:  0xC0000005:  写入位置 0xFEEEFEEE 时发生访问冲突。
  0x5DAB77A9 (opencv_core2413.dll) (Faces.exe 中)处有未经处理的异常:  0xC0000005:  写入位置 0xFEEEFEEE 时发生访问冲突。
请各位大神帮忙看看呐。。
搜索更多相关主题的帖子: 编程程序 images 
2016-12-27 22:25
zbjzbj
Rank: 12Rank: 12Rank: 12
来 自:郑州
等 级:贵宾
威 望:52
帖 子:620
专家分:3020
注 册:2011-4-22
得分:0 
推测:你使用的dll中的函数出现了往地址0xfeeeeeee写入。这应该不是程序运行时应该的地址。可能程序错误或者参数传递错误,尤其指针指向错误位置。
2017-01-15 22:27



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-473012-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.095810 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved