I have found a project using IBM's watson visual recognition software.
Link to Project
I have tried to recreate this project with a RaspberryPi using Python but there is a lot of work required to build a large enough dataset for Watson to learn to distinguish between to similar Lego brick.
I think the best solution is a community project where people add to a Lego data set for machine learning
https://github.com/Gadgeteering/Lego-Machine-Learning-Dataset
Here is my latest Lego Idea
If you like it support it on Lego Ideas
But if not please support the RNLI
Edit by WhiteFang: Please note posting of links with regards to self-promotion on LEGO Ideas is not encouraged. Thank you for your attention.
I have created a simpler tipper wagon, using a track side mounted gear rack, the gear on the wagon picks up on this and rotates the wagon to empty the tipper wagon.
If you want more information check out the link
https://ideas.lego.com/projects/93705
I looked at the Lego Battery Pack at 60 quid plus charger at 20 quid and found this very expensive for a 2200mah 7.2 lipo battery
I did try Nimh Battery but at a nominal voltage of 1.2v compared to a normal disposal battery at 1.5v they did work.
The best solution that I have found is NiZn batteries that have a nominal voltage of 1.6v.
Hobbyking NiZn Battery