Robot scan and pick

Anyone one had an idea of picking parts from a bin like this(as shown in fig) in which parts are randomly placed. the robot should scan and pick. Anyone knows this?

See the “Bin picking” layout in eCat. It of course heavily relies on custom Python scripting.