I need to visualize some data as gray-scale images after contrast enhancement. The processing algorithm must be built on few samples, and then it will be applied on unseen images (suppose, the [min, max] range is given).

I plan to:

  • Use sample images to estimate actual histogram H1.
  • Define desired histogram H2.
  • Build a transformation T (look-up table) that transforms H1 into H2.
  • Apply T on unseen images.

Question: How to build H2? Are there studies in regards to the optimal gray-scale histogram for Human eye?

Below are two examples of different transformations, applied on the same image:

enter image description here enter image description here

  • 4
    $\begingroup$ Optimal in what sense? $\endgroup$ Commented Jun 11, 2013 at 13:54
  • $\begingroup$ @geometrikal, I mean Human eye perception. $\endgroup$
    – Serg
    Commented Jun 11, 2013 at 17:06

2 Answers 2


Human eye perception is a complicated thing, the human perception tend to fail in different situations even in large changes of gray tones, also is capable of note minimal changes in the gray levels but all depends on the shape of the figure rather than its histogram.

In some cases you can enhance an image by applying histogram equalization techniques but this is only to emphasize some gray tones in order to observe more details in an image. This is related to gray images.


Medical imaging has the same problem of finding an optimal mapping of grey levels.

The optimal mapping depends on the task to accomplish. It is determined by trying a reasonable mapping compatible with the task, and then showing it to users to get their feedback.

In your case, you could determine the range of input values that matter to you (ie. define a window center and a window width), and apply a sigmoidal LUT so that you can precisely distinguish the values in this range and still be able to see the values outside this range but with less precision. You can use this for instance:

enter image description here

In addition there is a also solution to achieve "perceptually linear images", ie. that a difference of 2 in the pixel value is perceived as being twice more than a difference of 1 in pixel value. This requires that the screen on which you display your image is calibrated.

This is achieved by a standard, the DICOM Grayscale Standard Display Function.

See there for a presentation on the topic:


and there for the actual standard, with a discussion on the Barten eye model which describes the performance of the visual system at noticing light intensity differences:



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.