Skip to content, Skip to search


Cover Maker

1,100 bytes added, 24 January
Use HTTPS links where feasible
{{Infobox Plugin
| software = ImageJ
| name = CoverMaker
| maintainer = []{{Person|Tomancak}}| author = [[USer:Tomancak{{Person|Pavel Tomancak]]}}, [[User:Schindelin{{Person|Johannes Schindelin]]}}| source = {{GitHub|repo=fiji|path=plugins/Examples/CoverMaker/}}
| released = 27/05/2012
| latest version = 2729/0506/2012
| status = active
| category = [[:Category:Plugins]]
| website =
== Introduction ==
[[Image:Haeckel embryos white.png|thumb|left|350px|'''Drawing of Haeckel embryos.''' For afficionados this is in fact Romanes' 1892 copy of the [http[wikipedia:// Ernst Haeckel|Ernst Haeckel]] drawing. If you consider Haeckel a fraud, think again and start by reading the excellent Robert J. Richards book "[ The Tragic Sense of Life]".]]
[[Image:Haeckel embryos cover.png|thumb|left|350px|'''CoverMaker rendition of Haeckel embryos''' The image was generated using a database of 66,579 images of gene expression pattern during Drosophila embryogenesis visualized by histochemical RNA in situ hybridization.<ref name="Tomancak2002">{{cite journal
Image:Bioessays_backcover.jpg|Backcover of Bioessays featuring famous drawing of early Drosophila embryogenesis by Victoria FoeImage:Methods cover 2014 small.jpg|Cover of Methods journal focused on Drosophila, edited by Nobert PerrimonImage:Bioimage Informatics cover.jpg|Cover of Bioimage Informatics 2012 conference brochureImage:NM_cover.jpg|Cover of July 2012 Issue of Nature Methods containing focus on Bioimage InformaticsImage:Cover_suggestion_5_fullres.jpg|high-resolution version of Nature Methods coverImage:Microscope_cover.png|Open clipart microscopeImage:Runt_fish_1.png|Runt expression pattern at cellular blastoderm stage of Drosophila embryogenesis Image:Cover_suggestion_1.jpg|Cover suggestion for Focus on Bioimage Informatics - logosImage:Ovary_cover_test.jpg|Stage 10 Drosophila egg chamberImage:Example_cover_embryo.png|Dorsal ectoderm expression at blastoderm satgeImage:ImageJ2_cover.jpg|ImageJ2 logoImage:Haeckel embryos cover.png|Haeckel embryosImage:Fiji cover.png|Fiji logo
 Now we launch the CoverMaker python script by goingto Plugins -> Examples -> CoverMaker -> Cover Maker.(Or typing 'l' and searching with keyword 'cover').... TBD
A basic dialog box will appear prompting us to select the image database by clicking on '''Browse''' and locating in the file system the [[#Databases|tif file]] containing down-sampled images. The tif file is called 12_9.tif indicating that the images have been scaled to the 12x9 pixel dimension. This is the default tile size. If you use a different database with different aspect ratio please change the default '''tile width and height''' in the dialog box.
When we zoom in on the final output image that was generated in this case at 300dpi and compare with the initial reconstructed image we will see the database images with much greater detail. The image can be made almost arbitrarily large and printed as a large poster. ''Note'': the downsampler we use does not do a good job upsampling, thus when the originals are too small for a given dpi size combination artifacts in the output image will occur (grid of lines). This exception is currently not handled properly.
== Prepare CoverMaker Database ==
In many ways preparing the image databases is a trickier business than actually performing the reconstruction. The aim of the '''''' script (Plugins -> Examples -> Cover Maker -> Prepare Cover Maker Database) is to explore your local filesystem for RGB images that could be used to build a database. As many things can go wrong in the process, it should be considered experimental.
=== Input/Search/Output ===
=== Potential problems ===
Sometimes an image with jpeg like extension is not in fact an jpeg. The script currently checks if the image has three channels and skips the image if this is not the case. However, in my experience , a lot of unexpected things can happen when exploring large filesystems with diverse imagery. I have also seen situations where an image is properly downscaled for the tiles tif, but becomes corrupted during saving to the zip archive.... ??? Finally, as the searching of a large filesystem can take some time, random errors, corrupted images or insufficient memory can cause the script to crash.
Catching these errors is the challenge for future improvements of the script.
{| class="wikitable" style="text-align: center;"
| Database type || scaled tiles (unzip) || originals (DO NOT unzip)
| Drosophila Embryo ''in situ'' || [http 12_9.tif] (16.6MB) || [ ] (1.45GB)
== Implementation and Acknowledgements ==
The plugin was written as a Jython script during the [[2011 Hackathon in Madison|Madison ImageJ2/Fiji [ hackathon] in January 2011]]. The heavy lifting is performed using [[Jython_Scripting#Inline_java_code_inside_jython:_the_Weaver|in lined ]] Java code snippet courtesy of [ Albert Cardona]{{Person|Albertcardona}}. All the large scale downsampling is done using [[User:Saalfeld{{Person|Stephan Saalfeld's]] }} proper [[Downsample|downsampler]]. [[User:Schindelin{{Person|Johannes Schindelin]] }} has helped a lot with the Dialog Listeners and will maintain the plugin for posterity.
BTW, this plugin and its genesis is a great example of the power of Fiji and the hackathons. I came to the hackathon not knowing anything about python and with only basic knowledge of Java and the ImageJ code base. In ten days I had the plugin written, probably driving the Fiji geeks crazy with my constant basic (or downright stupid) questions. But the take home message for biologists is - it can be done!
Bureaucrat, emailconfirmed, incoming, administrator, uploaders