Я только что загрузил совместимую с Octave (и MATLAB) версию Multi-Camera Self-Calibration toolbox. Он имеет встроенную проверку и раздел в файле readme, в котором указано ожидаемое значение при выполнении этой проверки.
Следующая командная строка запускает встроенную проверку:
octave gocal.m --config=../strawlab/test-data/DATA20100906_134124/no-global-iterations.cfg
Из readme есть раздел, который сообщает, каковы предполагаемые результаты выполнения этой проверки и каковы окончательные результаты.
Моя проблема в том, что я получаю немного другие значения по сравнению с теми, что упоминаются в файле readme. Возможно ли, что я получаю эти различия (например, 0,62 против 0,70 для ошибок пикселей), потому что я использую Win32-сборку Octave, а не нативную версию Linux?
Мой другой и более важный вопрос: как мне запустить этот скрипт (gocal.m) из MATLAB ? Этот скрипт имеет часть, которая берет имя файла конфигурации из аргумента командной строки --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 =?
- из GUI MATLAB , с фокусным расстоянием ...
- из командной строки , с помощью matlab -r gocal ...?