1. Open the file. Choose File --> Open --> Enter the image name to be fixed.
2. Choose Layer ---> Duplicate Layer (Ctrl J) to duplicate the layer, which will create a "background copy (Layer 1)" layer (Figure 1 B).
3. In your layers palette, click on the little eye icon to the left of the "background copy" layer to make that layer invisible (Figure 1 A).
4. Click on the "background" layer to make that layer active (Figure 1 C).
5. Perform an auto contrast on this "background" layer (Ctrl-Alt-Shift-L). Don't worry if the highlights get blown.
6. Now click on the "background copy" layer to make it active and the little eye icon to the left of this layer should be seen again (Figure 2 A & B).
7. Choose Select ---> Color Range. Under the Select drop down menu choose "Shadows" from the list and click "OK".
8. Choose Select ---> Feather. In the "Feather" window, choose a relatively large feather radius value (between 50-120 or so) and click "OK". For the above image, 75 was chosen.
9. Choose Select ---> Inverse to invert the selection (Ctrl-Shift-I)
10. Choose Layer ---> Add Layer Mask ---> Reveal Selection.
11. Choose Layer ---> Flatten Image to flatten the layers. Save the file with a new name.