OpenCVをCMakeでコンパイルするときにWITH_OPENNIオプションを付加することになる。だが64bit版のOpenNI、PrimeSensorを使っているとCMakeでConfigureしたときに、OPENNI_LIB_DIR、OPENNI_PRIME_SENSOR_MODULE_BIN_DIRに値が入らない(何を入力しても空白になってしまう)。 どうやら64bit版を使うにはOpenCVFindOpenNI.cmakeの変更が必要でした。その手順メモとなります。 【環境、バージョン】 Windows7 OpenNI win64 1.5.2.23 PrimeSense win64 5.1.0.41 OpenCV 2.3.1 cmake 2.8.7 x86 【手順】 Where is the source codeに設定してあるフォルダ配下にあるOpenCVFindNI.cmakeを開く。 以下の内容に合わせて二箇所修正する。 修正箇所は Finding OpenNI in windows 64bit の OpenCVFindOpenNI.2.patch を参考にしました。 ■20~21行目 ・修正前 find_file(OPENNI_INCLUDES "XnCppWrapper.h" PATHS $ENV{OPEN_NI_INCLUDE} "/usr/include/ni" "/usr/include/openni" "c:/Program Files/OpenNI/Include" DOC "OpenNI c++ interface header") find_library(OPENNI_LIBRARY "OpenNI" PATHS $ENV{OPEN_NI_LIB} "/usr/lib" "c:/Program Files/OpenNI/Lib" DOC "OpenNI library") ・修正後 if(WIN32) if(NOT (MSVC64 OR MINGW64)) find_file(OPENNI_INCLUDES "