Melhorando a precisão do detector de pessoas OpenCV HOG

Estou trabalhando em um projeto. Uma parte do projeto consiste em integrar o detector de pessoas HOG do OpenCV com um streaming de câmera.

Atualmente, ele está trabalhando com a câmera e o detector HOG básico (CPP detectMultiScale ->http://docs.opencv.org/modules/gpu/doc/object_detection.html) Mas não funcione muito bem ... As detecções são muito barulhentas e o algoritmo não é muito preciso ...

Por quê?

A imagem da minha câmera é 640 x 480 pixels.

O código do snippet que estou usando é:

std::vector<cv::Rect> found, found_filtered;
cv::HOGDescriptor hog;
hog.setSVMDetector(cv::HOGDescriptor::getDefaultPeopleDetector());
hog.detectMultiScale(image, found, 0, cv::Size(8,8), cv::Size(32,32), 1.05, 2);

Por que não funciona corretamente? Que necessidade de melhorar a precisão? É necessário algum tamanho de imagem específico?

PS: Você conhece algum algoritmo preciso de detecção de pessoas, mais rápido e desenvolvido em cpp ??

questionAnswers(1)

yourAnswerToTheQuestion