Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
tuw::EllipsesDetection Class Reference

#include <ellipses_detection.h>

Inheritance diagram for tuw::EllipsesDetection:
Inheritance graph
[legend]

Classes

class  Ellipse
 
class  Marker
 
class  ObliqueCone
 
struct  Parameters
 

Public Types

enum  DetectionState {
  VALID = 0, NA = 1, INVALID_CONTOUR_POINTS, INVALID_CONTOUR_CONVEX,
  INVALID_ROTATED_RECT_RATIO, INVALID_CONTOUR_MEAN, INVALID_MIN_RAIDUS, INVALID_MAX_RAIDUS,
  INVALID_NO_RING, INVALID_IS_INNER_RING, INVALID_ELLIPSE
}
 
enum  EdgeDetection { EDGE_DETECTION_THRESHOLD = 0, EDGE_DETECTION_CANNY = 1 }
 
enum  EdgeLinking {
  EDGE_LINKING_OPENCV_APPROX_NONE = 0, EDGE_LINKING_OPENCV_APPROX_SIMPLE = 1, EDGE_LINKING_TUW_SIMPLE = 2, EDGE_LINKING_TUW_COMPLEX = 3,
  EDGE_LINKING_TUW_CONTOUR = 4
}
 
enum  PoseEstimation { POSE_ESTIMATION_OFF = 0, POSE_ESTIMATION_SOLVEPNP = 1, POSE_ESTIMATION_FROM_ELLIPSE = 2 }
 

Public Member Functions

 EllipsesDetection (Parameters *parm)
 
 ~EllipsesDetection ()
 

Protected Member Functions

void contour_detection ()
 
void createEllipseCanditates ()
 
void createRings ()
 
void draw_ellipses (cv::Mat &m)
 
void edge_detection (const cv::Mat &m)
 
DetectionState EllipseRedefinement (Ellipse &ellipse)
 
void estimatePoses ()
 
DetectionState filterContour (Ellipse &ellipse)
 
DetectionState filterContourMean (Ellipse &ellipse)
 
DetectionState filterEllipse (Ellipse &ellipse)
 
void filterShapes ()
 
void fit_ellipses_opencv (const cv::Mat &m, const cv::Mat cameraMatrix, const cv::Mat distCoeffs, const cv::Mat projectionMatrix, const boost::posix_time::ptime &tstamp)
 
void next ()
 

Protected Attributes

tuw::Camera camera_
 
tuw::Contour contour_detector_
 
std::vector< std::vector< cv::Point > > contours_
 
std::vector< Ellipseellipses_
 
cv::Mat imgBlured_
 
cv::Mat imgDirection_
 
cv::Mat imgEdges_
 
cv::Mat imgGradient_
 
cv::Mat imgGray_
 
cv::Mat imgSobelDx_
 
cv::Mat imgSobelDy_
 
cv::Mat_< cv::Point2f > lookupUndistor_
 
unsigned long loop_count
 
std::list< Markermarkers_
 
Parametersparam_
 
boost::posix_time::ptime tstamp_
 
boost::posix_time::ptime tstampLast_
 

Detailed Description

Definition at line 36 of file ellipses_detection.h.

Member Enumeration Documentation

Enumerator
VALID 
NA 
INVALID_CONTOUR_POINTS 
INVALID_CONTOUR_CONVEX 
INVALID_ROTATED_RECT_RATIO 
INVALID_CONTOUR_MEAN 
INVALID_MIN_RAIDUS 
INVALID_MAX_RAIDUS 
INVALID_NO_RING 
INVALID_IS_INNER_RING 
INVALID_ELLIPSE 

Definition at line 38 of file ellipses_detection.h.

Enumerator
EDGE_DETECTION_THRESHOLD 
EDGE_DETECTION_CANNY 

Definition at line 56 of file ellipses_detection.h.

Enumerator
EDGE_LINKING_OPENCV_APPROX_NONE 
EDGE_LINKING_OPENCV_APPROX_SIMPLE 
EDGE_LINKING_TUW_SIMPLE 
EDGE_LINKING_TUW_COMPLEX 
EDGE_LINKING_TUW_CONTOUR 

Definition at line 60 of file ellipses_detection.h.

Enumerator
POSE_ESTIMATION_OFF 
POSE_ESTIMATION_SOLVEPNP 
POSE_ESTIMATION_FROM_ELLIPSE 

Definition at line 51 of file ellipses_detection.h.

Constructor & Destructor Documentation

EllipsesDetection::EllipsesDetection ( Parameters parm)

