Relative ball position model for front vision. More...
#include <>>

Public Member Functions | |
| FrontBallRelativePos (unsigned int image_width, unsigned int image_height, float camera_height, float camera_offset_x, float camera_offset_y, float camera_ori, float horizontal_angle, float vertical_angle, float ball_circumference) | |
| Constructor. | |
| virtual const char * | get_name () const |
| Get name of relative position model. | |
| virtual void | set_radius (float r) |
| Set radius of a found circle. | |
| virtual void | set_center (float x, float y) |
| Set center of a found circle. | |
| virtual void | set_center (const center_in_roi_t &c) |
| Set center of a found circle. | |
| virtual void | set_pan_tilt (float pan=0.0f, float tilt=0.0f) |
| Set camera pan and tilt. | |
| virtual void | get_pan_tilt (float *pan, float *tilt) const |
| Get camera pan tilt. | |
| virtual void | set_horizontal_angle (float angle_deg) |
| Set horizontal viewing angle. | |
| virtual void | set_vertical_angle (float angle_deg) |
| Set vertical viewing angle. | |
| virtual float | get_distance () const |
| Get distance to object. | |
| virtual float | get_x () const |
| Get relative X coordinate of object. | |
| virtual float | get_y () const |
| Get relative Y coordinate of object. | |
| virtual float | get_bearing () const |
| Get bearing (horizontal angle) to object. | |
| virtual float | get_slope () const |
| Get slope (vertical angle) to object. | |
| virtual float | get_radius () const |
| Get the ball radius. | |
| virtual void | calc () |
| Calculate position data. | |
| virtual void | calc_unfiltered () |
| Calculate data unfiltered. | |
| virtual void | reset () |
| Reset all data. | |
| virtual bool | is_pos_valid () const |
| Check if position is valid. | |
Relative ball position model for front vision.
Definition at line 39 of file front_ball.h.
| firevision::FrontBallRelativePos::FrontBallRelativePos | ( | unsigned int | image_width, | |
| unsigned int | image_height, | |||
| float | camera_height, | |||
| float | camera_offset_x, | |||
| float | camera_offset_y, | |||
| float | camera_ori, | |||
| float | horizontal_angle, | |||
| float | vertical_angle, | |||
| float | ball_circumference | |||
| ) |
Constructor.
| image_width | width of image in pixels | |
| image_height | height of image in pixels | |
| camera_height | height of camera in meters | |
| camera_offset_x | camera offset of the motor axis in x direction | |
| camera_offset_y | camera offset of the motor axis in y direction | |
| camera_ori | camera orientation compared to the robot | |
| horizontal_angle | horizontal viewing angle (in degree) | |
| vertical_angle | vertical viewing angle (in degree) | |
| ball_circumference | ball circumference |
Definition at line 55 of file front_ball.cpp.
References fawkes::deg2rad(), firevision::center_in_roi_t::x, and firevision::center_in_roi_t::y.
| void firevision::FrontBallRelativePos::calc | ( | ) | [virtual] |
Calculate position data.
Call this method if all relevant data (set(Radius|Center|PanTilt)) has been set, after this valid data can be retrieved via get*
Implements firevision::RelativePositionModel.
Definition at line 236 of file front_ball.cpp.
References firevision::center_in_roi_t::x, and firevision::center_in_roi_t::y.
| void firevision::FrontBallRelativePos::calc_unfiltered | ( | ) | [virtual] |
Calculate data unfiltered.
Same as calc(), but without any filtering (i.e. no Kalman filter).
Implements firevision::RelativePositionModel.
Definition at line 290 of file front_ball.cpp.
References firevision::center_in_roi_t::x, and firevision::center_in_roi_t::y.
| float firevision::FrontBallRelativePos::get_bearing | ( | void | ) | const [virtual] |
Get bearing (horizontal angle) to object.
Implements firevision::RelativePositionModel.
Definition at line 125 of file front_ball.cpp.
| float firevision::FrontBallRelativePos::get_distance | ( | ) | const [virtual] |
Get distance to object.
Implements firevision::RelativePositionModel.
Definition at line 118 of file front_ball.cpp.
| const char * firevision::FrontBallRelativePos::get_name | ( | void | ) | const [virtual] |
Get name of relative position model.
Implements firevision::RelativePositionModel.
Definition at line 202 of file front_ball.cpp.
| void firevision::FrontBallRelativePos::get_pan_tilt | ( | float * | pan, | |
| float * | tilt | |||
| ) | const [virtual] |
Get camera pan tilt.
| pan | contains pan value (rad) upon return | |
| tilt | contains tilt value (rad) upon return |
Implements firevision::RelativePositionModel.
Definition at line 194 of file front_ball.cpp.
| float firevision::FrontBallRelativePos::get_radius | ( | ) | const [virtual] |
| float firevision::FrontBallRelativePos::get_slope | ( | ) | const [virtual] |
Get slope (vertical angle) to object.
Implements firevision::RelativePositionModel.
Definition at line 132 of file front_ball.cpp.
| float firevision::FrontBallRelativePos::get_x | ( | void | ) | const [virtual] |
Get relative X coordinate of object.
Implements firevision::RelativePositionModel.
Definition at line 146 of file front_ball.cpp.
| float firevision::FrontBallRelativePos::get_y | ( | void | ) | const [virtual] |
Get relative Y coordinate of object.
Implements firevision::RelativePositionModel.
Definition at line 139 of file front_ball.cpp.
| bool firevision::FrontBallRelativePos::is_pos_valid | ( | ) | const [virtual] |
Check if position is valid.
Implements firevision::RelativePositionModel.
Definition at line 283 of file front_ball.cpp.
| void firevision::FrontBallRelativePos::reset | ( | ) | [virtual] |
Reset all data.
This must be called if the object is not visible.
Implements firevision::RelativePositionModel.
Definition at line 229 of file front_ball.cpp.
| void firevision::FrontBallRelativePos::set_center | ( | const center_in_roi_t & | c | ) | [virtual] |
Set center of a found circle.
This is especially used for ball position implementations.
| c | center |
Implements firevision::RelativePositionModel.
Definition at line 161 of file front_ball.cpp.
References firevision::center_in_roi_t::x, and firevision::center_in_roi_t::y.
| void firevision::FrontBallRelativePos::set_center | ( | float | x, | |
| float | y | |||
| ) | [virtual] |
Set center of a found circle.
This is especially used for ball position implementations.
| x | x position in image (pixels) | |
| y | y position in image (pixels) |
Implements firevision::RelativePositionModel.
Definition at line 153 of file front_ball.cpp.
References firevision::center_in_roi_t::x, and firevision::center_in_roi_t::y.
| void firevision::FrontBallRelativePos::set_horizontal_angle | ( | float | angle_deg | ) | [virtual] |
Set horizontal viewing angle.
| angle_deg | horizontal viewing angle in degree |
Definition at line 212 of file front_ball.cpp.
References fawkes::deg2rad().
| void firevision::FrontBallRelativePos::set_pan_tilt | ( | float | pan = 0.0f, |
|
| float | tilt = 0.0f | |||
| ) | [virtual] |
Set camera pan and tilt.
| pan | pan value (rad) | |
| tilt | tilt value (rad) |
Implements firevision::RelativePositionModel.
Definition at line 186 of file front_ball.cpp.
| void firevision::FrontBallRelativePos::set_radius | ( | float | r | ) | [virtual] |
Set radius of a found circle.
This is especially used for ball position implementations.
| r | radius |
Implements firevision::RelativePositionModel.
Definition at line 169 of file front_ball.cpp.
| void firevision::FrontBallRelativePos::set_vertical_angle | ( | float | angle_deg | ) | [virtual] |
Set vertical viewing angle.
| angle_deg | horizontal viewing angle in degree |
Definition at line 222 of file front_ball.cpp.
References fawkes::deg2rad().
1.7.1