As I understand, the overall colour average can be obtained by summing the individual r, g, b values of all pixels within and image and dividing by the number of pixels to produce a new tri-vector.
What are the applications of such techniques?
Well, I can't honestly say that I ever used it, there was a moment when I was considering doing something similar for some quick-and-dirty "shadow" correction.
My friends showed me a flight video, where in the middle of the video there was some dark patches in every frame due to their propeller. To me it looked like a patch in very dark shadow (I never actually got to play with the video so I can't be certain - if the patches actually were the way I suppose or if this would work).
If I didn't want to do any serious correction technique but just spend a bit of time on it for myself, here's what I would do:
This could be used to tell time of day. Sunlight at high noon is more or less white. Just after sunrise or just before sunset, there's a lot of orange. At night, maybe there are sodium vapor parking lot lights putting out that lovely harsh yellow light which makes our cars look funky. The image may have colored objects, green grass and trees, blue sky, so who knows what the average will turn out to be, but for a fixed camera looking at the same scene, changes in the average color could be used to tell time of day.
Another use: sometimes I assemble a few hundred photos of a slowly changing object, taken by a fixed camera, into an animation. There might not be any consistency in exposure or lighting. Comparing average colors, I can tell (or rather, the algorithm I write in Python, can tell) which images need correction. Dividing each image by its average color, and multiplying by some standardized color, typically the average of all average colors, makes the individual frames consistent.