I originally wrote this for someone who was (and is, I suppose) colourblind to help him make WB adjustments without having to visually verfiy it. This technique works to get the balance pretty close to accurate (in most lighting situations) and could be used alongside greypoint selection.
Open your image and make an adjustment layer for levels.
Don’t edit the RGB – choose the channels individually (Ctrl+1, Ctrl+2, Ctrl+3).
So, starting with Red, check the histogram for “unused frequencies” that contain no picture information – i.e. that have a zero value and don’t register on the histogram.
Now you can move the black input slider up to where the histogram first starts to register something, or like the example below, up to where it first significantly registers something (i.e. not including the very low value at the bottom)
Now do the same for the white slider, although I’d be more circumspect with this or you can blow highlights quite easily. In my example, you’ll see that I’ve not cut into the histogram at all at the top end.
Do the same for all three channels and you’ll have a much more balanced tonal range.
Very occasionally this can lead to slightly odd (but sometimes interesting) results. In the main, though, this technique is pretty effective and will sort out very incorrect white balance, with trade-offs in absolute quality, obviously. I’ve corrected shots taken in bright sunlight that had incandescent white balance set.