我是靠谱客的博主 舒适水壶,最近开发中收集的这篇文章主要介绍使用imshow mat 出现 Opencv Error:*** in cv::imshow,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
VideoCapture capture(0);
// capture.open(0);
/*
while ( capture.isOpened())
{
capture >> fram;
fram.convertTo(fram, CV_32FC3);
normalize(fram, fram, 1, 0, CV_MINMAX);
imshow("src", fram);
以上写法会出现错误,原因是这里没有加入判断,当定义的fram为空时的判断
这样的程序在debug时是正确的,自己猜测的原因是,debug时,处理速度会很慢,这是,第一帧也正常了,内存不报错。
正确写法应该是:
Mat fram, prefram, result, fg;
int framNum = 0;
int count = 0;
VideoCapture capture;
int camOpen = capture.open(CV_CAP_ANY);
namedWindow("window", CV_WINDOW_AUTOSIZE);
while (true) {
capture >> fram;
if (!fram.empty()){
在if条件语句中加入自己的处理语句。这样就正确了。。
最后
以上就是舒适水壶为你收集整理的使用imshow mat 出现 Opencv Error:*** in cv::imshow的全部内容,希望文章能够帮你解决使用imshow mat 出现 Opencv Error:*** in cv::imshow所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复