FIJI Image Processing Software
   HOME

TheInfoList



OR:

Fiji is an open source image processing package based on ImageJ2. Fiji's main purpose is to provide a distribution of ImageJ2 with many bundled plugins. 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 Version control (also known as revision control, source control, and source code management) is the software engineering practice of controlling, organizing, and tracking different versions in history of computer files; primarily source code ...
, an issue tracker, dedicated development channels, and a rapid-prototyping infrastructure in the form of a script editor which supports
BeanShell BeanShell is a small, free, embeddable Java source interpreter with object scripting language features, written in Java. It runs in the Java Runtime Environment (JRE), dynamically executes standard Java syntax and extends it with common scripting c ...
,
Jython Jython is an implementation of the Python (programming language), Python programming language designed to run on the Java (programming language), Java platform. It was known as JPython until 1999. Overview Jython programs can import and use any ...
,
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 Clojure (, like ''closure'') is a dynamic programming language, dynamic and functional programming, functional dialect (computing), dialect of the programming language Lisp (programming language), Lisp on the Java (software platform), Java platfo ...
,
Groovy ''Groovy'' (or, less commonly, ''groovie'' or ''groovey'') is a slang colloquialism popular during the 1960s and 1970s. It is roughly synonymous with words such as "excellent", "fashionable", or "amazing", depending on context. History The word ...
,
JavaScript JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior. Web browsers have ...
, 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 been dev ...
. 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, ...
community, where the 3D Viewer helps visualizing data obtained through
light microscopy Microscopy is the technical field of using microscopes to view subjects too small to 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 microscopy: optical, el ...
, 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 (American English), neurone (British English), or nerve cell, is an membrane potential#Cell excitability, excitable cell (biology), cell that fires electric signals called action potentials across a neural network (biology), neural net ...
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 and view the source code, design documents, or content of the product. The open source model is a decentrali ...
. Its sources live in a public
Git Git () is a distributed version control system that tracks versions of files. It is often used to control source code by programmers who are developing software collaboratively. Design goals of Git include speed, data integrity, and suppor ...
repository. Fiji was accepted as an organization into the
Google Summer of Code The Google Summer of Code, often abbreviated to GSoC, is an international annual program in which Google awards stipends to contributors who successfully complete a free and open-source software coding project during the summer. , the program is ...
2009, and completed two projects. The scripting framework, which supports
JavaScript JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior. Web browsers have ...
,
Jython Jython is an implementation of the Python (programming language), Python programming language designed to run on the Java (programming language), Java platform. It was known as JPython until 1999. Overview Jython programs can import and use any ...
,
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 Clojure (, like ''closure'') is a dynamic programming language, dynamic and functional programming, functional dialect (computing), dialect of the programming language Lisp (programming language), Lisp on the Java (software platform), Java platfo ...
,
BeanShell BeanShell is a small, free, embeddable Java source interpreter with object scripting language features, written in Java. It runs in the Java Runtime Environment (JRE), dynamically executes standard Java syntax and extends it with common scripting c ...
, 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 is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
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 is used for programming language, programming, scripting language, scripting, or markup language, markup languages, such as HTML. The feature displays text, especially source code, in differe ...
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
hackathon A hackathon (also known as a hack day, hackfest, datathon or codefest; a portmanteau of '' hacking'' and ''marathon'') is an event where people engage in rapid and collaborative engineering over a relatively short period of time such as 24 or 48 h ...
s, 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 (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 ...
upon which Fiji is built * Fiji tutorial for Scientists, Easy Fiji (https://www.youtube.com/@easyfiji4858/featured) - Video tutorials for scientists on using Fiji macro. {{Image processing software Computer vision software Neuroimaging software Java (programming language) software