The other day I was wondering if there is an easy way in GIMP to choose the pixels that are part of a selected range on the histogram.

  • 1
    Welcome to the site! – che Nov 11 '10 at 20:29
up vote 15 down vote accepted

Yes, it's possible to select by pixels' intensity range.


  1. Make a copy of the layer (Layer → Duplicate Layer)
  2. Select the duplicate layer, apply threshold (Colors → Threshold) to select the range of intensities.
  3. In Layer → Mask → Add Layer Mask (or right click in the list of layers). Select “Grayscale copy of layer” and “Invert mask”.
  4. idem: Mask to selection.
  5. Hide or remove the layer with mask.

An example:

Original image. I want to select the circle:

Original image

Make a copy of the layer:

Duplicate layer

Apply threshold. Note that the area to be selected is black:


Add Layer Mask using the grayscale value of the image:

Add Layer Mask

Now you've obtained an image with the mask. Everything except the black circle is transparent (we can see the bottom layer through it):

Image with the mask

Convert the mask to selection. Switch to the original layer. The circle is selected.

Mask to selection

There is a plugin called Adagio Range Selection that does pretty much what you want. You can't select from the histogram directly, but you can select the upper and lower boundaries.

alt text

  • ¡Gracias por la respuesta! – huff Nov 12 '10 at 10:39

Your Answer


By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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