設定
|
OpenCV設定Ubuntu 14.04 に OpenCV ver. 3.0.0 をインストールとその確認を行ったときのメモです. 目次インストールと確認インストールUbuntu 14.04 で OpenCV を使うために,「Ubuntu14.04にOpenCVをインストールする」に従い設定を行いました.インストール用の shell が github で公開されているようです.
以上で,インストールというか設定は終わりです. 確認インストールを確認するために,OpenCV - Community Help Wiki に掲載されているログラムを実行させます.ここには,様々なプログラミング言語で書かれた OpenCV のサンプルプログラムがあります.リスト1に示す C++ のサンプルプログラムをコンパイル,実行します.ただし,これは元のサンプルの図のパス「./sea.jpg」を書き換えています.このプログラムは,パスで指定された画像ファイルを表示するだけの簡単なサンプルです. 01 #include<opencv2/highgui/highgui.hpp> 02 03 int main() 04 { 05 06 cv::Mat img = cv::imread("../sea.jpg", CV_LOAD_IMAGE_COLOR); 07 cv::imshow("opencvtest", img); 08 cv::waitKey(0); 09 10 return 0; 11 } このプログラムの動作は,次のとおりです.
コンパイルのコマンドは,以下のとおりです. $ g++ -ggdb `pkg-config --cflags opencv` -o `basename opencvtest.cpp .cpp` opencvtest.cpp `pkg-config --libs opencv` 無事コンパイルができたら,実行します. $ ./opencvtest
すると,図1が表示されます.何かキーボードのキーを押すとプログラムは停止します.
コンパイルを簡単にOpenCV を使った C や C++ プログラムのコンパイルを簡単にする方法が,「OpenCV - Community Help Wiki」に書かれています.bash script を使っています.ここでは,Makefile を使います.私はプロのプログラマーではないのでちょっといい加減ですが,次のような Makefile で実行ファイルを作ることができます.
001 #-------------- basic settings --------------- 002 SRC = opencvtest.cpp 003 TARGET = opencvtest 004 CFLAGS = -Wall -O3 `pkg-config --libs opencv` 005 LDFLAGS = `pkg-config --cflags opencv` 006 CC = g++ 007 008 #-------------- compile and link --------------- 009 $(TARGET): Makefile $(SRC) 010 $(CC) -ggdb $(LDFLAGS) -o $(TARGET) $(SRC) $(CFLAGS) 011 012 #-------------- others ------------------------ 013 .PHONY: clean 014 clean: 015 rm $(TARGET) コンパイルと実行は,次のようにします. $ make $ ./opencvtest OpenCV を使った OpenCV プログラムOpenCV といえば,ビデオカメラを使ったアプリケーションでしょう.ここでは,最も簡単なアプリケーションを示します. ソースプログラムリスト3は,WEBカメラから送られてくる画像を表示するプログラムです. 001 #include "opencv2/opencv.hpp" 002 003 int main(){ 004 cv::VideoCapture cap(0); 005 cv::Mat frame; 006 007 if(!cap.isOpened()) return 999; 008 009 while(1){ 010 cap >> frame; 011 cv::imshow("WEB camera", frame); 012 013 int key = cv::waitKey(1); 014 if(key == 'q'){ 015 break; 016 }else if(key == 's'){ 017 cv::imwrite("WEB_cam.png", frame); 018 } 019 } 020 021 cv::destroyAllWindows(); 022 return 0; 023 } このプログラムの動作は,次のとおりです.
コンパイルリスト3をコンパイルする Makefile をリスト4に示します.コマンド「make」で実行ファイルができます. 001 #-------------- basic settings --------------- 002 SRC = camera.cpp 003 TARGET = camera 004 CFLAGS = -Wall -O3 `pkg-config --libs opencv` 005 LDFLAGS = `pkg-config --cflags opencv` 006 CC = g++ 007 008 #-------------- compile and link --------------- 009 $(TARGET): Makefile $(SRC) 010 $(CC) -ggdb $(LDFLAGS) -o $(TARGET) $(SRC) $(CFLAGS) 011 012 #-------------- others ------------------------ 013 .PHONY: clean 014 clean: 015 rm $(TARGET) 実行プログラムを実行するとWEBカメラの動画が図2に示すウィンドウに現れます.キーボードの「s]を押すとキャプチャー画像が "WEB_cam.png" というファイル名で保存されます.「q」を押すとプログラムが終了します.
ページ作成情報参考資料
更新履歴
|