gocv icon indicating copy to clipboard operation
gocv copied to clipboard

HOGDefaultPeopleDetector seems not to be correct

Open endir opened this issue 1 year ago • 0 comments

I am trying to implement the default hog people detector and for some reason it always detects a something. Seems like a bug or I am doing smth terrible wrong(most probably the second). A similar python code seems to work in my system.

Steps to Reproduce

Code:

package main

import ( "encoding/json" "fmt" "gocv.io/x/gocv" )

func printStruct(i interface{}) { b, err := json.Marshal(i) if err != nil { fmt.Println(err) return } fmt.Println(string(b)) }

func main() { imagePath := "empty.jpg" img := gocv.IMRead(imagePath, gocv.IMReadGrayScale) hog := gocv.NewHOGDescriptor() defer hog.Close() d := gocv.HOGDefaultPeopleDetector() defer d.Close() hog.SetSVMDetector(d) rects := hog.DetectMultiScale(img) printStruct(rects) }

The empty.jpg image can be created by convert -size 500x500 xc:white empty.jpg

Your Environment

  • Operating System and version: Archlinux
  • OpenCV version used: opencv 4.7.0
  • How did you install OpenCV? From Pacman
  • GoCV version used: v0.32.1
  • Go version: 1.20
  • Did you run the env.sh or env.cmd script before trying to go run or go build? go run

endir avatar Feb 26 '23 21:02 endir