如何将 matlab videofilereader 输出转换为 blobanalysis 输入
how to convert matlab videofilereader output for blobanalysis input
我想在单个视频帧中搜索任何视觉斑点。
但是 blobAnalyzer() 不接受来自 VideoFileReader() 的帧。
似乎是从视频帧转换为二进制图像的问题?
错误是:
使用视觉时出错。BlobAnalysis/step
不支持二维以上的数据
对于这个系统对象。
测试错误(第 20 行)
[区域、质心、bboxes] =
obj.blobAnalyser.step( video_frame );
% 获取视频帧:
videoFileLeft = 'handshake_left.avi';
readerLeft = vision.VideoFileReader(videoFileLeft, 'VideoOutputDataType', 'uint8');
video_frame = readerLeft.step();
% 解析 blob:
obj.blobAnalyser = vision.BlobAnalysis('BoundingBoxOutputPort', 真, ...
'AreaOutputPort',正确,'CentroidOutputPort',正确,...
'MinimumBlobArea', 400);
[areas, centroids, bboxes] = obj.blobAnalyser.step( video_frame );
您正在阅读 rgb 视频,但 blobAnalyser 仅支持二进制图像(黑白)。使用 im2bw
进行转换。
我想在单个视频帧中搜索任何视觉斑点。 但是 blobAnalyzer() 不接受来自 VideoFileReader() 的帧。
似乎是从视频帧转换为二进制图像的问题?
错误是: 使用视觉时出错。BlobAnalysis/step 不支持二维以上的数据 对于这个系统对象。
测试错误(第 20 行) [区域、质心、bboxes] = obj.blobAnalyser.step( video_frame );
% 获取视频帧: videoFileLeft = 'handshake_left.avi';
readerLeft = vision.VideoFileReader(videoFileLeft, 'VideoOutputDataType', 'uint8');
video_frame = readerLeft.step();
% 解析 blob: obj.blobAnalyser = vision.BlobAnalysis('BoundingBoxOutputPort', 真, ... 'AreaOutputPort',正确,'CentroidOutputPort',正确,... 'MinimumBlobArea', 400);
[areas, centroids, bboxes] = obj.blobAnalyser.step( video_frame );
您正在阅读 rgb 视频,但 blobAnalyser 仅支持二进制图像(黑白)。使用 im2bw
进行转换。