Why is the robust loss function \rho applied to the residual's squared norm instead of its norm?

1,127 views
Skip to first unread message

Chi Zhang

unread,
Aug 1, 2016, 2:13:06 AM8/1/16
to Ceres Solver
Hi,

I have some confusion about the loss function \rho in the overall objective function (Equation 1) that ceres is optimizing. ( http://ceres-solver.org/nnls_tutorial.html#introduction )  My question is:
  • Shouldn't the robust loss function \rho_i be applied to the the norm of the i-th residual, instead of to its squared norm?

For example, if I choose \rho to be a Huber loss function in a bundle adjustment problem. And there was an outlier of wrong correspondences which causes a reprojection_error=200 pixel. Before the error is passed to the Huber loss function, it would have been magnified to 200*200, which will surely bias the whole optimization. Even with the Huber loss function applied, the error would still be 200*200 - \epsilon, which doesn't seem to be to robust. 

I'm rather confused how the robust loss functions work in ceres. Am I getting the whole idea wrong?

Best,
Chi

Sameer Agarwal

unread,
Aug 1, 2016, 2:16:27 AM8/1/16
to Ceres Solver
Chi,
You can apply it to either, its just a matter of how you code the loss function. We assume that we apply it to the squared norm, therefore the identity/null loss function when applied to the cost function gives you the squared norm.
And the SoftL1 is equivalent to (except for a small region) taking the squareroot of the squared norm.
Sameer


--
You received this message because you are subscribed to the Google Groups "Ceres Solver" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceres-solver...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceres-solver/df3ed015-1401-4169-8730-523d89b8ba95%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Chi Zhang

unread,
Aug 1, 2016, 2:34:38 AM8/1/16
to Ceres Solver
Hi Sameer,

Ah I see. Should have had checked the API references more carefully;-) Thank you very much!

Chi
Reply all
Reply to author
Forward
0 new messages