私は自分のWindowsマシンでpHash(http://phash.org/)を構築しようとしてきましたが、運がありませんでした。デスクトップアプリケーションのプログラミングは初めてです。ctypesを介してPythonでpHashライブラリを使用します。誰かがpHashの構築に関連する手順を投稿できますか?
私が試したのは、Visual Studio 2008でpHash.slnを開き、(デバッグではなく)リリースを選択してpHashを構築することでした。ファイルが見つからなかったため、どこにビルドされているのかわかりませんでした。Visual Studioのプロジェクトフォルダーを調べてみましたが、そこになかったので、pHash / release / pHash.dllにビルドされていると思いましたが、そのdllをctypes.cdllでロードすると、pHashドキュメント(http ://phash.org/docs/howto.html)はアクセス可能のようです(例:ph_dct_imagehash()、ph_dct_videohash)。
これが私のコードの例です:
import ctypes
import inspect
PHASHPATH = "C:\Users\me\Downloads\phash\release\pHash.dll"
phash_dll = ctypes.CDLL(PHASHPATH)
phash_dll['ph_dct_imagehash']
私が得る応答は次のとおりです。
Traceback (most recent call last):
File "C:\Users\me\workspace\project\src\opencv.py", line 12, in <module>
phash_dll['ph_dct_imagehash']
File "C:\Program Files (x86)\Python27\lib\ctypes\__init__.py", line 371, in __getitem__
func = self._FuncPtr((name_or_ordinal, self))
AttributeError: function 'ph_dct_imagehash' not found
初めてですので、ご容赦ください。ありがとう。
編集:私はPython2.7を実行しています。