Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Simulating the highlight recovery tool from Photoshop

I'm interested in processing a bitmap in Java using the same (or similar) technique as the Highlight recovery tool in Photoshop. (That would be the Image->Adjustments->Shadow/Highlight tool in CS4.)

I googled around, and found very little outside of discussion about existing tools that do the job.

Any ideas?

like image 222
Toby Deshane Avatar asked Oct 10 '22 02:10

Toby Deshane


1 Answers

Just guessing because I don't have Photoshop - only going by the descriptions I find on the web.

The Radius control is probably used in a Gaussian Blur to get the average value around a pixel, to determine its level of highlight or shadow. Shadows will be closer to 0 while highlights will be closer to 255. The exact definition of "close" will be determined by the Tonal Width control. For example, at 100% maybe the shadows go from 0-63 and the highlights go from 192-255.

The Amount corresponds to the amount of brightness change desired - again I don't know the scale, or what equates to 100%. Changing the brightness of the shadows requires multiplying by a constant value - for example to brighten it by 100% would require multiplying by 2. You want to scale this by the shadow value determined above. The highlights work similarly, except working down from 255 instead of up from 0.

like image 165
Mark Ransom Avatar answered Oct 13 '22 10:10

Mark Ransom