Difference between revisions of "PhotoBend"

Line 15: Line 15:
 
== PhotoBend plugins collection ==
 
== PhotoBend plugins collection ==
  
A collection of specialized plugins for ImageJ providing tracking of a needle-like crystal shape changing during photobending process. Photobending is a phenomenon of crystal deformation caused by non-uniform crystal structure transformation due to photochemical reaction. Bending of crystals caused by light irradiation is only one of various types of mechanical responses observed in chemically transforming solid substances (see the review by Naumov ''et al.'', 2015<ref name="Naumov2015>{{ cite journal
+
A collection of specialized plugins for ImageJ providing tracking of a needle-like crystal shape changing during photobending process. Photobending is a phenomenon of crystal deformation caused by non-uniform crystal structure transformation due to photochemical reaction. Bending of crystals caused by light irradiation is only one of various types of mechanical response observed in chemically transforming solid substances (see the review by Naumov ''et al.'', 2015<ref name="Naumov2015>{{ cite journal
 
| title =  Mechanically Responsive Molecular Crystals
 
| title =  Mechanically Responsive Molecular Crystals
 
| author = Panče Naumov, Stanislav Chizhik, Manas K. Panda, Naba K. Nath, and Elena Boldyreva
 
| author = Panče Naumov, Stanislav Chizhik, Manas K. Panda, Naba K. Nath, and Elena Boldyreva
Line 29: Line 29:
 
[[Image:photobend_demo.gif|thumb|right|Animation of the photobend time lapse]]
 
[[Image:photobend_demo.gif|thumb|right|Animation of the photobend time lapse]]
  
There are two plugins in the collection providing two methods of crystal bending detection: Bending_Crystal_Track and Laser_Spot_Track4. Both use the template matching technique based on OpenCV library to track the movement of specific targets in the series of time lapse images organized in the virtual stack. Direct usage of movies opened as image stacks is not supported currently (movies can be transformed in the image sequences with tools like ffmpeg). Timeline of the registered process is based on exif timestamps in the images or on the constant time step if the metadata are not available.  
+
There are two plugins in the collection providing two methods of crystal bending measurement: Bending_Crystal_Track and Laser_Spot_Track4. Both use the template matching technique based on OpenCV library to track the movement of specific targets in the series of time lapse images organized in the virtual stack. Direct usage of movies opened as image stacks is not supported currently (movies can be transformed in the image sequences with tools like ffmpeg). Timeline of the registered process is based on exif timestamps in the images or on the constant time step if the metadata are not available.  
  
 
There is an ability to monitor a folder for additional images appearing in the time lapse series thus allowing live process registration. The plugins work with 8/16/32-bit greyscale or 24-bit RGB images. The matching mode can be chosen from the intensity-based or color-based for the RGB format (the later is useful for images having weak intensity contrast but possessing sufficient color gradients). Subpixel registration is available using local quadratic approximation of the matching measure.  
 
There is an ability to monitor a folder for additional images appearing in the time lapse series thus allowing live process registration. The plugins work with 8/16/32-bit greyscale or 24-bit RGB images. The matching mode can be chosen from the intensity-based or color-based for the RGB format (the later is useful for images having weak intensity contrast but possessing sufficient color gradients). Subpixel registration is available using local quadratic approximation of the matching measure.  
  
Although Bending_Crystal_Track and Laser_Spot_Track4 are specialized plugins they can be used in more general cases. Bending_Crystal_Track can be used with  any images of attached bending rod-like objects, while Laser_Spot_Track4 is suitable for tracking of a spot-like object moving relative to the pre-made template of immobile marks to analyse the object movement in the pre-defined 2D coordinate system.  
+
Although Bending_Crystal_Track and Laser_Spot_Track4 are specialized plugins they can be used in more general cases. Bending_Crystal_Track can be used with  any images of attached bending rod-like objects, while Laser_Spot_Track4 is suitable for tracking of a spot-like object moving relative to the pre-made template of immobile marks to analyze the object movement in the predefined 2D coordinate system.  
  
 
The plugins use ideas and code of  
 
The plugins use ideas and code of  
* Template Matching by Qingzong Tseng (based on opencv)
+
* Template Matching by Qingzong Tseng (based on javacv)
 
* javacv (java interface to OpenCV) by Samuel Audet  
 
* javacv (java interface to OpenCV) by Samuel Audet  
 
* Exif Metadata Library by Drew Noakes
 
* Exif Metadata Library by Drew Noakes
Line 45: Line 45:
 
== Bending_Crystal_Track plugin ==
 
== Bending_Crystal_Track plugin ==
  
The plugin is for the analysis of a stack of time lapse microscopic images of a bending crystal. The plugin requires a virtual stack. User is instructed to select specific parts on the reference crystal image which includes: the point on the tip of free crystal's end, the point on the attached end of the crystal, the point in the middle of the crystal and a rectangle around a stable part of the image (a part supposed to be immobile during the whole process, a tip of holder or capillary to which the crystal is attached, for one).
+
The plugin is for the analysis of a stack of time lapse microscopic images of a bending crystal. User is instructed to select specific parts on the reference crystal image which includes: the point on the tip of free crystal's end, the point on the attached end of the crystal, the point in the middle of the crystal and a rectangle around a stable part of the image (a part supposed to be immobile during the whole process, a tip of holder or capillary to which the crystal is attached, for one).
  
 
[[Image:photobend_processing.jpg|frame|400pix|left|Crystal shape tracking in process]]
 
[[Image:photobend_processing.jpg|frame|400pix|left|Crystal shape tracking in process]]

Revision as of 05:05, 27 April 2017

PhotoBend (ImageJ)
Author Stanislav Chizhik
Maintainer Stanislav Chizhik
Source on GitHub
Initial release 10/11/2016
Latest version 26/04/2017
Development status Alpha
Category Category:Plugins,Tracking



PhotoBend plugins collection

A collection of specialized plugins for ImageJ providing tracking of a needle-like crystal shape changing during photobending process. Photobending is a phenomenon of crystal deformation caused by non-uniform crystal structure transformation due to photochemical reaction. Bending of crystals caused by light irradiation is only one of various types of mechanical response observed in chemically transforming solid substances (see the review by Naumov et al., 2015[1]).

Animation of the photobend time lapse

There are two plugins in the collection providing two methods of crystal bending measurement: Bending_Crystal_Track and Laser_Spot_Track4. Both use the template matching technique based on OpenCV library to track the movement of specific targets in the series of time lapse images organized in the virtual stack. Direct usage of movies opened as image stacks is not supported currently (movies can be transformed in the image sequences with tools like ffmpeg). Timeline of the registered process is based on exif timestamps in the images or on the constant time step if the metadata are not available.

There is an ability to monitor a folder for additional images appearing in the time lapse series thus allowing live process registration. The plugins work with 8/16/32-bit greyscale or 24-bit RGB images. The matching mode can be chosen from the intensity-based or color-based for the RGB format (the later is useful for images having weak intensity contrast but possessing sufficient color gradients). Subpixel registration is available using local quadratic approximation of the matching measure.

Although Bending_Crystal_Track and Laser_Spot_Track4 are specialized plugins they can be used in more general cases. Bending_Crystal_Track can be used with any images of attached bending rod-like objects, while Laser_Spot_Track4 is suitable for tracking of a spot-like object moving relative to the pre-made template of immobile marks to analyze the object movement in the predefined 2D coordinate system.

The plugins use ideas and code of

  • Template Matching by Qingzong Tseng (based on javacv)
  • javacv (java interface to OpenCV) by Samuel Audet
  • Exif Metadata Library by Drew Noakes


The page is still under construction. Usage instructions will be added.

Bending_Crystal_Track plugin

The plugin is for the analysis of a stack of time lapse microscopic images of a bending crystal. User is instructed to select specific parts on the reference crystal image which includes: the point on the tip of free crystal's end, the point on the attached end of the crystal, the point in the middle of the crystal and a rectangle around a stable part of the image (a part supposed to be immobile during the whole process, a tip of holder or capillary to which the crystal is attached, for one).

Crystal shape tracking in process

Photobend deformation plot.jpg Photobend curvature plot.jpg

The plugin code uses the selected regions of the image as reference templates to find them in the series of the time lapse images. Automatic picture stabilization is provided by detection of the stable part displacement. Then the free crystal's end and its middle part are detected in new positions of the image (accounting for the displacement and rotation) with the template matching technique. The coordinates of the three points (two ends and the middle part) are used to calculate the curvature and deformation (elongation or shortening) of the crystal.


Laser_Spot_Track4

To be continued...


Installation in Fiji

Add update site PhotoBend to install the plugins automatically.

  • Help › Update...
  • Click Manage update sites
  • Add and check new update site PhotoBend
  • Click Close
  • Click Apply changes
  • Restart ImageJ

Warning: the plugins depend on several libraries which will be installed in local Fiji jars folder. Check for versions inconsistencies if you use these libraries with other plugins. The dependencies are:

  • javacv. Version 1.3.2 (opencv-version.jar file is copied into plugins folder to prevent automatic overwriting by Fiji updater)
  • joda-time. Version 2.9.4
  • metadata-extractor. Version 2.9.1

References

  1. Panče Naumov, Stanislav Chizhik, Manas K. Panda, Naba K. Nath, and Elena Boldyreva (2015), "Mechanically Responsive Molecular Crystals", Chemical Reviews (American Chemical Society) 112 (22): 12440–12490, DOI 10.1021/acs.chemrev.5b00398