Classification of Colors using Machine Learning from an Array of Pixels From a very high level of possible machine learning methodologies, what method of classification would be good to identify objects or situations based on the color sensor pixel array (i.e., 16x16 array) being fed into Python?

For example, if I want to identify certain fruits based on the shape and color detected in the array:


banana is curved and yellow 
apple is circle and red
orange is circle and orange


If I am reading in a constant stream of data in this array form, are there any similar machine learning and classification applications that might be best suited for this type of application?
This is a classical problem for a convolutional neural network. Typically, these work with series of layers using 2d-convolution to find features (e.g., "curved" or "yellow"), then pooling (to borrow from adjacent convolutions), then some combination.

I think the main question is how you are planning to get a good, labeled, dataset (that is, one where a banana is already labeled as "banana", for training your NN).