You can also select via velocity as well...I have used Undupe and it sorta kinda works, in a "down and dirty" way ..but I have found the Select by filter to be , more accurate and in the end, quicker. Many times in Undup I removed notes I needed.
As an example, I just start with low velocity and work up, I mean if it is hidden, and has the same start time, chances are it is not even being heard anyway..so I would look at a PRV determine what is the shortest note I want to keep and go from there...
EDIT: TBH, I am not saying Undupe is useless, nor criticising folks for using it, just there are other tools available