The embryos I study rarely develop in perfect synchrony. That means that when I film them under the microscope some embryos will be younger—or older—than others.
For this reason, I often need to synchronize the recordings to make sure they all begin at the same embryonic stage. When the movies are synchronized I can combine them side-by-side, and it becomes much easier to compare and spot differences between two embryos.
ImageJ macros save time
Combining movies in Fiji/ImageJ is straightforward using the
Combine... command. But synchronizing is way harder. It depends on human classification and involves some calculations and stack juggling that can (and will) become tedious.
To help me out, I wrote a small ImageJ macro available here: SyncAndCombineStacks.ijm. Follow below to see how it works.
Combined movies without syncing
That’s what unsynchronized movies look like. I combined them fresh off the microscope without any synchronization:
Combined movies after syncing
Here are the same two movies now synchronized by the embryonic stage:
How it works
The macro performs the hard work. It calculates how many frames to trim from each stack. Then it duplicates the selected range of frames common to both stacks. Finally, it combines the synchronized recordings into a single image stack. All you need to do is to select the corresponding frames between the two stacks.
Here are the instructions step-by-step:
- Open both image stacks in ImageJ.
- Adjust the contrast if needed (before running the macro).
- Select a reference frame in the top stack (e.g. stage easy to recognize).
- Select the correspondent frame in the bottom stack.
- Run the macro and fill in the dialog parameters.
- Click OK, wait a few seconds, and check if the synchronization is good. Otherwise, re-run with different parameters.
I’ve also recorded a small screencast:
Note! The macro does not touch the original stacks, but it outputs an RGB Color stack. There are a couple of reasons for that. Converting to RGB avoids contrast issues when the stacks have different pixel intensities. It also prevents quirks in video players that can’t handle 16-bit movies. But if you need to perform image analyses on the final stack, remove this option. I may add a checkbox for that in the future.
Some time ago I found this guide to convert videos to high-quality animated GIFs using the tool FFmpeg. The trick is to generate a color palette based on the original video to improve the color quality of the GIF. Based on this guide I created a small bash script to make my life easier and perhaps yours too ;)
Check it in https://github.com/nelas/gif.sh
Live footage of entoprocts! Tiny colonial invertebrates that capture food with a crown of ciliated tentacles
A short video that I made about the embryonic development of the likeable Drosophila, also known as fruit fly or vinegar fly, won an honorable mention in the Small World in Motion.
The details on the techniques I used and the video on its full resolution are available for download and re-use on the Wikimedia Commons.
The first 24 hours in 1.5 minutes of bryozoan embryos.