Definition at line 38 of file ellipses_detection.cpp.

EllipsesDetection::~EllipsesDetection ( )

Definition at line 33 of file ellipses_detection.cpp.

Member Function Documentation

void EllipsesDetection::contour_detection ( )
protected

Definition at line 94 of file ellipses_detection.cpp.

void EllipsesDetection::createEllipseCanditates ( )
protected

Definition at line 42 of file ellipses_detection.cpp.

void EllipsesDetection::createRings ( )
protected

Definition at line 190 of file ellipses_detection.cpp.

void EllipsesDetection::draw_ellipses ( cv::Mat &  m)
protected

Matlab Debug output

Definition at line 30 of file ellipses_draw.cpp.

void EllipsesDetection::edge_detection ( const cv::Mat &  m)
protected

Definition at line 81 of file ellipses_detection.cpp.

EllipsesDetection::DetectionState EllipsesDetection::EllipseRedefinement ( Ellipse ellipse)
protected

Definition at line 169 of file ellipses_detection.cpp.

void EllipsesDetection::estimatePoses ( )
protected

Definition at line 253 of file ellipses_detection.cpp.

EllipsesDetection::DetectionState EllipsesDetection::filterContour ( Ellipse ellipse)
protected

Definition at line 69 of file ellipses_detection.cpp.

EllipsesDetection::DetectionState EllipsesDetection::filterContourMean ( Ellipse ellipse)
protected

Definition at line 224 of file ellipses_detection.cpp.

EllipsesDetection::DetectionState EllipsesDetection::filterEllipse ( Ellipse ellipse)
protected

Definition at line 180 of file ellipses_detection.cpp.

void tuw::EllipsesDetection::filterShapes ( )
protected
void EllipsesDetection::fit_ellipses_opencv ( const cv::Mat &  m,
const cv::Mat  cameraMatrix,
const cv::Mat  distCoeffs,
const cv::Mat  projectionMatrix,
const boost::posix_time::ptime &  tstamp 
)
protected

Definition at line 123 of file ellipses_detection.cpp.

void EllipsesDetection::next ( )
protected

Definition at line 218 of file ellipses_detection.cpp.

Member Data Documentation

tuw::Camera tuw::EllipsesDetection::camera_
protected

Definition at line 186 of file ellipses_detection.h.

tuw::Contour tuw::EllipsesDetection::contour_detector_
protected

Definition at line 185 of file ellipses_detection.h.

std::vector< std::vector<cv::Point> > tuw::EllipsesDetection::contours_
protected

Definition at line 173 of file ellipses_detection.h.

std::vector<Ellipse> tuw::EllipsesDetection::ellipses_
protected

Definition at line 174 of file ellipses_detection.h.

cv::Mat tuw::EllipsesDetection::imgBlured_
protected

Definition at line 176 of file ellipses_detection.h.

cv::Mat tuw::EllipsesDetection::imgDirection_
protected

Definition at line 179 of file ellipses_detection.h.

cv::Mat tuw::EllipsesDetection::imgEdges_
protected

Definition at line 177 of file ellipses_detection.h.

cv::Mat tuw::EllipsesDetection::imgGradient_
protected

Definition at line 178 of file ellipses_detection.h.

cv::Mat tuw::EllipsesDetection::imgGray_
protected

Definition at line 175 of file ellipses_detection.h.

cv::Mat tuw::EllipsesDetection::imgSobelDx_
protected

Definition at line 180 of file ellipses_detection.h.

cv::Mat tuw::EllipsesDetection::imgSobelDy_
protected

Definition at line 181 of file ellipses_detection.h.

cv::Mat_<cv::Point2f> tuw::EllipsesDetection::lookupUndistor_
protected

Definition at line 182 of file ellipses_detection.h.

unsigned long tuw::EllipsesDetection::loop_count
protected

Definition at line 184 of file ellipses_detection.h.

std::list<Marker> tuw::EllipsesDetection::markers_
protected

Definition at line 183 of file ellipses_detection.h.

Parameters* tuw::EllipsesDetection::param_
protected

Definition at line 159 of file ellipses_detection.h.

boost::posix_time::ptime tuw::EllipsesDetection::tstamp_
protected

Definition at line 187 of file ellipses_detection.h.

boost::posix_time::ptime tuw::EllipsesDetection::tstampLast_
protected

Definition at line 188 of file ellipses_detection.h.


The documentation for this class was generated from the following files:


tuw_ellipses
Author(s): Markus Bader
autogenerated on Mon Jun 10 2019 15:42:10