помогите с ошибкой октавы '__spatial_filtering__' в ordfiltn.m и imerode.m

Я пытался запустить этот код Matlab через октаву с этого сайта:

http://www.vision.huji.ac.il/SpectralMatting/

и получил эту ошибку (после создания mex-файла с помощью mkoctfile):

computing Laplacian matrix
error: `__spatial_filtering__' undefined near line 98 column 10
error: called from:
error:   /usr/share/octave/packages/3.2/image-1.0.12/ordfiltn.m at line 98, column 8
error:   /usr/share/octave/packages/3.2/image-1.0.12/imerode.m at line 34, column 8
error:   /home/ct/imgproc/spectralMattingCode/getLaplacian1.m at line 20, column 9
error:   /home/ct/imgproc/spectralMattingCode/SpectralMatting.m at line 21, column 2
error:   runAll.m at line 18, column 26

Любые рекомендации о том, почему это происходит и как я могу это исправить? Спасибо.


person ct_    schedule 21.04.2011    source источник


Ответы (1)


__spatial_filtering__.oct

файл должен быть в вашем пути октавы. Так, например, в cygwin, если вы установили пакет octave-forge и по какой-то причине ваши октавные пути настроены неправильно, вы должны ввести (в октаве)

addpath('/usr/lib/octave/packages/image-1.0.14/i686-pc-cygwin-api-v45+')

поскольку

__spatial_filtering__.oct

находится здесь:

/usr/lib/octave/packages/image-1.0.14/i686-pc-cygwin-api-v45+/__spatial_filtering__.oct
person matth    schedule 19.08.2011
comment
У меня была другая ошибка `ошибка: версия API api-v53, найденная в файле .oct, функция 'spatial_filtering' не соответствует работающей октаве (версия API api-v55), это может привести к неправильным результатам или другим сбоям вы можете исправить эту проблему, перекомпилировав этот файл .oct ` - person Yousef Saber; 11.05.2021