http://imagej.273.s1.nabble.com/Writing-a-Custom-version-of-ImageJ-tp5000477p5000627.html
> Thank you for your suggestion Curtis. I am starting to wonder if I
Up to you, based on your needs. You can browse the ImageJ2 project roadmap
Sure, it is no different than any other programming project. People have
advertise an ImageJ-related job opening after all. Maybe you would have
communicative. Ask on the mailing list about major development directions
(someone else may have already implemented what you need), etc. The
> Thank you for your suggestion Curtis. I am starting to wonder if I
> should postpone this project until IJ2 is closer to being released. It
> seems like this would be a better option so that the suite of plugins I
> want is written specifically for IJ2. Just out of curiosity, suppose there
> was funding available to pay an individual to write custom version of IJ or
> IJ2.......do you suppose there are people that would be interested in that?
> Has that ever been done before?
>
> Cheers,
> Aaron.
>
> On Wed, Oct 31, 2012 at 1:47 PM, Curtis Rueden <
[hidden email]> wrote:
>
> > Hi Aaron,
> >
> > > I am aware that IJ2 is still under beta testing but was wondering if
> > > there was any documentation on how this new functionally worked (i.e.
> > > generating user interfaces).
> >
> > There is short explanation and example of an ImageJ2 command at:
> >
http://developer.imagej.net/extensibility> >
> > In short, you create an ImageJ2 command by declaring its inputs and
> > outputs, and ImageJ2 takes care of the rest. No need to write any
> > UI-specific code at all.
> >
> > You can also peruse the ImageJ2 Tutorials at:
> >
https://github.com/imagej/imagej-tutorials> >
> > HTH,
> > Curtis
> >
> >
> > On Tue, Oct 23, 2012 at 7:28 AM, Aaron Hendrickson <
[hidden email]
> > >wrote:
> >
> > > All,
> > >
> > > I am very greatful for all the suggestions you have provided
> > > me....many of which seem to be viable options for working towards my
> > > goal of automating my procedures. One reply that caught mt interest
> > > was from Birgit. Birgit mentioned that ImageJ 2.0 and Alida provide
> > > "functionality for automatically generating user interfaces for
> > > processing units, i.e. plugins in ImageJ 2.0 and so-called operators
> > > in Alida. These GUIs allow for example to configure certain
> > > parameters, i.e. to set directory paths or check options, and to
> > > finally run the operator/plugin". What I am gathering from this is if
> > > a series of plugins were to be created, I could use the functionallity
> > > of IJ2 and/or Alida to generate a user interface that could call on
> > > these plugins and run the processes I am trying to perform (and with
> > > relative ease in comparison to create my own gui). I am aware that
> > > IJ2 is still under beta testing but was wondering if there was any
> > > documentation on how this new functionally worked (i.e. generating
> > > user interfaces). With a little self teaching in Java, would this be
> > > a reasonable task for me to accomplish? The only thing that is
> > > holding me back is not the amount of work involved, but rather
> > > figuring out the steps I would need to take to acheive the final
> > > product I am seeking. Essentially what I am trying to say is I am
> > > lost in how I become a good programmer with IJ, but do not care if it
> > > means a lot of work.
> > >
> > > Thanks again everyone,
> > > Aaron.
> > >
> > > On 10/23/12, Alexandre Dufour <
[hidden email]> wrote:
> > > > Dear Aaron,
> > > >
> > > > I second Birgit's opinion. With little to no programming knowledge,
> you
> > > > might want to look towards 100% graphical alternatives to start from.
> > > >
> > > > Our lab develops the ImageJ-friendly Icy software, which specifically
> > > > targets (among others) our collaborators with no programming
> knowledge,
> > > by
> > > > providing a graphical front-end (called 'Protocols',
> > > >
http://icy.bioimageanalysis.org/plugin/Protocols) to create entire
> > image
> > > > processing workflows (you can think of this as a graphical batch) by
> > > > graphically assembling image processing blocks, one after the other
> > (not
> > > > unlike solutions like Blender or Labview), and this might also fit
> with
> > > what
> > > > you are searching for.
> > > >
> > > > The current interface lets you run all Icy plugins, and with minimal
> > > > programming, you can add your own blocks to the system and go from
> > there.
> > > > Also, since ImageJ is provided inside Icy, I'm currently writing the
> > > wrapper
> > > > to let ImageJ plugins available for insertion in these workflows as
> > well.
> > > >
> > > > Hope these opinions will enlighten your horizon !
> > > >
> > > > All the best,
> > > > Alexandre
> > > >
> > > > ---
> > > > Alexandre Dufour, PhD
> > > > Institut Pasteur, Quantitative Image Analysis Unit,
> > > bioimageanalysis.org
> > > > IEEE BISP Tech. Committee,
> > > > signalprocessingsociety.org/technical-committees/list/bisp-tc
> > > > 25-28 rue du Dr. Roux, 75724 Paris cedex 15
> > > > ---
> > > >
> > > > On 23 oct. 2012, at 09:52, Birgit Möller wrote:
> > > >
> > > >> Hi Aaron,
> > > >> I agree with Herbie and the others that without any programming
> > > experience
> > > >> your plans sound quite ambigious. Even for using the macro language,
> > as
> > > >> Herbie stated, basic programming skills are unevitable, and it will
> > > take a
> > > >> considerable amount of time to learn how to use it effectively.
> > However,
> > > >> as you stated that a graphical user interface is very important for
> > > you, I
> > > >> would like to point you to another option. The new ImageJ 2.0 and
> > > likewise
> > > >> our own library called 'Alida' (
> > >
http://www.informatik.uni-halle.de/alida)
> > > >> both provide functionality for automatically generating user
> > interfaces
> > > >> for processing units, i.e. plugins in ImageJ 2.0 and so-called
> > operators
> > > >> in Alida. These GUIs allow for example to configure certain
> > parameters,
> > > >> i.e. to set directory paths or check options, and to finally run the
> > > >> operator/plugin. Alida is compatible with ImageJ, i.e. Alida
> operators
> > > can
> > > >> be run within ImageJ/ImageJ 2.0. Of course, for using both systems
> > again
> > > >> programming knowledge in terms of plain Java is strongly required!
> > But,
> > > at
> > > >> least in case of Alida the overall goal of that library is exactly
> to
> > > >> overcome the need of GUI programming in algorithm development. GUIs
> > (and
> > > >> also corresponding commandline tools) are directly available for
> each
> > > >> operator implemented based on Alida, and this operator can also be
> > used
> > > >> within ImageJ. This post is of course not the ultimate answer to
> your
> > > >> question, but just gives you another idea of available options - if
> > you
> > > >> are really willing to start programming in ImageJ.
> > > >> Best,
> > > >>
> > > >> Birgit
> > > >>
> > > >>
> > > >> On Tue, 23 Oct 2012 08:52:15 +0200, Herbie <
[hidden email]> wrote:
> > > >>
> > > >>> Aaron,
> > > >>>
> > > >>> without considerable experience with Java, I see no chance that you
> > > come
> > > >>> up with what you are aiming for. Of course, you may get some
> plug-ins
> > > >>> working but they will only be parts of your big project and it will
> > > take
> > > >>> quite a while until they are of professional quality, i.e.
> efficient
> > > and
> > > >>> mostly flawless.
> > > >>>
> > > >>> That said, I should like to recommend learning the IJ-macro
> language
> > > >>> which provides some GUI-support that may suffice for your goals.
> > > >>>
> > > >>> For instance, I've created a rather extended system with GUI (a
> > > >>> commercial product) for the simulation of digital camera front-ends
> > > that
> > > >>> includes the properties of the optics, the optical low-pass and the
> > > >>> sensor, all written as IJ-macros. Because the time-critical parts
> are
> > > >>> IJ-routines, operational speed is sufficient and won't be much
> higher
> > > if
> > > >>> programmed in Java.
> > > >>>
> > > >>> For a beginner, a comparable system will take many month to program
> > and
> > > >>> especially to test and to refine, when using the IJ-macro language.
> > > >>>
> > > >>> I hope that the above will help with estimating the required effort
> > in
> > > >>> your case.
> > > >>>
> > > >>> Best
> > > >>>
> > > >>> Herbie
> > > >>> _________________________
> > > >>> On 23.10.12 00:53, Aaron Hendrickson wrote:
> > > >>>> Thank you all for your responses so far. To answer your question
> > > Adam,
> > > >>>> I
> > > >>>> am an engineer for a goverment facility that uses a large volume
> of
> > > >>>> imaging
> > > >>>> devices (high-speed, infrared, etc) a big issue within our
> > community
> > > to
> > > >>>> to
> > > >>>> standardize a series of proceures for evaluating/verifying the
> > > >>>> performance
> > > >>>> of the electro-optical devices. As a result of extensive
> research,
> > I
> > > >>>> have
> > > >>>> created a series of testing procedures for performing these
> > > >>>> experiments.
> > > >>>> The reason why I am trying to work towards a user friendly gui
> that
> > > >>>> the
> > > >>>> user can interact with is because the goal I am aiming towards is
> to
> > > >>>> provide to several other similar facilities a program to use in
> > > >>>> evaluating
> > > >>>> their own imaging devices. I figured this would make it a lot
> > easier
> > > >>>> to
> > > >>>> use (and a lot more work for me!). One reason why I have stuck
> with
> > > >>>> imageJ
> > > >>>> is because the document I wrote is specifically geared towards
> using
> > > >>>> image
> > > >>>> to processing and measuring all my test images. Another major
> > reason
> > > >>>> is
> > > >>>> that ImageJ is open source and could be distributed to any
> facility
> > > >>>> that
> > > >>>> wanted it for free. The general consensus is that this would be a
> > > huge
> > > >>>> undertaking for someone like myself with virtually no background
> in
> > > >>>> programming.....and the consensus is right. I figured it would
> be a
> > > lot
> > > >>>> of
> > > >>>> work but I would figure it out on my own (unlikely). Anyways, I
> > would
> > > >>>> be
> > > >>>> more than glad to provide some of the procedures to the list to
> view
> > > if
> > > >>>> anyone is curious in attempting to help me with this. I opted not
> > to
> > > >>>> ask
> > > >>>> list members to help me tackle this because I felt like it was too
> > big
> > > >>>> of
> > > >>>> a project to simply ask people to help me do. Plus I find ImageJ
> to
> > > be
> > > >>>> a
> > > >>>> very useful resource for image processing and I would love to
> learn
> > > how
> > > >>>> to
> > > >>>> write quality plugins for extending its capabilities. But I
> realize
> > > >>>> this
> > > >>>> dream is a long way down the road if I go that route. Anyways
> that
> > my
> > > >>>> long
> > > >>>> drawn out story. Any thoughts?
> > > >>>>
> > > >>>
> > > >>>> On Mon, Oct 22, 2012 at 5:56 PM, Adam Hughes<
>
[hidden email]
> > >
> > > >>>> wrote:
> > > >>>>
> > > >>>>> IMHO, this would be a larger undertaking than you're probably
> > > >>>>> anticipating
> > > >>>>> at this point, especially with no GUI programming background.
> > > >>>>>
> > > >>>>> Why is it that you think the GUI would be helpful? If you
> > elaborate
> > > >>>>> some
> > > >>>>> more on the project you are trying to achieve, it may be possible
> > for
> > > >>>>> some
> > > >>>>> of the list to give you ideas on how to do this within the
> confines
> > > of
> > > >>>>> ImageJ, and its default GUI.
> > > >>>>>
> > > >>>>> On Mon, Oct 22, 2012 at 3:01 PM, Aaron Hendrickson<
> >
[hidden email]
> > > >>>>>> wrote:
> > > >>>>>
> > > >>>>>> Hi everyone,
> > > >>>>>>
> > > >>>>>> I am doing a lot of work with radiometric performance testing of
> > > >>>>>> electro-optical systems. In short I capture large sets of test
> > > >>>>>> images
> > > >>>>> from
> > > >>>>>> the imaging devices I want to characterize and then perform all
> > the
> > > >>>>>> data
> > > >>>>>> reduction processing, and measurements using ImageJ. While
> ImageJ
> > > >>>>>> has
> > > >>>>> been
> > > >>>>>> an amazing software for doing all my data reduction, the one
> > problem
> > > >>>>>> I
> > > >>>>> have
> > > >>>>>> ran into the large amount of time it takes me to do all the data
> > > >>>>> reduction
> > > >>>>>> by hand. Most of the data reduction I am referring to is
> creating
> > > >>>>>> master
> > > >>>>>> images from large image stacks (for example creating a median or
> > > mean
> > > >>>>>> master image from a stack of 200 test images). Anyways, after
> > > >>>>>> looking
> > > >>>>>> around online I stumbled into the custom version of ImageJ known
> > as
> > > >>>>>> AstroImageJ and quickly realized this is exactly what I need.
> The
> > > >>>>>> goal I
> > > >>>>>> need to work towards is creating a set of custom plugins for
> doing
> > > all
> > > >>>>>> my
> > > >>>>>> image processing and making a user friendly gui which can be
> used
> > by
> > > >>>>> many.
> > > >>>>>> So to my question......I have no programming background and am
> > > trying
> > > >>>>>> to
> > > >>>>>> learn how to write ImageJ plugins and create a gui from which I
> > can
> > > >>>>> select
> > > >>>>>> directories where my test images are located and allow the user
> to
> > > >>>>>> check
> > > >>>>>> off checkboxes for each type of test they want to perform (by
> the
> > > >>>>>> way....many of the processing procedures I am doing originated
> > from
> > > >>>>>> astronomy and are seen in astroImageJ). I know this is a rather
> > > >>>>>> enormous undertaking for someone with little programming
> language
> > > and
> > > >>>>>> am
> > > >>>>>> not sure where to start. I purchased the "Digital Image
> > Processing"
> > > >>>>>> book
> > > >>>>>> by Burger and Burge which helps teach the reader writing plugins
> > in
> > > >>>>> ImageJ,
> > > >>>>>> however I don't have a good enough background to actually use
> this
> > > >>>>>> book.
> > > >>>>>> Does anyone have any suggestions for me to get started? This
> is
> > a
> > > >>>>>> challenging situation for me because I know all the processing
> > > >>>>>> pipelines
> > > >>>>> I
> > > >>>>>> need to perform but no way to implement it in a time friendly
> > > manner.
> > > >>>>> Any
> > > >>>>>> suggestions would be greatly appreciated.
> > > >>>>>>
> > > >>>>>> Thanks,
> > > >>>>>>
> > > >>>>>> Aaron.
> > > >>>>>>
> > > >>>>>> --
> > > >>>>>> ImageJ mailing list:
http://imagej.nih.gov/ij/list.html> > > >>>>>>
> > > >>>>>
> > > >>>>> --
> > > >>>>> ImageJ mailing list:
http://imagej.nih.gov/ij/list.html> > > >>>>>
> > > >>>>
> > > >>>> --
> > > >>>> ImageJ mailing list:
http://imagej.nih.gov/ij/list.html> > > >>>>
> > > >>>
> > > >>> --
> > > >>> ImageJ mailing list:
http://imagej.nih.gov/ij/list.html> > > >>
> > > >> --
> > > >> ImageJ mailing list:
http://imagej.nih.gov/ij/list.html> > > >
> > > > --
> > > > ImageJ mailing list:
http://imagej.nih.gov/ij/list.html> > > >
> > >
> > > --
> > > ImageJ mailing list:
http://imagej.nih.gov/ij/list.html> > >
> >
> > --
> > ImageJ mailing list:
http://imagej.nih.gov/ij/list.html> >
>
> --
> ImageJ mailing list:
http://imagej.nih.gov/ij/list.html>