Yes this is possible with OpenCV. You will have to look at
- Making sure that you compensate for camera deformation.
- Defining the area of the rubics cube itself, by trying to find its outer boundaries.
- Then taking the corner points to transform the image to a standard squared area.
- Now find the crossing points of the seperate elements, defining individual regions of interest.
- Start doing color analysis on each position.
If you're just starting OpenCV, start by going through the basic tutorials first, then this might be a very nice project to start of with!