Computer vision 提取在视频中生成向量x和y的点

Computer vision 提取在视频中生成向量x和y的点,computer-vision,motion-detection,matlab-cvst,opticalflow,Computer Vision,Motion Detection,Matlab Cvst,Opticalflow,此代码是计算机视觉系统工具箱的一个示例,它生成光流的运动矢量。奇怪的是,从每个视频帧中提取具有构成这些向量的坐标点的数组[x,y] videoReader=vision.VideoFileReader('videoname','ImageColorSpace','Intensity',... 'VideoOutputDataType','uint8'); converter = vision.ImageDataTypeConverter; opticalFlow = vision.Optica

此代码是计算机视觉系统工具箱的一个示例,它生成光流的运动矢量。奇怪的是,从每个视频帧中提取具有构成这些向量的坐标点的数组[x,y]

videoReader=vision.VideoFileReader('videoname','ImageColorSpace','Intensity',...
'VideoOutputDataType','uint8');

converter = vision.ImageDataTypeConverter;
opticalFlow = vision.OpticalFlow('ReferenceFrameDelay', 1);
opticalFlow.OutputValue = 'Horizontal and vertical components in complex form';
shapeInserter = vision.ShapeInserter('Shape', 'Lines', 'BorderColor',...
'Custom','CustomBorderColor', 255);
VideoPlayer = vision.VideoPlayer('Name','Motion Vector');

videoInfo    = info(videoReader);
videoPlayer  = vision.VideoPlayer('Position',...
[100 100 videoInfo.VideoSize(1:2)+30]);

while ~isDone(videoReader)
frame = step(videoReader);
im = step(converter, frame);
of = step(opticalFlow, im);
lines = videooptflowlines(of, 20);
if ~isempty(lines)
   out = step(shapeInserter, im, lines);
    step(videoPlayer, out);
end
end

release(videoPlayer);
release(videoReader);

于是谷歌搜索了videooptflowlines=function(f,20);生成光流线的坐标点。我试图在命令窗口中放置“行”,等待返回包含此数据的数组,但显然不是预期的数组。相对于此矩阵,运动矢量存储在的中,这是一个二维复数数组。实部包含x坐标,虚部包含y坐标