#pragma once
#include "detect.h"
#define CASMATCH "data\\CasmatchTmpl_v2.jpg"
#define SEARCH_AREA 400 // キャスマッチを探索するコーナー領域のサイズ
#define C_ROTATE_STEP 2.0 // キャスマッチを回転探索する角度刻み(度)
#define C_PATCH_SIZE 3 // パッチの色を平均する領域サイズ
#define NUM_CASMATCH 2 // キャスマッチの数
#define C_NUM_PATCH 9 // キャスマッチ内パッチ数
//// キャスマッチ画像 CasmatchTmpl.jpg から計算
//// 中心パッチ座標 39,39 黒パッチ座標 20,45 (-19,+6)
//#define BLACK_ANGLE 160.0 // =atan(+6/-19) (degree)
//#define BLACK_LEN 19.5 // =sqrt((+6)^2 + (-19)^2)
// キャスマッチ画像 CasmatchTmpl_v2.jpg から計算
// 中心パッチ座標 25,25 黒パッチ座標 39,23 (+14,-2)
#define BLACK_ANGLE 175.0 // =atan(-2/+14) (degree)
#define BLACK_LEN 14.1 // =sqrt((-2)^2 + (+14)^2)
class CDetectCasmatch :
public CDetect
{
private:
bool CalcPatchPosition(CvPoint pos, double angle, int place);
public:
CDetectCasmatch(void);
~CDetectCasmatch(void);
bool Init();
bool Detect();
bool CalcPatchColor9(CvMat **rgb);
};