Newer
Older
PrismSoftware / ECTrainer2 / SceneCamera.cpp

#include <Windows.h>
#include <tchar.h>

#include "ECTrainer.h"
#include "SceneCamera.h"
#include "ECTrainerGUI.h"
#include "MyWinUtils.h"

// コンストラクタ
SceneCamera::SceneCamera(ECTrainer* pEct) : BaseProcess(pEct)
	, _buffer() 
{
}

// 初期化
bool SceneCamera::Init() {
	// 視界カメラに接続
#if defined(EYEDEVICE_GLASS2)
	_SceneCam.open("rtsp://" TOBII_ADDR ":8554/live/scene");
#elif defined(EYEDEVICE_NONE)
	_SceneCam.open(0);
#endif
	if (!_SceneCam.isOpened()) {
		MessageBox(NULL, _T("cannot open camera " TOBII_ADDR), NULL, 0);
		return false;
	}
	// 画像サイズを保存
	cv::Mat scene;
	_SceneCam >> scene;
	_sceneSize = scene.size();

	return true;
}

// ループ
bool SceneCamera::Routine() {
	// シーン撮影
	cv::Mat scene;
	_SceneCam >> scene;
	_buffer.Put(scene);
	Sleep(15);	// Tobiiのシーンカメラは25FPS 15msのSleepは問題ない

	return true;
}