MATLAB 中的 vision.internal.disparityParser

Posted

技术标签:

【中文标题】MATLAB 中的 vision.internal.disparityParser【英文标题】:vision.internal.disparityParser in MATLAB 【发布时间】:2015-09-22 00:31:01 【问题描述】:

我正在使用 MATLAB 2014b 中的计算机视觉工具箱 有一个半全局匹配(SGM)的功能 我正在尝试生成立体图像的视差图。但是,对于某些实验,视差范围需要相当大。

这里是函数调用:

Dmap = disparity(I1 I2, 'BlockSize', 15, 'DisparityRange', [-2466,  2466]);

问题是 DisparityRange 被限制在 [-2464, 2464] 的范围内。因此,我收到如下错误消息。


Error using disparity
The value of 'DisparityRange' is invalid. Expected DisparityRange to be an array with all of the values >
-2466.

Error in vision.internal.disparityParser (line 38)
parser.parse(varargin:);

Error in disparity>parseOptionalInputs (line 264)
    r = vision.internal.disparityParser(imageSize, getDefaultParameters(),...

Error in disparity>parseInputs (line 244)
r = parseOptionalInputs(imageSize, varargin:);

Error in disparity (line 137)
r = parseInputs(I1, I2, varargin:);

我的问题: 1. 找不到函数(vision.internal.disparityParser)。应该设在哪里。 2. 我想修改代码以适用于超出指定限制的雨量。那可能吗? 3. 对于使用 C++ 版本的 SGM 函数 (OpenCV) 的任何人,是否存在相同的问题(即差异范围限制)。

谢谢! :)

【问题讨论】:

【参考方案1】:

我只能回答第一个问题。函数 vision.internal.disparityParser 位于 $MATLAB/toolbox/vision/vision/+vision/+internal/disparityParser.m 。

【讨论】:

以上是关于MATLAB 中的 vision.internal.disparityParser的主要内容,如果未能解决你的问题,请参考以下文章

matlab读取.mat文件中的指定数据

请问MATLAB中的sparse函数怎样使用?

matlab中的结构体

matlab中的unwrap有啥作用

matlab中的get函数怎么用

matlab中的reshape命令?