目次
today: ?
yesterday: ?
total: ?
更新履歴
2011/03/16
- プログラム公開
推奨環境
- OS: Linux(Ubuntu 10.10で確認)
- OpenCV: 2.2
- ショボイC++を読める広い心
このプログラムでできること
- USBカメラから画像の取得と表示(できない場合は画像を読み込んで表示)
- 処理時間の計測
- 計測した処理時間の保存
ファイル構成と簡単な説明
- ReadmeMain.txt: 更新履歴はここ
- data/
- data/init/: 設定ファイルを置く場所
- data/init/webcamInit.dat
- data/Makefile
- data/time: 測定時間を置く場所
- data/image: 画像を置く場所
- data/image/lena.jpg
- data/output/: 端末出力結果を置く場所
- data/init/: 設定ファイルを置く場所
- include/: ライブラリ関係のリンクはここ
- include/Makefile
- include/myCV.h
- lib/: ライブラリ関係はここ
- src/
- src/Readmesrc.txt: 簡単なリファレンスマニュアル
- src/Makefile
- src/main.c
- src/myclass.hpp
- src/help.hpp
- src/getTime.hpp
- src/writer.hpp
ダウンロード用ファイル
- Readme
- All
main関数の流れ
/*><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
$Id: main.cpp 2011/03/16 02:04:08 kato Exp $
USBカメラから画像を取得するだけのプログラム.
カメラを検出できなかった場合は画像を読み込み表示する.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><*/
#include
#include
#include
#include
using namespace std;
using namespace cv;
const string prgName = "standardCPP";
const string prgYMD = "2011/03/16";
const string prgVer = "0.03";
int standard(const string filename);
int main(int argc, char **argv){
const string filename = argc == 2 ? argv[1] : "../data/image/lena.jpg";
Help help;
if(help.check(argc, argv))
help.view(prgName, prgYMD, prgVer);
standard(filename);
return 0;
}
int standard(const string filename){
Timer initTM, camTM, viewTM;
initTM.start();
VideoCapture cap(0);
namedWindow("test",1);
if(!cap.isOpened()){
Mat img = imread(filename, CV_LOAD_IMAGE_COLOR);
imshow("test", img);
waitKey(1000);
return 0;
}
initTM.finish();
while(1){
camTM.start();
Mat frame;
cap >> frame;
viewTM.start();
imshow("test", frame);
viewTM.finish();
camTM.finish();
if(waitKey(30) >= 0)
break;
}
Writer write;
write.input(initTM.write());
write.input(camTM.write());
write.input(viewTM.write());
cout << write.output("test") << endl;
return 0;
}