cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
svlCCOriginDetector.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /* ex: set filetype=cpp softtabstop=4 shiftwidth=4 tabstop=4 cindent expandtab: */
3 
4 /*
5 
6  Author(s): Wen P. Liu
7  Created on: 2011
8 
9  (C) Copyright 2006-2007 Johns Hopkins University (JHU), All Rights
10  Reserved.
11 
12 --- begin cisst license - do not edit ---
13 
14 This software is provided "as is" under an open source license, with
15 no warranty. The complete license can be found in license.txt and
16 http://www.cisst.org/cisst/license.txt.
17 
18 --- end cisst license ---
19 */
20 #ifndef _svlCCOriginDetector_h
21 #define _svlCCOriginDetector_h
22 
23 #include <math.h>
24 #include <iostream>
25 
28 {
29 public:
33 
34  svlCCOriginDetector(int colorModeFlag=RGY);
36  int getOriginDetectionFlag(){return originDetectionFlag;};
37  int getOriginColorModeFlag(){return originColorModeFlag;};
38  std::vector<cv::Point2f> getColorBlobs() { return colorBlobs;};
39  cv::Point2f getOrigin() { return origin;};
40 
41  private:
42  void reset();
43  void findOriginByColor( IplImage* img);
44  bool findColorBlobs(IplImage* iplImage, float radius, int flags[],int thresholds[]);
45 
46  void drawColorBlobs(IplImage* iplImage);
47  float distanceBetweenTwoPoints ( float x1, float y1, float x2, float y2);
48  cv::Point2f intersectionByColorBlobs(float point_x, float point_y, float line_x1, float line_y1, float line_x2, float line_y2);
49 
51  const static bool debug = false;
52  int originDetectionFlag;
53  int originColorModeFlag;
54  std::vector<cv::Point2f> colorBlobs;
55  cv::Point2f origin;
56 
57 };
58 #endif
A vector object of dynamic size.
Definition: vctDynamicVector.h:127
originDetectionEnum
Definition: svlCCOriginDetector.h:30
Definition: svlCCOriginDetector.h:30
Definition: svlCCOriginDetector.h:32
Definition: svlCCOriginDetector.h:31
int getOriginDetectionFlag()
Definition: svlCCOriginDetector.h:36
void detectOrigin(IplImage *iplImage, vctDynamicVector< vctInt2 > inputBlobs=vctDynamicVector< vctInt2 >())
colorModeEnum
Definition: svlCCOriginDetector.h:32
std::vector< cv::Point2f > getColorBlobs()
Definition: svlCCOriginDetector.h:38
void IplImage
Definition: svlTypes.h:70
Definition: svlCCOriginDetector.h:31
svlCCOriginDetector(int colorModeFlag=RGY)
Definition: svlCCOriginDetector.h:27
colorIndexEnum
Definition: svlCCOriginDetector.h:31
int getOriginColorModeFlag()
Definition: svlCCOriginDetector.h:37
cv::Point2f getOrigin()
Definition: svlCCOriginDetector.h:39
Definition: svlCCOriginDetector.h:32
Definition: svlCCOriginDetector.h:31
Definition: svlCCOriginDetector.h:30
Definition: svlCCOriginDetector.h:31