HOME

TheInfoList



OR:

Fiji (''Fiji Is Just ImageJ'') is an open source image processing package based on
ImageJ2 ImageJ is a Java (programming language), Java-based image processing program developed at the National Institutes of Health and the Laboratory for Optical and Computational Instrumentation (LOCI, University of Wisconsin). Its first version, ImageJ ...
. Fiji's main purpose is to provide a distribution of ImageJ2 with many bundled
plugins Plug-in, plug in or plugin may refer to: * Plug-in (computing) is a software component that adds a specific feature to an existing computer program. ** Audio plug-in, adds audio signal processing features ** Photoshop plugin, a piece of software t ...
. Fiji features an integrated updating system and aims to provide users with a coherent menu structure, extensive documentation in the form of detailed algorithm descriptions and tutorials, and the ability to avoid the need to install multiple components from different sources. Fiji is also targeted at developers, through the use of a
version control system In software engineering, version control (also known as revision control, source control, or source code management) is a class of systems responsible for managing changes to computer programs, documents, large web sites, or other collections o ...
, an issue tracker, dedicated development channels, and a rapid-prototyping infrastructure in the form of a script editor which supports BeanShell,
Jython Jython is an implementation of the Python programming language designed to run on the Java platform. The implementation was formerly known as JPython until 1999. Overview Jython programs can import and use any Java class. Except for some stand ...
,
JRuby JRuby is an implementation of the Ruby programming language atop the Java Virtual Machine, written largely in Java. It is free software released under a three-way EPL/ GPL/ LGPL license. JRuby is tightly integrated with Java to allow the embeddi ...
, Clojure, Groovy,
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
, and other scripting languages, as well as just-in-time Java development.


Plugins

Many plugins exist for ImageJ, that have a wide range of applications, but also a wide range of quality. Further, some plugins require specific versions of ImageJ, specific versions of third-party libraries, or additional Java components such as the Java compiler or
Java 3D Java 3D is a scene graph-based 3D application programming interface (API) for the Java platform. It runs on top of either OpenGL or Direct3D until version 1.6.0, which runs on top of Java OpenGL (JOGL). Since version 1.2, Java 3D has bee ...
. One of Fiji's principal aims is to make the installation of ImageJ, Java, Java 3D, the plugins, and further convenient components, as easy as possible. As a consequence, Fiji enjoys more and more active users.


Audience

While Fiji was originally intended for neuroscientists (and continues to be so), it accumulated enough functionality to attract scientists from a variety of fields, such as cell biology, parasitology, genetics, life sciences in general, materials science, etc. As stated on the official website, the primary focus is "life sciences", although Fiji provides many tools helping with scientific image analysis in general. Fiji is most popular in the
life sciences This list of life sciences comprises the branches of science that involve the scientific study of life – such as microorganisms, plants, and animals including human beings. This science is one of the two major branches of natural science, th ...
community, where the 3D Viewer helps visualizing data obtained through
light microscopy Microscopy is the technical field of using microscopes to view objects and areas of objects that cannot be seen with the naked eye (objects that are not within the resolution range of the normal eye). There are three well-known branches of micr ...
, and for which Fiji provides registration, segmentation, and other advanced image processing algorithms. The Fiji component TrakEM2 was successfully used and enhanced to analyze
neuron A neuron, neurone, or nerve cell is an membrane potential#Cell excitability, electrically excitable cell (biology), cell that communicates with other cells via specialized connections called synapses. The neuron is the main component of nervous ...
al lineages in larval ''Drosophila'' brains. Fiji was prominently featured in Nature Methods review supplement on visualization.


Development

Fiji is fully
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
. Its sources live in a public Git repository. Fiji was accepted as organization into the Google Summer of Code 2009, and completed two projects. The scripting framework, which supports
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
,
Jython Jython is an implementation of the Python programming language designed to run on the Java platform. The implementation was formerly known as JPython until 1999. Overview Jython programs can import and use any Java class. Except for some stand ...
,
JRuby JRuby is an implementation of the Ruby programming language atop the Java Virtual Machine, written largely in Java. It is free software released under a three-way EPL/ GPL/ LGPL license. JRuby is tightly integrated with Java to allow the embeddi ...
, Clojure, BeanShell, and other languages, is an integral part of the development of Fiji; many developers prototype their plugins in one of the mentioned scripting languages, and gradually turn the prototypes into proper
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
code. To this end, as one of the aforementioned Google Summer of Code projects, a script editor was added with
syntax highlighting Syntax highlighting is a feature of text editors that are used for programming, scripting, or markup languages, such as HTML. The feature displays text, especially source code, in different colours and fonts according to the category of terms. ...
and in-place code execution. The scripting framework is included in the Fiji releases, so that advanced users can use such scripts in their common workflow. The development benefits from occasional hackathons, where life scientists with computational background meet and improve their respective plugins of interest.


Script editor

The script editor in Fiji supports rapid prototyping of scripts and ImageJ plugins, making Fiji a powerful tool to develop new image processing algorithms and explore new image processing techniques with ImageJ.Albert Cardona's crash cours
''Jython scripting with Fiji''


Supported platforms

Fiji runs on Windows, Linux, and Mac OS X, Intel 32-bit or 64-bit, with limited support for MacOSX/PPC.


References


External links

* *
ImageJ2
the version of
ImageJ ImageJ is a Java-based image processing program developed at the National Institutes of Health and the Laboratory for Optical and Computational Instrumentation (LOCI, University of Wisconsin). Its first version, ImageJ 1.x, is developed in the publ ...
upon which Fiji is built {{Image processing software Computer vision software Neuroimaging software Java (programming language) software