I have a spotty image. The image has maroon and black spots (with gradient) on a white background. I would like to convert every color (except white) to green color using GIMP.
As AndrewH mentioned, since the background is plain white, you can select it and invert the selection, then fill it with the color you want. Here's how.
Choose the "Select By Color" tool and click on the white background.
In the menu bar, go to "Select->Invert"(the shortcut is Ctrl+I).
In the menu bar, go to "Edit->Fill with FG Color" making sure the foreground color is the color you want. If you want to still keep the original image as it is in it's own layer, create a new layer, then fill the selection.
Not the fastest method but imho the best.
1) Convert the image to grayscale.
2) Invert the image. You need a negative version.
3) Adjust the levels of the image (Colors > Levels) Untill you clean the image. The point here is to have a pure black, some aliasing and pure white.
4) Copy to the clipboard.
5) Make a new file with only the color you need.
6) Make a Layer mask: Layer > Mask > Add Layer Mask.
7) Paste the clipboard image there.
Not only you have a clean image with a nice aliasing, it is also transparent so you can play with it now.
Of course you now can flatten it to a white background again.