opencv多路视频采集问题

我目前用鑫安的USB四路视频采集卡进行开发,我想分别采集到每一个通道的视频数据。但我用opencv的cvCreateCameraCapture函数打开相机时,发现图像是下边图示这样的。想请教一下,有没有什么办法将这两路视频信号分开?图片说明

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
多路视频采集问题,急!
我目前用VC++做一个视频采集程序,机子上插两块视频采集卡(bt878),每块卡上接一个摄像头,希望程序能够同时采集两路图像。 rn我用VFW来做,但始终只能采集到1路,请大家帮忙啊! rn具体情况是: rn调用capGetDriverDescription()时可以取到有两个Device rn但是调用capDriverConnect(m_hWndVideo, Index)时,Index 无论选0或1,都只能连上第1块卡 rnrn请问大家有什么好方法吗!rnrn
DirectShow实现多路视频采集问题
我用一块8路的视频采集卡采集视频,利用DirectShow实现的,原始的采集分辨率是350*288可以满足8路同时采集,显示也没问题,但我将采集分辨率改为720*288时,同时采集并显示时,最多只能同时正常的显示5路视频,打开第6路时,显示的视频就上下抖动,邱高手指点该如何解决,分不多,请谅解
directshow多路视频采集
应用directshow.net在vs2008环境下实现4路视频的预览。有一定参考价值
求教多路视频采集,急!
我目前做一个视频采集程序,机子上插两块视频采集卡(bt878),每块卡上接一个摄像头,希望程序能够同时采集两路图像。rn我用VFW来做,但始终只能采集到1路,请大家帮忙啊!rn具体情况是:rn调用capGetDriverDescription()时可以取到有两个Devicern但是调用capDriverConnect(m_hWndVideo, Index)时,Index 无论选0或1,都只能连上第1块卡
V4L的多路视频采集
我在s3c2410上做多路摄像头数据采集,使用servfox做服务器,但是servfox只能采集一个摄像头(多于一个设备时,会出现"USB Schedule overrun"错误,而这个错误似乎还没有好的解决办法),怎么设计一个多路的轮流采集程序?
opencv视频采集
使用c++结合opencv通过摄像头采集视频
OpenCv视频采集
OpenCv视频采集..
关于DirectShow的多路摄像头视频采集
我在graphedt.exe里的一个GRF文件里同时建立三条不同的用USB摄像头采集视频并预览的链路(有三个不同的USB摄像头)rn[img=http://hi.csdn.net/attachment/201008/21/3199941_1282358599rf78.jpg][/img]rn但在运行的时候,RUN失败。rn[img=http://hi.csdn.net/attachment/201008/21/3199941_1282358599fv8X.jpg][/img]rnrn然后我又分别建了两个GRF文件,第一个GRF文件同时建立两条用USB摄像头采集视频并预览的链路rn[img=http://hi.csdn.net/attachment/201008/21/3199941_1282358826Zd24.jpg][/img]rn第二个GRF文件只建立一条用USB摄像头采集视频并预览的链路rn[img=http://hi.csdn.net/attachment/201008/21/3199941_1282359137yOO6.jpg][/img]rn如果只运行第一个GRF文件,不运行第二个GRF文件,第一个GRF文件的链路都能成功RUN;如果只运行第二个GRF文件,不运行第一个GRF文件,第二个GRF文件的链路也能成功RUNrn但同时运行的时候,第一个GRF文件的链路都能成功RUN,第二个GRF文件的链路就RUN失败rnrnrn最后我又分别建了三个GRF文件,每个GRF文件分别只建立一条用USB摄像头采集视频并预览的链路rnrn运行的时候,先运行的GRF文件的链路都能成功RUN,最后GRF文件的链路还是RUN失败rnrnrn请高手们指点,这到底是怎么回事啊!rn
Windows10+vs2017简单的视频采集:OpenCv
简单的视频采集(OpenCV3.4.1+vs2017+Windows10) 相关vs2017+opencv3.4.1+Windows10的配置,相关大神已经说明了 (第一次写,将就一下) #确定相关准备工作已经做好 #相关代码 #include"pch.h" #include “highgui.h”//包含OpenCV库头文件 #include “cv.h” #include<openc
opencv视频采集封装qml
这段时间由于项目要做银行卡识别,所以在很早以前就开始了解opencv了。项目前期是用qml搭建的界面,所以这里最好 能封装成qml控件。我们都知道qml是c++的扩展,opencv原本就是用c++实现的,所以这个并不是很难。 qml绘图的基元素是Item,Item是由QuickItem实现的。所以这里我们应该从QuickItem入手。为简单易用,我写成了qml插件 的形式。 第一步:新
opencv视频采集程序
利用opencv编程,控制摄像头采集视频。
VC6.0 OpenCV 视频采集
VC6.0下采用OpenCV1.0实现摄像头视频采集功能
基于opencv和mfc的视频采集
本代码实在vs2012平台下实现了基于opencv和mfc的视频采集,设计出来人机交互界面
基于opencv摄像头视频采集
自己编的基于opencv的摄像头视频获取,基于MFC的界面程序,在VC6.0上编译通过,并能成功运行。
opencv视频采集函数
opencv相关的视频采集函数,有几种常用的函数,实用性强!
opencv双摄像头的视频采集
基于opencv的双usb摄像头的视频采集程序,供下载参考学习!
基于TMS320DM642的多路视频采集处理板卡的硬件设计
基于TMS320DM642的多路视频采集处理板卡的硬件设计,很好地学习资料,你值得一看!
视频采集的问题
大家好!我想用通过DirectShow来使得摄像头采集到yuv格式的数据,然后再对yuv格式的数据编码。rn然而,不知道哪里有例子么?rn在DirectShow里有个StillCap的例子,由于它用Grabber,采集得到的图像是BMP格式的。rn我想知道,除了把BMP格式转化为YUV这个办法外,有没有别的办法呢?
视频采集问题
大家好,麻烦做过视频采集的朋友给点视频采集的开发经验rn1、价格在1000以内,用什么视频采集卡比较好?要求清晰度高,要比天敏SDK2000好rn2、要求可以局部采集视频,也就是说可以采集画面的一部分,对计算机硬件要求低,应该使用什么技术好?DShow还是VFW?本人做了一个DShow的程序,现在碰到两个问题,一个是很多采集卡都不支持DShow,需要自己写Source Filter,另外在压缩视频时占用CPU资源高,不知道是不是我的实现方法有问题。VFW看过一些例子和资料,都没有可以设置视频源采集范围的(局部采集)。希望大家能给写建议,非常感谢rn
视频采集 问题
开始录像 的时候 鼠标就是忙碌的状态。rnrn这样在点击 停止录像 的时候(鼠标还是忙碌状态)程序就没反应了 “没响应了”rn rn点击2次 程序才反应过了 。rnrn这个问题如何解决????
用opencv对基于CCD的摄像视频采集
想对CCD采集到的视频进行截一帧图并保存到当前目录下,编译通过,但运行出现下面的错误rn[img=https://img-bbs.csdn.net/upload/201404/27/1398564320_16138.png][/img]rn安ctrl+F10发现在 sprintf(filename,"picture%d.jpg",count++);访问不到MSVCRTD.DLL[img=https://img-bbs.csdn.net/upload/201404/27/1398568202_3350.png][/img],急求帮忙解决rn代码如下:rn[code=c]rn IplImage* pImg=NULL;rn CvCapture* cap=cvCaptureFromCAM(0);rn char* filename="";rn static int count=0;rn pImg=cvQueryFrame(cap);rn sprintf(filename,"picture%d.jpg",count++);rn cvNamedWindow("Camera",CV_WINDOW_AUTOSIZE);rn cvShowImage("Camera",pImg);rn while(cvWaitKey(300000)==13)rn rn break;rn rn cvSaveImage(filename,pImg); rn cvReleaseCapture(&cap);rn cvDestroyAllWindows();[/code]
基于QT5的OpenCV摄像头视频采集并显示
基于QT开发的使用OpenCV进行摄像头视频采集,并用qt实现摄像头图像的刷新显示。
基于openCV的视频采集及灰度处理源代码
本代码以vs2008和opencv作为平台,实现了普通pc的视频采集及灰度处理等功能。
基于opencv的视频采集滤波角点检测目标跟踪
基于opencv的视频采集滤波角点检测目标跟踪 ,通过opencv 函数打开摄像头,进行运动目标检测。
【Python——opencv篇】图像显示、视频采集、图像处理
系统环境:win7旗舰版、  版本:python3.5.6 、opencv 3.2.0 关于opencv_python库的安装,可浏览之前的博客,此处不再赘述。 1.hello,opencv import cv2 as cv img=cv.imread("qie.jpg") #读取图像 cv.imshow("who",img) cv.waitKey(0) cv.destroyAllWin...
【嵌入式】基于opencv的人脸视频采集及实时检测
目标: (1)在windows下使用opencv编程,用摄像头采集一段人脸表情视频和挥手手势短视频,并保存下来; (2)在树莓派上基于opencv(c/c++)完成对视频中人脸的检测, a)对检测出的人脸画一个矩形框或圆圈, b)对此人脸区域进行模糊处理。 (一)调用摄像头采集视频 环境:VS2017+opencv3.4.1 在vs2017下创建项目并引入空项目Project1为其添加一个t...
OpenCV图像视频采集 DirectShow 64位32位库
包含DirectShow 的依赖文件和库,64位、32位均有,以及CameraDS.h,CameraDS.cpp。用于基于opencv的摄像头/相机图像、视频采集程序,或将原X86平台程序移植至X64平台。 实践发现此DirectShow +CameraDS方法相比OpenCV自带videocapture 类在速度上快得多。
基于opencv的use摄像头视频采集程序
基于opencv的use摄像头视频采集程序,喜欢的可以下载看看哦,也许有帮助
基于TMS320DM642的多路视频采集处理板卡的硬件设计与实现
基于TMS320DM642的多路视频采集处理板卡的硬件设计与实现
视频采集与处理方法 视频采集与处理方法
视频采集与处理方法 视频采集与处理方法 视频采集与处理方法
视频采集
高手们rn请指教怎样从视频卡上采集视频保存到硬盘
视频采集?
我现在用视频采集卡的demo里面带的例程,他用到了Tcawnd类,运行时报我的delphi中无这个类,我应该怎么不上这个类,好像是在capwndlib_tlb单元中,谢谢!
VLC视频采集问题
使用VLC采集视频,由于采集到的是264压缩后的数据rnVLC播放不了,调试信息: EnumDeviceCaps: input pin media: unsupported format (video H264)rnVLC本身可以264编码解码,不能直接接受2664数据解码吗??
vfw视频采集问题
小弟在用VFW库做视频采集的时候遇到两个方面的问题 rn一方面是 用其捕捉出来的BMP图片 打开时显示绘图失败 rn代码如下rn[code=C/C++][/code]rnRet = capDriverConnect(m_hWndVideo, m_ValidDriverIndex[DriverIndex]);rnif (Ret)rn rncapGetVideoFormat(m_hWndVideo,(PBITMAPINFO) &m_BitmapInfoHeader,sizeof(m_BitmapInfoHeader));rnm_BitmapInfoHeader.biBitCount = 12;rnm_BitmapInfoHeader.biWidth = 352;rnm_BitmapInfoHeader.biHeight = 288;rnm_BitmapInfoHeader.biSizeImage = 0;rnm_BitmapInfoHeader.biCompression = mmioFOURCC('I','4','2','0');rncapSetVideoFormat(m_hWndVideo,(PBITMAPINFO) &m_BitmapInfoHeader,sizeof(m_BitmapInfoHeader));rnrncapCaptureGetSetup(m_hWndVideo,&CapParms,sizeof(CapParms));rnCapParms.fAbortLeftMouse = FALSE;rnCapParms.fAbortRightMouse = FALSE;rnCapParms.fYield = TRUE;rnCapParms.dwRequestMicroSecPerFrame = 1000000/25;rnCapParms.fCaptureAudio = FALSE;rnCapParms.wPercentDropForError = 100;rnCapParms.dwAudioBufferSize = 2048;rnCapParms.AVStreamMaster = AVSTREAMMASTER_NONE;rncapCaptureSetSetup(m_hWndVideo,&CapParms,sizeof(CapParms));rnrnrn捕捉的函数如下 是基于文件对话筐保存文件的。rnelse if (stricmp(Ext,".bmp") == 0)rn rn BITMAPINFO *Bitmap = NULL;rn BITMAPFILEHEADER bfh;rnrn ImageProc.CaptureDIB(&Bitmap,0,&Length);rnrn if (Bitmap)rn rn File.Open(Filename,CFile::modeCreate |rn CFile::modeWrite |rn CFile::shareDenyNone |rn CFile::typeBinary);rnrn bfh.bfType = 0x4d42; // 0x42 = "B" 0x4d = "M"rn bfh.bfSize = (DWORD) Length + sizeof(BITMAPFILEHEADER);rn bfh.bfOffBits = (DWORD) sizeof(BITMAPFILEHEADER) +rn sizeof(BITMAPINFOHEADER) +rn Bitmap->bmiHeader.biClrUsed * sizeof (RGBQUAD);rn bfh.bfReserved1 = 0;rn bfh.bfReserved2 = 0;rnrn File.Write(&bfh,sizeof(bfh));rn File.Write(Bitmap,Length);rn File.Close();rnrn Ret = TRUE;rnrn delete Bitmap;rn rn rn这段程序捕捉到的图片文件是有数据的 但是打不开。rnrn2就是利用回掉函数把捕获到视频帧的数据拼接起来 保存到一个文件中去 最后把文件的后缀改成AVI格式的 结果用暴风阴影打不开 如果用库里带的capFileSaveAs(m_hWndVideo, Filename);函数保存是可以正常播放的 对比了数据 在文件头和文件尾部分不同 其他都相同 ,假如这样的情况下 我在回掉函数中对每帧数据进行压缩处理 如何才能达到一个可以正常播放的文件?rn回掉的测试函数如rnstatic LRESULT CALLBACK StreamCallbackProc(HWND hWnd, LPVIDEOHDR lpVHdr)rnrnrn CVFWImageProcessor *VFWObj = (CVFWImageProcessor *) capGetUserData(hWnd);rn LRESULT Ret = TRUE;rn int result = 0;rn// static int i = 0;rn// i++;rn// FILE *handle = fopen("D:\\eee1.avi","w+");rnrn if(lpVHdr->dwFlags & VHDR_DONE)rn rn CSingleLock ImageLockObj(&VFWObj->m_ImageProtect, TRUE); rn if(lpVHdr->lpData)rn rn// if(i == 1)rn fwrite(lpVHdr->lpData,1,lpVHdr->dwBufferLength,VFWObj->m_filehandle);rn// else if(i == 2)rn// fwrite(lpVHdr->lpData,1,lpVHdr->dwBufferLength,handle);rn rn ImageLockObj.Unlock();rn rn if(handle)rn fclose(handle);rn return Ret;rnrn 请各位知情大侠 给于指点 在这里非常感谢拉!
Directshoow 视频采集问题
我 使用 DIRECTSHOW 写的视频采集程序 ,用笔记本的摄像头可以,外接雷电摄像头的时候,可以保存一段时间的录像,但录像是黑的没有画面 。经调试hr=ICGB->RenderStream(&PIN_CATEGORY_PREVIEW,&MEDIATYPE_Video,pBaseFilter,NULL,NULL);这句返回的是262782rn怎么解决啊?在线急等~请大神们帮帮忙~rnrn源代码rn hr = InitCaptureGraphBuilder(&IGB,&ICGB);rn //创建系统硬件设备列表,枚举视频设备rn hr = CoCreateInstance(CLSID_SystemDeviceEnum, NULL, CLSCTX_INPROC_SERVER,IID_ICreateDevEnum, (void **)&pSysDevEnum);rn //创建CLSID_VideoInputDeviceCategory类型的硬件设备列表rn hr = pSysDevEnum->CreateClassEnumerator(CLSID_VideoInputDeviceCategory, &pEnumCat, 0);rn if (hr == S_OK) rn rn ULONG cFetched;rn //是否检测到了符合特定类型的硬件设备,将检测到信息返回给pMonikerrn while(pEnumCat->Next(1, &pMoniker, &cFetched) == S_OK)rn rn //如果检测到了符合特定类型的硬件设备,就生成绑定到特定类型设备的filterrn //hr=pMoniker->BindToStorage(0,0,IID_IPropertyBag,(void**)&pPropBag);rn hr=pMoniker->BindToObject(0,0,IID_IBaseFilter,(void**)&pBaseFilter);rn hr= IGB->AddFilter(pBaseFilter,L"Capture Filter");rn //查询指针是否支持某类接口,实现filter的只能连接,此处默认此filter为一个render filterrn hr=ICGB->RenderStream(&PIN_CATEGORY_PREVIEW,&MEDIATYPE_Video,pBaseFilter,NULL,NULL);rn // hr=ICGB->RenderStream(&PIN_CATEGORY_PREVIEW,&MEDIATYPE_Interleaved,pBaseFilter,NULL,NULL);rn //保存rn hr = ICGB->SetOutputFileName(&MEDIASUBTYPE_Avi, (LPCOLESTR)strCurrPath, &pMux, NULL); rn // hr = ICGB->SetOutputFileName(&MEDIASUBTYPE_Avi, strCurrPath, &pMux, NULL); rn hr = ICGB->RenderStream(&PIN_CATEGORY_CAPTURE, &MEDIATYPE_Video,pBaseFilter, NULL, pMux);rn //是否支持视频窗口,若支持则可以使用pWindow指针访问IVideoWindow接口内的函数rn hr=IGB->QueryInterface(IID_IVideoWindow,(void**)&pWindow); rn hr=IGB->QueryInterface(IID_IMediaControl,(void**)&pControl);rn /*hr = pWc->GetNativeVideoSize(&pWidth, &pHeight, NULL, NULL); rn RECT rcSrc, rcDest;rn SetRect(&rcSrc,0,0,pWidth/2, pHeight/2);rn GetClientRect(&rcDest);rn SetRect(&rcDest, 0, 0, rcDest.right/2, rcDest.bottom/2);rn hr=pWc->SetVideoPosition(&rcSrc, &rcDest); */rn pControl->Run();rn rn //视频窗口的所有者是hWnd窗口,即此窗口将显示在hWnd窗口之上rn pWindow->put_Owner((OAHWND)hWnd);rn ////设置视频窗口的样式rn pWindow->put_WindowStyle(WS_CHILD);rn //捕获视频窗口的宽度和高度rn pWindow->get_Width(&pWidth);rn pWindow->get_Height(&pHeight);rn ////设置视频窗口的位置,大小rn pWindow->SetWindowPosition(0,0,pWidth,pHeight);
v4l2 视频采集 监控 问题
我按照网上的视频采集步骤做好内存分配后,进行到处理采集数据开始录制时出现问题,具体如下:rnrn// 开始录制rn enum v4l2_buf_type type = V4L2_BUF_TYPE_VIDEO_CAPTURE;rn ret = ioctl( camerafd, VIDIOC_STREAMON, &type);rn if (ret < 0)rn rn printf("VIDIOC_STREAMON failed (%d)\n", ret);rn return ret;rn rnrn // Get framern ret = ioctl( camerafd, VIDIOC_DQBUF, &buf);rn if (ret < 0)rn rn printf("VIDIOC_DQBUF failed (%d)\n", ret);rn return ret;rn rnrn就是执行到ret = ioctl( camerafd, VIDIOC_DQBUF, &buf);这句时返回的是-1,即VIDIOC_DQBUF失败。rn请问有哪位大侠知道这是什么原因呢?rnrnrn随便问一下,当视频采集好后,如何使用Qt让图像实时显示出来呢?就是做成实时监控那样
关于视频采集的问题
我需要开发一个接受视频采集卡输入的程序,具体要求是,要能够rn让采集卡的输入显示到我程序的一个窗体的指定区域。这个如何可以实现rn,又无通用的控件或Dll文件可以实现它。
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池