Object recognition will fail if objects won't have specific shapes. Crushed bottle may look like a piece of paper and so on.
What could be done in theory is recognition with spectroscopy which doesn't require artificial intelligence to work. You could do it in two ways:
- one is to use few cameras each with selected bandpass filter. You would have to find absorption bands that would allow differentiating metal from plastic from paper etc. and then match bandpass filters for those bands so that each camera catches light from given band
- second is to use a spectroscope (with a prism or diffraction grating and the camera is used to capture the spectrum) - you don't need bandpass filters, but you can only analyze one point at a time - you can't take a picture of a whole pile of trash, you have to target spectroscope at every object to determine what it is. Could allow more detailed identification (type of metal/alloy, type of plastic...)
Although it may be very hard to find a good bands withing the visual spectrum for this (most of then is in NIR 1-few A which isn't covered by silicon based CCDs and CMOS sensors). In such cases to keep the cost low you could try using InGaAs photodiode + filter + lens and target it at given object for identification (like it was a camera with 1 pixel