【发布时间】:2011-04-05 17:12:32
【问题描述】:
我刚刚下载了多相机自校准工具箱的 Octave(和 MATLAB)兼容版本。它有一个内置检查和自述文件中的一个部分,其中说明了运行该检查时的预期值。
以下命令行启动内置检查:
octave gocal.m --config=../strawlab/test-data/DATA20100906_134124/no-global-iterations.cfg
readme 中有一个部分说明运行该检查的假定结果是什么,以及最终结果是什么。
我的问题是,与自述文件中提到的值相比,我得到的值略有不同。是否有可能因为我使用的是 Octave 的 win32 版本而不是本机 linux 版本而得到这些差异(例如 0.62 与 0.70 的像素错误)?
我的另一个更重要的问题是我如何从 MATLAB 运行这个脚本 (gocal.m)?这个脚本有一个部分,它从命令行参数 --config= 中获取配置文件名。无论我如何尝试从 MATLAB 运行此脚本,它总是告诉我 argv 中缺少某些内容。
代码如下:
function [config] = read_configuration(filename)
if nargin == 0
% No argument given -- look for --config= on the command-line.
found_cfg = 0;
for cmdline_arg = argv()
arg = cmdline_arg{1}
szarg = size(arg);
if szarg(2) >= 10
if strcmp(arg(1:9), '--config=')
found_cfg = 1;
filename = arg(10:size(arg,2));
end
end
end
if ~found_cfg
error('missing --config=FILENAME command-line argument');
end
end
您能告诉我如何为 argv() 传递给定数据并使用 --config= 选项启动所需的脚本吗?
- 在 MATLAB GUI 中,运行 gocal ...
- 从命令行,使用 matlab -r gocal ...?
【问题讨论】:
标签: command-line octave matlab