ERROR: SampleCB() - buffer sizes do not match 解决方法

    xiaoxiao2026-09-22  15

    OpenCV ERROR: SampleCB() - buffer sizes do not match 解决方法

    原因:由于经过采集卡压缩等原因,实际读到的图像流尺寸与原始尺寸不匹配解决方法:手动设置为采集卡压缩后的实际尺寸 VideoCapture cap(摄像机序号); cap.set(CV_CAP_PROP_FRAME_WIDTH, 压缩后的实际宽); cap.set(CV_CAP_PROP_FRAME_HEIGHT, 压缩后的实际高); Mat camFeed; cap.read(camFeed);

    具体事例

    我的电脑直接插入 1 Channel USB Capture 时,即单个接入USB摄像头设备,按OpenCV 默认读取正常,但由于我需要同时接入4个摄像头同时获取图像,我换成了4 Channel USB DVR,一般都附带一个监控软件,需要运行这个四合一监控软件,通过软件的流媒体输出方式供电脑其他程序使用这4个通道的视频信号,然后就出现了这个bug。

    我参考了下方链接中的回答,在读取视频流之前,将VideoCapture 对象cap的像素宽高设置为USB DVR监控软件的输出宽高之后,便可以顺利读取。 参考:http://opencv.yahoogroups.narkive.com/Yc8H2P6w/error-samplecb-buffer-sizes-do-not-match


    转载请注明原文地址: https://ju.6miu.com/read-1312217.html
    最新回复(0)