Welcome! This is the home page for ImageApp, a multi-platform desktop application that utilises a lot of principles from machine vision. A Graphical User Interface that allows users to build up an image processing graph. An image processing graph is a sequence of algorithms that do something to images. You can imagine the graph as the algorithms being the nodes and the flow-of-->data between the algorithms being the arcs.

For instance,
You could have the sequence of filtering the image to remove noise, then extracting the edges using a Sobel edge operator, then running a line finding algorithm and so on. In mathematical terms this graph is known as a Directed Acyclic Graph (DAG).
Edge Operation

Usually you would do this programmatically and hard wire it into your code. This makes it very hard to change and hard to visualise the sequence of events. You also need to know how to program to be able to work on image processing / machine vision.

ImageApp is an attempt to allow users to build up these image processing graphs using drag and drop. It uses the excellent library from Sun called Java Advanced Imaging (JAI) and also an excellent graph API called JGraph.

In JAI each implemented algorithm is known as an operator, so in ImageApp the image processing graphs are known as 'operations'. Operations can be saved and reopened at a later time, eventually you will be able to embed operations within operations. By default these are saved as xml files, however there is a facility to export the graphs as SVG, GXL and eventually as an image file (ie/ gif, jpeg etc..).