# opentl::modalities::HoughLines Class Reference

Inherits opentl::modalities::Modality.

List of all members.

## Public Types
## Public Member Functions
virtual modalities::Modality * | clone () const
| Clone this class and all potential childs RECURSIVELY!! (deep copy).
opentl::core::cvdata::VisContourSamplePts * | getContourData (int s=0)
| HoughLines (const HoughLines &c)
| Deep Copy Constructor.
| HoughLines (const ObjModelPtrVector &objModels, opentl::modelprojection::Warp *warp, opentl::modelprojection::GLScene *scene, opentl::modelprojection::GLRenderer *glRender, int camIdx, modelprojection::ContourSampler *contourSampler=NULL)
| Constructor.
virtual void | init ()
| Allocate data structures required by this class.
virtual int | matchFeatLevel (const TargetPtrVector &targets, T_MEAS_FEATPtrVector &outputMeas, std::size_t partitionIdx)
| Matching on feature level match projected edge lines + hough transform with detected image hough lines.
virtual int | preProcess (const opentl::core::cvdata::Image &image, const std::vector< std::vector< int > > &preProcessROIs)
| Compute the Hough map of I (e.g. with Gray+Canny+HoughLines2), and store it into mImageDebugOutput (when Debug is enabled --matchF_enableDebugOutput--).
virtual int | sampleModelFeatures (const TargetPtrVector &targets)
| Do visible edge sample hough lines computation.
void | setMeasStd (double std)
virtual | ~HoughLines ()
| Destructor.
## Public Attributes
opentl::core::cvdata::Image * | mImageDebugOutput
| Debug Image output.

## Member Enumeration Documentation

enum opentl::modalities::HoughLines::HougLineDetectorType

Possible Hough Lines modes for image feature detection.

Enumerator:

  HL_STD | For this moment only HL_PROBABILISTIC is available
  HL_PROBABILISTIC |
  HL_MULTISCALE |
  HL_GRADIENT |

enum opentl::modalities::HoughLines::OfflineParameters

Enumerator:

  houghlines_generate_contourSampler | (bool) If true, create the visibility algorithm internally; else, use a pre-defined one (contourSampler)
  houghlines_construct_loadShaderCodeFromFile | (bool) Load Shader code from File
  houghlines_construct_sampleSilhouetteEdgesOnly | (bool) Sample silhouette edged only
  houghlines_construct_MaxSamplePointsPerTarget | (int) maximum sample points per target
  houghlines_sample_discardBackgroundEdgeWithinPixelRange | (unsigned int) discard background edge within pixel range
  houghlines_sample_thetaDegRidge |
  houghlines_sample_thetaDegValley |
  houghlines_detectorType | Define the type of the HL detector Standard, Probabilistic or Multi-Scale, for the moment only the PROBABILISTIC Method is implemented.
  houghlines_rho_resolution | Distance resolution in pixel-related units.
  houghlines_theta_resolution | Angle resolution measured in radians.
  houghlines_accum_threshold | Threshold parameter. A line is returned by the function if the corresponding accumulator value is greater than threshold.
  houghlines_min_segment_length | the Minimum length of detected segments.
  houghlines_max_segment_gap | the maximum gap between line segments lying on the same line to treat them as a single line segment (i.e. to join them).
  houghlines_search_window_factor | the % of the Screen bounding_box area that is used as a search window e.g. 0.1 is equivalent to 10% of the object model bounding box area.
  houghlines_max_error_slope | the maximum slope error (in order to match edges in radians, always positive ).
  OFFLINE_COUNT |

Reimplemented from opentl::modalities::Modality.

enum opentl::modalities::HoughLines::OnlineParameters

Enumerator:

  houghlines_sample_computeScreenPointJacobians | (bool) compute screen point jacobians
  houghlines_preProcess_cannyThreshold1 | (double) canny threshold1
  houghlines_preProcess_cannyThreshold2 | (double) canny threshold2
  houghlines_preProcess_cannyAperture_size | Aperture parameter for the Sobel operator.
  houghlines_matchF_alpha | (double) Missing detection rate
  houghlines_matchF_enableDebugOutput | (bool) enable debug output
  houghlines_matchFeatLevel_useFixedCov | (bool) use fixed covariance
  houghlines_matchFeatLevel_fixedCov | (double) fixed covariance value
  houghlines_CovarianceMatrixValues | (opentl::math::Vector4) Values of the main diagonal of Covariance Matrix: Rslope_error(grad),Rx_cm_error(pixels),Ry_cm_error(pixels),Rlength_error(pixels)
  ONLINE_COUNT |

Reimplemented from opentl::modalities::Modality.

## Constructor & Destructor Documentation

opentl::modalities::HoughLines::HoughLines | ( | const ObjModelPtrVector & | objModels,
|  | opentl::modelprojection::Warp * | warp,
|  | opentl::modelprojection::GLScene * | scene,
|  | opentl::modelprojection::GLRenderer * | glRender,
|  | int | camIdx,
|  | modelprojection::ContourSampler * | contourSampler = `NULL` |
| ) |  |  |

Constructor.

opentl::modalities::HoughLines::HoughLines | ( | const HoughLines & | c | ) |

Deep Copy Constructor.

virtual opentl::modalities::HoughLines::~HoughLines | ( |  | ) | `[virtual]`

Destructor.

## Member Function Documentation

virtual modalities::Modality* opentl::modalities::HoughLines::clone | ( |  | ) | const`[virtual]`

Clone this class and all potential childs RECURSIVELY!! (deep copy).

Implements opentl::modalities::Modality.

opentl::core::cvdata::VisContourSamplePts* opentl::modalities::HoughLines::getContourData | ( | int | s = `0` | ) | `[inline]`

virtual void opentl::modalities::HoughLines::init | ( |  | ) | `[virtual]`

Allocate data structures required by this class.

Reimplemented from opentl::modalities::Modality.

virtual int opentl::modalities::HoughLines::matchFeatLevel | ( | const TargetPtrVector & | targets,
|  | T_MEAS_FEATPtrVector & | outputMeas,
|  | std::size_t | partitionIdx |
| ) |  |  | `[virtual]`

Matching on feature level

- match projected edge lines + hough transform with detected image hough lines.

Parameters:

  | targets | Vector of targets
  | outputMeas | Feature-space measurements and residuals (one per target and internal state)

Reimplemented from opentl::modalities::Modality.

virtual int opentl::modalities::HoughLines::preProcess | ( | const opentl::core::cvdata::Image & | image,
|  | const std::vector< std::vector< int > > & | preProcessROIs |
| ) |  |  | `[virtual]`

Compute the Hough map of I (e.g. with Gray+Canny+HoughLines2), and store it into mImageDebugOutput (when Debug is enabled --matchF_enableDebugOutput--).

Parameters:

  | image | Input sensor data (e.g. camera image in RGB)
  | preProcessROIs | Regions of interest (x0,y0,width,height), per target

Reimplemented from opentl::modalities::Modality.

virtual int opentl::modalities::HoughLines::sampleModelFeatures | ( | const TargetPtrVector & | targets | ) | `[virtual]`

Do visible edge sample hough lines computation.

Parameters:

  | targets | Vector of targets

Reimplemented from opentl::modalities::Modality.

void opentl::modalities::HoughLines::setMeasStd | ( | double | std | ) | `[inline]`

## Member Data Documentation

opentl::core::cvdata::Image* opentl::modalities::HoughLines::mImageDebugOutput

Debug Image output.