如何转换matlab videofilereader输出以进行blobanalysis输入

时间:2015-08-18 15:40:59

标签: matlab computer-vision matlab-cvst

我想搜索任何视觉斑点的单个视频帧。 但是blobAnalyzer()不接受来自VideoFileReader()的帧。

似乎是从视频帧转换为二进制图像的问题?

错误是: 使用vision.BlobAnalysis / step时出错 不支持具有两个以上维度的数据 对于这个系统对象。

测试错误(第20行)         [area,centroids,bboxes] =         obj.blobAnalyser.step(video_frame);

%获取视频帧:     videoFileLeft ='handshake_left.avi';

readerLeft = vision.VideoFileReader(videoFileLeft, 'VideoOutputDataType', 'uint8');

video_frame = readerLeft.step();

%Parse blobs:     obj.blobAnalyser = vision.BlobAnalysis('BoundingBoxOutputPort',true,...     'AreaOutputPort',true,'CentroidOutputPort',true,...     'MinimumBlobArea',400);

    [areas, centroids, bboxes] = obj.blobAnalyser.step( video_frame );

1 个答案:

答案 0 :(得分:2)

您正在阅读rgb视频,但blobAnalyser仅支持二进制图像(黑白)。使用im2bw进行转换。