Skip to content

What is HOGDescriptor::groupRectangles supposed to do? #6309

@mlilien

Description

@mlilien

Please state the information for your system

  • OpenCV version: 3.1
  • Host OS: Windows 10
  • Compiler & CMake: msvc 2013 & CMake 3.4.3

In which part of the OpenCV library you got the issue?

Examples:

  • objdetect
  • HOGDescriptor::detectMultiScale with useMeanshiftGrouping == false and hitThreshold == 1.01 on an image which includes an rectangle (object) with weight 1.013

Expected behaviour

detectMultiScale return the rectangle with weight 1.013

Actual behaviour

  • before HOGDescriptor::groupRectangles gets called in HOGDescriptor::detectMultiScale the variables
    foundLocations and foundWeights include the rectangle with weight 1.013 and are of length 1.
  • error: HOGDescriptor::groupRectangle returns empty foundLocations and foundWeights so HOGDescriptor::detectMultiScale returns with empty foundLocations and foundWeights
  • if the variable hitThreshold is set to 0, I get a lot of false positive rectangles with my trained HOG detector. These false Positives are roughly equally distributed over the image. HOGDescriptor::groupRectangles returns only one location which is approximately the center of the image.
  • What is HOGDescriptor::groupRectangles supposed to do? My proposal is to remove the call to HOGDescriptor::groupRectangles in HOGDescriptor::detectMultiScale when called with useMeanshiftGrouping == false. So the user can do the grouping himself.

Best Regards, Marcel

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions