0

こんにちは、SIFT 記述子に Fisher Vector を使用したいと考えています。VL_FEATの機能を使ってみました。MATLAB にディレクトリを追加し、vl_startup も実行しました。正常に実行されますが、例を試すと

それは私にこのエラーを与えます:

Attempt to execute SCRIPT vl_gmm as a function:
C:\vlfeat-0.9.19.tar\vlfeat-0.9.19\vlfeat-0.9.19\toolbox\gmm\vl_gmm.m 

どうすればこれを解決できますか?

4

1 に答える 1

2

作業を開始するための提案がいくつかありますVLFeat。あなたがそれらすべてを試したかどうかはわかりませんが、私はそれらを提案します:

提案 #1 -VLFeatソースだけをダウンロードした場合のコンパイル

ソースファイルだけをダウンロードしましたか? もしそうなら、VLFeat最初にコンパイルしましたか?具体的にはvl_compile、ソースをダウンロードしたときに最初に実行しましたか?

のような関数でvl_gmmは、関数を使用する前に MEX ラッパーをコンパイルする必要があります。toolbox/gmmディレクトリを見ると、と の 2 つのファイルがvl_gmm.mありますvl_gmm.cvl_gmm.m関数の使用方法に関するドキュメンテーションを含む単なる MATLAB ファイルです。実際の関数はvl_gmm.cMEX ファイルです。デフォルトでファイルVLFeatを実行しようとしているため、最初にコンパイルしなかった場合にのみ、このエラーが発生します。これにはドキュメントしか含まれていません。.m

そのため、サンプルを実行する前に、スクリプトをVLFeat実行してコンパイルしてください。vl_compile.m

提案 2 - コンパイル済みのバイナリをダウンロードする

VLFeatまたは、バイナリをダウンロードしてプリコンパイルすることもできます: http://www.vlfeat.org/download/vlfeat-0.9.19-bin.tar.gz。ライブラリのコンパイルに問題がある場合は、私が提供したリンクから実際のコンパイル済みバイナリをダウンロードし、vl_setup.mそこから実行してみてください。

于 2015-01-06T21:16:59.113 に答える