stefanopini / simple-HRNet

Multi-person Human Pose Estimation with HRNet in Pytorch
GNU General Public License v3.0
570 stars 106 forks source link

Questions and doubts ? #4

Closed timtensor closed 5 years ago

timtensor commented 5 years ago

Hi Stefano, After being able to run ,simpleHRnet , i was quite happy and played around a bit, trying with different weights and configurations. I have a few collective questions on how to make , the pose estimation more robust .

a) Apparently the pretrained weights 'pose_hrnet_w48_256x192.pth' seems to be a good trade off between speed and estimation b) Is there a way to increase the speed of inference ? (Frame rate ) c) Will we get a better performance if we resize the image sizes to '384x288' d) The default max_batch_size is set to 32 , can we change it to other vaiue and will it increase the accuracy ? e) The parameters in 'non_max_supression' conf_thres and nms_thres . can i guess effect the estimation . Lower the conf_thres i guess the higher the joints wil be predicted? f) For multiperson , if i want to change the pretrained Yolo weights , I guess i have to define them in the Yolov3.py file ?

These are some questions that pop up initially. I will try to play around with it .

stefanopini commented 5 years ago

Hi @timtensor

a) I do agree :wink: On the other hand, if the image resolution is high and you're looking for accuracy, you should consider using the model pose_hrnet_w48_384x288.pth b) Yes, slightly, using smaller images, increasing the batch size (if you are not interested in real time), changing the interpolation algorithm (parameter interpolation), and disabling the multiperson support (if not needed) c) YoloV3 takes images of size 416x416. You may get slightly better performance using this resolution d) Accuracy does not depend on batch size e) Yes, for the person detections. See https://github.com/eriklindernoren/PyTorch-YOLOv3/blob/47b7c912877ca69db35b8af3a38d6522681b3bb3/utils/utils.py#L226 f) You can just set a different weights path with the parameter yolo_weights_path

Hope it helps :slightly_smiling_face:

timtensor commented 5 years ago

Thank you for the answers. I will continue to explore more and come back if i have more queries or questions. I will close this issue now . Thank you !

Sorry i forgot to ask is the weight pose_hrnet_w48_346x260.pth pre trained models , or perhaps you meant something else ?

stefanopini commented 5 years ago

Sorry, I meant pose_hrnet_w48_384x288.pth which is one of the pre-trained models.

timtensor commented 5 years ago

@stefanopini thank you ! for the clarifications , if we are only aiming accuracy we should use the pretrained model (just trying to summarize) a) pose_hrnet_w48_384x288.pth b) Resize the input video ? Is there a specific dimensions to look for ? c) Enabling multiperson with the flag --single person

Is there some other parameters that can be used to fine the pre trained model ?

stefanopini commented 5 years ago

a) yes b) to some extent, the higher the better c) it depends on what you need. If you're sure to have only one person at a time you can disable the multiperson support with the flag --single_person

That should be all :slightly_smiling_face: