我正在尝试使用不再支持的MATLAB调用
更新旧代码。 opticalFlowClass = vision.OpticalFlow('OutputValue', ...
'Horizontal and vertical components in complex form', 'Method', method);
如呼叫所示,以复杂形式输出M x N矩阵。 当前通话,例如
opticalFlowClass = opticalFlowHS;
flow = estimateFlow(opticalFlowClass, video);
输出带有组件的流对象
flow.Vx
flow.Vy
flow.Magnitude
flow.Orientation
由于代码中其他地方的依赖性,并且为了避免完全重写,我想使用新调用中的组件以旧调用的复杂形式形成矩阵。但是,我找不到任何文档说明如何创建复杂表格。我的问题是
复杂表格的结构是什么,以及如何根据组件和方向创建的?
任何指向旧文档的链接对此进行解释,将不胜感激。
编辑:我应该补充一点,我推测
Flow = complex(Vx,Vy),
但我对此不支持
答案 0 :(得分:0)
从文档中不清楚输出选项的确切含义。如果您有兴趣,可以在以下位置访问旧版文档。
https://www.mathworks.com/help/releases/R2015a/vision/ref/vision.opticalflow-class.html
通过未公开的videooptflowlines
函数,似乎real(flow)
代表水平速度为正向,imag(flow)
代表垂直速度为正向。所以你的猜测是正确的
flowComplex = complex(flow.Vx, flow.Vy);