私は OpenCV を使い始めたばかりで、次のサンプル .cpp ファイルがあります (opencv.org から):
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
int main( int argc, char** argv )
{
Mat image;
image = imread( argv[1], 1 );
if( argc != 2 || !image.data )
{
printf( "No image data \n" );
return -1;
}
namedWindow( "Display Image", CV_WINDOW_AUTOSIZE );
imshow( "Display Image", image );
waitKey(0);
return 0;
}
次の CMakeList.cmake ファイルがあります。
project(opencvTEST)
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
find_package(OpenCV REQUIRED)
# Project Executable
add_executable (test test.cpp)
target_link_libraries(test ${OpenCV_LIBS})
私は Mac (OS 10.6.8) を使用しており、CMake で OpenCV 2.4.3 をインストールしました。高低を検索し、このテスト プログラムをコンパイルするためにさまざまなことを試しました (コマンドを使用しています)。行 -- IDE なし) ですが、次のコンパイル エラーが発生します (明らかに、include
ステートメントが正しく機能していないためです)。
test.cpp:3:30: error: opencv2/opencv.hpp: No such file or directory
test.cpp:5: error: ‘cv’ is not a namespace-name
test.cpp:5: error: expected namespace-name before ‘;’ token
test.cpp: In function ‘int main(int, char**)’:
test.cpp:9: error: ‘Mat’ was not declared in this scope
test.cpp:9: error: expected `;' before ‘image’
test.cpp:10: error: ‘image’ was not declared in this scope
test.cpp:10: error: ‘imread’ was not declared in this scope
test.cpp:18: error: ‘CV_WINDOW_AUTOSIZE’ was not declared in this scope
test.cpp:18: error: ‘namedWindow’ was not declared in this scope
test.cpp:19: error: ‘imshow’ was not declared in this scope
test.cpp:21: error: ‘waitKey’ was not declared in this scope
opencv2
と同じディレクトリにという名前のフォルダがありtest.cpp
、にあるため、見つからない理由がわかりません。何か案は? opencv.hpp
opencv2
また、一般的に、OpenCV はソース (.cpp など) ファイルをどこに配置することを期待していますか?