This program is part of Netpbm.
ppmflash reads a PPM image as input. It changes the color of each pixel to bring it a specified amount closer to white. It generates a PPM image of the result.
flashfactor is a real number between 0 and 1, inclusive. ppmflash increases the intensity of each RGB component by the fraction flashfactor of the difference between the current value and full intensity. So if a pixel contains 60% full red, 10% full green, and no blue and you specify 0.5 (half), ppmflash increases the red to 80% (because it was 40% from full intensity, so it adds half of 40% to the original 60%), the green to 55%, and the blue to 50%.
If flashfactor is zero, the output is identical to the input. If flashfactor is one, the output is all white.
ppmbrighten does a more normal kind of brightening. pamfunc does a very simple brightening. Both ppmbrighten and pamfunc can reduce brightness as well.
pnmgamma is another way people do a similar brightening, though it isn't really intended for that.