michalfaber / keras_Realtime_Multi-Person_Pose_Estimation

Keras version of Realtime Multi-Person Pose Estimation project
Other
780 stars 372 forks source link

Low accuracy when training withou background #113

Open IgorMunizS opened 5 years ago

IgorMunizS commented 5 years ago

Hi, Could you please tell me why when I train without heatmap background, acc do not increase? The loss decrease normally, but acc never increase. And predicted heatmaps are gray images.

and why do you subtract from 1.0 here? heatmap[:, :, -1] = np.clip(1.0 - np.amax(heatmap, axis=2), 0.0, 1.0)

the background turns white...

Thanks!

rosivagyok commented 5 years ago

Hi @IgorMunizS .

Could you please tell me why when I train without heatmap background, acc do not increase?

In case of pose estimation accuracy is not a valid KPI, you should evaluate your model based on validation loss or measure mAP after some epochs. That should give feedback based on where your model's "accuracy" stands.

and why do you subtract from 1.0 here? heatmap[:, :, -1] = np.clip(1.0 - np.amax(heatmap, axis=2), 0.0, 1.0)

Think of the background channel as your true negative samples for the network, that allows the cpm to distinguish keypoints from everything else. Therefore, background becomes everything else than your generated ground truth keypoint gaussians, meaning the highest activations (1.0) will be background pixels in this case.