MFC + Opencv 下面调用HoughCircles 报错

在用MFC配合opencv 开发界面时,调用HoughCircles  函数会报错

0x76ECE43E (ntdll.dll) (AFTESTTOOL.exe 中)处有未经处理的异常:  0xC0000005:  读取位置 0x5352DBCA 时发生访问冲突。

网上找了一个下午没找到类似的问题的解决方法,就只能自己去重写Opencv这部分的源码,在重写代码过程中,发现造成这个问题的原因是函数

static void seqToMat(const CvSeq* seq, OutputArray _arr)


对这个函数里面的源码 重写一份 


circles.resize(seq->total);
if( seq && seq->total > 0 )
    {
        //_arr.create(1, seq->total, seq->flags, -1, true);
       // Mat arr = _arr.getMat();
cvCvtSeqToArray(seq, &circles[0]);
    }

这样改了之后就没有出现这个问题


你可能感兴趣的:(opencv,mfc,界面)