为什么cv::split在使用QT时崩溃?
我是QT5和openCV的新用户。实际上,我正在尝试用相机拍摄图像,之后我尝试使用cv::split将拍摄的图像分割成3个通道(RGB)。不幸的是,我得到了以下错误 “程序意外完成。 C:\bla_bla_bla.exe崩溃“ 以下是我使用的代码:为什么cv::split在使用QT时崩溃?,qt,opencv,Qt,Opencv,我是QT5和openCV的新用户。实际上,我正在尝试用相机拍摄图像,之后我尝试使用cv::split将拍摄的图像分割成3个通道(RGB)。不幸的是,我得到了以下错误 “程序意外完成。 C:\bla_bla_bla.exe崩溃“ 以下是我使用的代码: CvCapture* capture = cvCaptureFromCAM(CV_CAP_ANY); while(capture) { Mat frame = cvQueryFrame(capture); std::vector&
CvCapture* capture = cvCaptureFromCAM(CV_CAP_ANY);
while(capture)
{
Mat frame = cvQueryFrame(capture);
std::vector<Mat> rgb; // OR std::vector<Mat> rgb(3) ;
if(frame.empty())
{
continue;
}
//Separate the frame to 3 (R,G,B) channels
else
{
cv::split(frame, rgb);
}
}
CvCapture*capture=cvCaptureFromCAM(CV\u CAP\u ANY);
while(捕获)
{
Mat帧=cvQueryFrame(捕获);
std::vector rgb;//或std::vector rgb(3);
if(frame.empty())
{
继续;
}
//将帧分离到3个(R、G、B)通道
其他的
{
cv::分割(帧,rgb);
}
}
注意:同样的代码在visualstudio 2012/2013上运行良好。1)您能在调试中运行它并提供错误描述吗?2) 您应该使用
VideoCapture
,而不是传统的CvCapture
3)平面将是BGR,而不是RGB,您是否仅对该功能有问题,或者openCV根本不可用?Windows@Miki:1)中存在链接问题,调试情绪不正常,因此我没有使用调试情绪。2) 视频捕获也带来了同样的结果:崩溃很好that@Orest赫拉:我想问题出在分割函数上,我还有一个CV函数,它工作得很好。1)太糟糕了。不在调试模式下调试是很困难的:D。另外,为什么它不能很好地工作?2) 好的,但是最好使用视频捕获。你能提供一份报告吗?这个代码对我有用。3) :D