How is this different from the colour chart idea? If we know how some actual KNOWN RGB pixels look in a particular setup, we can apply the same filter across the image. Right?
Isn't the blue shift of a known color already a measure of the amount of water between the object and the camera- and therefore its distance? Knowing the true color of a fish, a seaweed or the sand isn't already enough to infer distances and color-correct?
(1) often with pretty bad results, but consider the variety of scenes and object above water compared to the average underwater scenario.
I am pretty sure that in most cases those colours are well known.
With regular colour correction things have a slightly different colour regardless of how far away they are from the camera, so the task is way simpler.