Octaveでlibsvmを使った画像認識をしたい
題のとおり,Octaveでlibsvm(識別器ライブラリの一種)を使った画像認識をしようと考えています。ところが,,,
libsvmは使えるのですが,画像を読み込むimread()関数が使えません。
具体的には,以下のエラーがでます。
octave:2> test_image
error: default_formats: /usr/local/octave/3.8.2/lib/octave/3.8.2/oct/x86_64-apple-darwin13.4.0/__magick_read__.oct: failed to load: dlopen(/usr/local/octave/3.8.2/lib/octave/3.8.2/oct/x86_64-apple-darwin13.4.0/__magick_read__.oct, 2): Symbol not found: __ZN6Magick5ColorC1Ejjj
Referenced from: /usr/local/octave/3.8.2/lib/octave/3.8.2/oct/x86_64-apple-darwin13.4.0/__magick_read__.oct
Expected in: /usr/local/octave/3.8.2/lib/libGraphicsMagick++.3.dylib
in /usr/local/octave/3.8.2/lib/octave/3.8.2/oct/x86_64-apple-darwin13.4.0/__magick_read__.oct
error: called from:
error: /usr/local/octave/3.8.2/share/octave/3.8.2/m/image/imformats.m at line 255, column 11
error: /usr/local/octave/3.8.2/share/octave/3.8.2/m/image/imformats.m at line 78, column 3
error: /usr/local/octave/3.8.2/share/octave/3.8.2/m/image/private/imageIO.m at line 60, column 7
error: /usr/local/octave/3.8.2/share/octave/3.8.2/m/image/imread.m at line 107, column 30
error: /Users/hajime/Desktop/image_2/test_image.m at line 12, column 4
octave:2>
環境は,
・Mac OS X Yosemite 10.10.2
・Octave 3.8.2
(http://sourceforge.net/projects/octave/files/Octave%20MacOSX%20Binary/test/2014-09-25-Binary-of-GNU-Octave-3.8.2-for-OSX-10.9.5/より入手)
・libsvm 3.20
(http://www.csie.ntu.edu.tw/~cjlin/libsvm/より入手)
です。
試しに,古いバージョンのOctaveを入れてみたところ,
・Octave 3.8.0
(http://sourceforge.net/projects/octave/files/Octave%20MacOSX%20Binary/2013-12-30%20binary%20installer%20of%20Octave%203.8.0%20for%20OSX%2010.9.1%20%28beta%29/より入手)
画像を読み込むimread()関数は使えるようになりましたが,
libsvmが使えなくなってしまいました。(一つの.mファイルを別々のOctaveで使い分けることができれば解決するのかもしれませんが,ややこしいことになりそうなので考えていません。)
Octaveのバージョンアップによって,imread()関数が使えなくなるような変更があったと思うのですが,それが何なのか,どうやって直すのかが分かりません。
どこに問題がありそうでしょうか?
かなり手こずっています,どうかお助けくださいm(><)m
お礼
ありがとうございます。 そのサイトは和訳されたマニュアルの方しか見てなかったので、 オリジナルの方も詳しく調べてみます。