#include <vector>
#include <map>
#include <cv.h>
#include <ml.h>
#include "outlet_pose_estimation/detail/outlet_tuple.h"
Go to the source code of this file.
Classes | |
struct | outlet_feature_t |
struct | outlet_t |
Defines | |
#define | __max MAX |
#define | __min MIN |
Typedefs | |
typedef std::map< std::string, std::vector< CvRect > > | outlet_roi_t |
Functions | |
void | calc_contrast_factor (IplImage *grey, CvRect rect, float &contrast, float &variation) |
CvMat * | calc_image_homography (IplImage *src) |
void | calc_labels (const std::vector< CvRect > &rects, const std::vector< outlet_feature_t > &keypts, std::vector< int > &labels) |
int | calc_outlet_coords (std::vector< outlet_t > &outlets, CvMat *map_matrix, CvPoint3D32f origin, CvPoint2D32f scale, CvMat *rotation_vector, CvMat *translation_vector, CvMat *inv_map_matrix=0) |
void | calc_outlet_coords (std::vector< outlet_t > &outlets, const outlet_template_t &outlet_template, CvMat *intrinsic_matrix, CvMat *distortion_params) |
void | calc_outlet_coords (CvMat *rotation_vector, CvMat *translation_vector, const std::vector< cv::Point3f > &object_points, std::vector< outlet_t > &outlets) |
void | calc_outlet_coords_ground (std::vector< outlet_t > &outlets, const outlet_template_t &outlet_template, CvMat *intrinsic_matrix, CvMat *distortion_params) |
void | calc_outlet_dist_stat (const std::vector< outlet_t > &outlets, float &mean, float &stddev) |
void | calc_outlet_tuple_dist_stat (const std::vector< outlet_t > &outlets, float &ground_dist_x1, float &ground_dist_x2, float &ground_dist_y) |
IplImage * | calc_tuple_distance_map (IplImage *tuple_mask) |
void | cvRectangle (IplImage *img, CvRect rect, CvScalar color, int thickness) |
void | detect_outlets (IplImage *src, std::vector< outlet_feature_t > &features, std::vector< outlet_t > &outlets, outlet_tuple_t *outlet_tuple, const char *output_path=0, const char *filename=0) |
CvRect | double_rect (CvRect small_rect) |
void | draw_outlets (IplImage *temp, const std::vector< outlet_t > &outlets) |
void | DrawKeypoints (IplImage *img, std::vector< outlet_feature_t > features) |
void | estimateCameraPosition (const std::vector< KeyPointEx > &image_points, const std::vector< cv::Point3f > &object_points, CvMat *intrinsic_matrix, CvMat *distortion_params, CvMat *rotation_vector, CvMat *translation_vector) |
void | extract_intensity_features (IplImage *grey, const std::vector< outlet_feature_t > &keypts, CvMat **mat, int equalize_hist=0, const std::vector< int > &labels=std::vector< int >(), const char *buf=0) |
CvPoint | feature_center (outlet_feature_t feature) |
void | filter_canny (IplImage *grey, std::vector< outlet_feature_t > &features) |
void | filter_features_distance_mask (std::vector< outlet_feature_t > &features, IplImage *distance_map) |
void | filter_features_mask (std::vector< outlet_feature_t > &features, IplImage *mask) |
void | filter_negative_samples (const std::vector< CvRect > &rects, std::vector< outlet_feature_t > &keypts, float fraction) |
void | filter_outlets (IplImage *grey, std::vector< outlet_t > &outlets, CvRTrees *rtrees) |
void | filter_outlets_mask (std::vector< outlet_t > &outlets, IplImage *mask) |
void | filter_outlets_size (std::vector< outlet_t > &outlets) |
int | filter_outlets_templ (std::vector< outlet_t > &outlets, const char *filename) |
void | filter_outlets_templ_ex (std::vector< outlet_t > &outlets, CvMat *map_matrix, IplImage *mask) |
int | filter_outlets_templmatch (IplImage *src, std::vector< outlet_t > &outlets, IplImage *templ, const char *output_path, const char *filename=0, CvMat **homography=0, CvPoint3D32f *origin=0, CvPoint2D32f *scale=0) |
void | filter_outlets_tuple (std::vector< outlet_t > &outlets, IplImage *tuple_mask, CvPoint2D32f hor_dir) |
void | FilterPoints (IplImage *grey, std::vector< outlet_feature_t > &keypts, const CvRTrees *rtrees) |
int | find_origin_chessboard (IplImage *src, CvMat *map_matrix, CvPoint3D32f &origin, float bar_length) |
void | find_outlet_features (IplImage *src, std::vector< outlet_feature_t > &features, const char *filename) |
void | find_outlet_features_fast (IplImage *src, std::vector< outlet_feature_t > &features, float hole_contrast, const char *output_path, const char *filename) |
void | findPreciseGroundHoleLocation (IplImage *grey, cv::Point2f center, cv::Point2f &hole) |
void | findPreciseOutletLocations (IplImage *grey, const outlet_template_t &outlet_template, std::vector< outlet_t > &outlets) |
void | findPreciseOutletLocationsAvg (IplImage *grey, const outlet_template_t &outlet_template, std::vector< outlet_t > &outlets) |
void | findPrecisePowerHoleLocation (IplImage *grey, cv::Point2f center, cv::Point2f dir, cv::Point2f dir_perp, cv::Point2f &hole) |
CvRect | fit_rect (CvRect rect, IplImage *img) |
CvRect | fit_rect_roi (CvRect rect, CvRect roi) |
void | flipOutlet (std::vector< outlet_t > &outlets) |
int | generate_outlet_samples (IplImage *grey, outlet_t outlet, int count, CvMat **predictors, const char *filename=0) |
void | get_outlet_coordinates (const outlet_t &outlet, CvPoint3D32f *points) |
void | getImagePoints (const std::vector< outlet_t > &outlets, std::vector< cv::Point2f > &image_points, std::vector< bool > &is_detected) |
CvRect | getOutletROI (const std::vector< outlet_t > &outlets) |
int | is_point_incenter_roi (const std::vector< CvRect > &rects, CvPoint point) |
int | is_point_inside_rect (CvRect rect, CvPoint point) |
int | load_homography_map (const char *filename, CvMat **map_matrix) |
IplImage * | load_match_template_mask (const char *filename) |
void | move_features (std::vector< outlet_feature_t > &features, CvPoint origin) |
CvRect | outlet_rect (outlet_t outlet) |
float | outlet_size (outlet_t outlet) |
void | read_outlet_roi (const char *filename, outlet_roi_t &outlet_roi) |
void | select_central_outlets (std::vector< outlet_t > &outlets, int count) |
void | select_orient_outlets (CvPoint2D32f orientation, std::vector< outlet_t > &outlets, int count=0) |
int | select_orient_outlets_ex (IplImage *grey, std::vector< outlet_t > &outlets, const char *filename=0) |
void | train_outlet_model (const char *path, const char *config_filename, const char *roi_filename, const char *forest_filename) |
CvMat * | vector2mat (const std::vector< int > &vec) |
void | write_pr (const char *pr_filename, const char *image_filename, const outlet_roi_t &outlet_roi, const std::vector< outlet_t > &outlets) |
#define __max MAX |
Definition at line 64 of file outlet_model.h.
#define __min MIN |
Definition at line 65 of file outlet_model.h.
typedef std::map<std::string, std::vector<CvRect> > outlet_roi_t |
Definition at line 129 of file outlet_model.h.
void calc_contrast_factor | ( | IplImage * | grey, |
CvRect | rect, | ||
float & | contrast, | ||
float & | variation | ||
) |
Definition at line 1397 of file outlet_model.cpp.
CvMat* calc_image_homography | ( | IplImage * | src | ) |
void calc_labels | ( | const std::vector< CvRect > & | rects, |
const std::vector< outlet_feature_t > & | keypts, | ||
std::vector< int > & | labels | ||
) |
int calc_outlet_coords | ( | std::vector< outlet_t > & | outlets, |
CvMat * | map_matrix, | ||
CvPoint3D32f | origin, | ||
CvPoint2D32f | scale, | ||
CvMat * | rotation_vector, | ||
CvMat * | translation_vector, | ||
CvMat * | inv_map_matrix = 0 |
||
) |
void calc_outlet_coords | ( | std::vector< outlet_t > & | outlets, |
const outlet_template_t & | outlet_template, | ||
CvMat * | intrinsic_matrix, | ||
CvMat * | distortion_params | ||
) |
void calc_outlet_coords | ( | CvMat * | rotation_vector, |
CvMat * | translation_vector, | ||
const std::vector< cv::Point3f > & | object_points, | ||
std::vector< outlet_t > & | outlets | ||
) |
void calc_outlet_coords_ground | ( | std::vector< outlet_t > & | outlets, |
const outlet_template_t & | outlet_template, | ||
CvMat * | intrinsic_matrix, | ||
CvMat * | distortion_params | ||
) |
void calc_outlet_dist_stat | ( | const std::vector< outlet_t > & | outlets, |
float & | mean, | ||
float & | stddev | ||
) |
void calc_outlet_tuple_dist_stat | ( | const std::vector< outlet_t > & | outlets, |
float & | ground_dist_x1, | ||
float & | ground_dist_x2, | ||
float & | ground_dist_y | ||
) |
IplImage* calc_tuple_distance_map | ( | IplImage * | tuple_mask | ) |
Definition at line 2001 of file outlet_model.cpp.
void cvRectangle | ( | IplImage * | img, |
CvRect | rect, | ||
CvScalar | color, | ||
int | thickness | ||
) | [inline] |
Definition at line 79 of file outlet_model.h.
void detect_outlets | ( | IplImage * | src, |
std::vector< outlet_feature_t > & | features, | ||
std::vector< outlet_t > & | outlets, | ||
outlet_tuple_t * | outlet_tuple, | ||
const char * | output_path = 0 , |
||
const char * | filename = 0 |
||
) |
CvRect double_rect | ( | CvRect | small_rect | ) | [inline] |
Definition at line 103 of file outlet_model.h.
void draw_outlets | ( | IplImage * | temp, |
const std::vector< outlet_t > & | outlets | ||
) |
void DrawKeypoints | ( | IplImage * | img, |
std::vector< outlet_feature_t > | features | ||
) |
Definition at line 27 of file outlet_model.cpp.
void estimateCameraPosition | ( | const std::vector< KeyPointEx > & | image_points, |
const std::vector< cv::Point3f > & | object_points, | ||
CvMat * | intrinsic_matrix, | ||
CvMat * | distortion_params, | ||
CvMat * | rotation_vector, | ||
CvMat * | translation_vector | ||
) |
void extract_intensity_features | ( | IplImage * | grey, |
const std::vector< outlet_feature_t > & | keypts, | ||
CvMat ** | mat, | ||
int | equalize_hist = 0 , |
||
const std::vector< int > & | labels = std::vector< int >() , |
||
const char * | buf = 0 |
||
) |
CvPoint feature_center | ( | outlet_feature_t | feature | ) | [inline] |
Definition at line 31 of file outlet_model.h.
void filter_canny | ( | IplImage * | grey, |
std::vector< outlet_feature_t > & | features | ||
) |
void filter_features_distance_mask | ( | std::vector< outlet_feature_t > & | features, |
IplImage * | distance_map | ||
) |
void filter_features_mask | ( | std::vector< outlet_feature_t > & | features, |
IplImage * | mask | ||
) |
void filter_negative_samples | ( | const std::vector< CvRect > & | rects, |
std::vector< outlet_feature_t > & | keypts, | ||
float | fraction | ||
) |
void filter_outlets | ( | IplImage * | grey, |
std::vector< outlet_t > & | outlets, | ||
CvRTrees * | rtrees | ||
) |
void filter_outlets_mask | ( | std::vector< outlet_t > & | outlets, |
IplImage * | mask | ||
) |
void filter_outlets_size | ( | std::vector< outlet_t > & | outlets | ) |
int filter_outlets_templ | ( | std::vector< outlet_t > & | outlets, |
const char * | filename | ||
) |
void filter_outlets_templ_ex | ( | std::vector< outlet_t > & | outlets, |
CvMat * | map_matrix, | ||
IplImage * | mask | ||
) |
int filter_outlets_templmatch | ( | IplImage * | src, |
std::vector< outlet_t > & | outlets, | ||
IplImage * | templ, | ||
const char * | output_path, | ||
const char * | filename = 0 , |
||
CvMat ** | homography = 0 , |
||
CvPoint3D32f * | origin = 0 , |
||
CvPoint2D32f * | scale = 0 |
||
) |
void filter_outlets_tuple | ( | std::vector< outlet_t > & | outlets, |
IplImage * | tuple_mask, | ||
CvPoint2D32f | hor_dir | ||
) |
void FilterPoints | ( | IplImage * | grey, |
std::vector< outlet_feature_t > & | keypts, | ||
const CvRTrees * | rtrees | ||
) |
int find_origin_chessboard | ( | IplImage * | src, |
CvMat * | map_matrix, | ||
CvPoint3D32f & | origin, | ||
float | bar_length | ||
) |
Definition at line 1944 of file outlet_model.cpp.
void find_outlet_features | ( | IplImage * | src, |
std::vector< outlet_feature_t > & | features, | ||
const char * | filename | ||
) |
void find_outlet_features_fast | ( | IplImage * | src, |
std::vector< outlet_feature_t > & | features, | ||
float | hole_contrast, | ||
const char * | output_path, | ||
const char * | filename | ||
) |
void findPreciseGroundHoleLocation | ( | IplImage * | grey, |
cv::Point2f | center, | ||
cv::Point2f & | hole | ||
) |
Definition at line 2232 of file outlet_model.cpp.
void findPreciseOutletLocations | ( | IplImage * | grey, |
const outlet_template_t & | outlet_template, | ||
std::vector< outlet_t > & | outlets | ||
) |
void findPreciseOutletLocationsAvg | ( | IplImage * | grey, |
const outlet_template_t & | outlet_template, | ||
std::vector< outlet_t > & | outlets | ||
) |
void findPrecisePowerHoleLocation | ( | IplImage * | grey, |
cv::Point2f | center, | ||
cv::Point2f | dir, | ||
cv::Point2f | dir_perp, | ||
cv::Point2f & | hole | ||
) |
Definition at line 2206 of file outlet_model.cpp.
CvRect fit_rect | ( | CvRect | rect, |
IplImage * | img | ||
) | [inline] |
Definition at line 97 of file outlet_model.h.
CvRect fit_rect_roi | ( | CvRect | rect, |
CvRect | roi | ||
) | [inline] |
Definition at line 85 of file outlet_model.h.
void flipOutlet | ( | std::vector< outlet_t > & | outlets | ) |
Definition at line 2303 of file outlet_model.cpp.
int generate_outlet_samples | ( | IplImage * | grey, |
outlet_t | outlet, | ||
int | count, | ||
CvMat ** | predictors, | ||
const char * | filename = 0 |
||
) |
Definition at line 1249 of file outlet_model.cpp.
void get_outlet_coordinates | ( | const outlet_t & | outlet, |
CvPoint3D32f * | points | ||
) |
Definition at line 2106 of file outlet_model.cpp.
void getImagePoints | ( | const std::vector< outlet_t > & | outlets, |
std::vector< cv::Point2f > & | image_points, | ||
std::vector< bool > & | is_detected | ||
) |
Definition at line 1698 of file outlet_model.cpp.
CvRect getOutletROI | ( | const std::vector< outlet_t > & | outlets | ) |
int is_point_incenter_roi | ( | const std::vector< CvRect > & | rects, |
CvPoint | point | ||
) |
int is_point_inside_rect | ( | CvRect | rect, |
CvPoint | point | ||
) | [inline] |
Definition at line 109 of file outlet_model.h.
int load_homography_map | ( | const char * | filename, |
CvMat ** | map_matrix | ||
) |
Definition at line 1602 of file outlet_model.cpp.
IplImage* load_match_template_mask | ( | const char * | filename | ) |
Definition at line 1593 of file outlet_model.cpp.
void move_features | ( | std::vector< outlet_feature_t > & | features, |
CvPoint | origin | ||
) |
CvRect outlet_rect | ( | outlet_t | outlet | ) |
Definition at line 609 of file outlet_model.cpp.
float outlet_size | ( | outlet_t | outlet | ) | [inline] |
Definition at line 603 of file outlet_model.cpp.
void read_outlet_roi | ( | const char * | filename, |
outlet_roi_t & | outlet_roi | ||
) |
Definition at line 783 of file outlet_model.cpp.
void select_central_outlets | ( | std::vector< outlet_t > & | outlets, |
int | count | ||
) |
void select_orient_outlets | ( | CvPoint2D32f | orientation, |
std::vector< outlet_t > & | outlets, | ||
int | count = 0 |
||
) |
int select_orient_outlets_ex | ( | IplImage * | grey, |
std::vector< outlet_t > & | outlets, | ||
const char * | filename = 0 |
||
) |
void train_outlet_model | ( | const char * | path, |
const char * | config_filename, | ||
const char * | roi_filename, | ||
const char * | forest_filename | ||
) |
Definition at line 1300 of file outlet_model.cpp.
CvMat* vector2mat | ( | const std::vector< int > & | vec | ) |
void write_pr | ( | const char * | pr_filename, |
const char * | image_filename, | ||
const outlet_roi_t & | outlet_roi, | ||
const std::vector< outlet_t > & | outlets | ||
) |