Search code examples
apiimagej

How do I add grain to an image using the ImageJ API


I am new to ImageJ and I am seeking to add grain (as defined here: http://en.wikipedia.org/wiki/Film_grain) to an image using the programmatic API of ImageJ.

  • Is it possible? If so how?
  • Where is the relevant documentation/Javadocs regarding adding grain to an image using ImageJ?

Solution

  • I'd start in Process > Noise, described in ImageJ User Guide: §29.6 Noise. You'll have to decide if the existing implementations can be made to meet your requirements.

    Where I can find documentation on how to achieve this using the actual API instead of the UI.

    As discussed in ImageJ Macro Language, one easy way is to start Plugin > Macros > Record and then operate the desired GUI command. This reveals the macro command name and any settings, for example:

    run("Add Noise");
    run("Add Specified Noise...", "standard=16");
    

    You can apply such a macro to multiple files using the -batch command line option.

    If you want to use a feature directly from Java, see ImageJ programming tutorials.