src フォルダーにある sift.c ファイルを実行して、 vlfeatコンピューター ビジョン ライブラリの sift 検出器をテストしようとしています。プログラムを正常にコンパイルして実行しました。ただし、エラーが発生しました。入力画像に不正な形式の PGM ヘッダーが含まれています。入力された画像ファイルの問題ではないと確信しています。誰かがそれを説明できますか。
1 に答える
0
これは、ファイルが2 バイト未満であるか、サポートされていないか無効なマジック ナンバーを持っているVL_ERR_PGM_INV_HEAD
場合に、PGM デコーダーによって発行されるエラー コードに対応します。
vlfeat はP2
(ASCII) およびP5
(バイナリ) 形式のみをサポートすることに注意してください。したがって、魔法を調べて、これらの要件に適合するかどうかを制御する必要があります。たとえば、次のようになります。
$ xxd -c 1 -l 2 foo.pgm
0000000: 50 P
0000001: 35 5
$ xxd -c 1 -l 2 bar.pbm
0000000: 50 P
0000001: 34 4
foo.pgm
これは有効ですが (バイナリ形式のグレーマップ)、vlfeat (バイナリ形式の白黒ビットマップ)ではbar.pbm
サポートされていません。
于 2015-07-24T07:26:46.373 に答える