This repository contains official MATLAB codes and example data for non-invasive egg imaging using the Laser Speckle Contrast Imaging (LSCI) technique.
📄 Reference Paper:
Z. Dong et al., “Non-invasive embryonic development monitoring in avian eggs using laser speckle contrast imaging,” Biomedical Optics Express, 2024, 15(8): 4605. (Cover Paper)
🔗 Read the paper on Optica
Cover_LSCI_egg_6x6.mov
Simulates various speckle phenomena:
- Speckle patterns with different speckle sizes
- Dynamic speckle with varying decorrelation times
- Comparison between temporal LSCI (tLSCI) and spatial LSCI (sLSCI)
speckle_raw_0.1ms.mp4
Demonstrates the calibration procedure for:
- Speckle size determination
- β (beta) factor estimation for the egg imaging system
Comparsions on window size, sLSCI and tLSCI

Demo code to perform tLSCI with experimental egg data

A demo comparison showing Anisotropic diffusion filtering (ADF) denoise can help reduce the required images to 3 adjacent frames

A demo code for artifact removal in egg imaging using Fourier high-pass filter

A demo code for real-time egg imaging and heartbeat estimation

A demo code for static speckle removal using principle component analysis (PCA).
Example data for testing and demonstration are available by request. The raw data are too large to feed inside this repository.
This repository includes or adapts selected functions and scripts from existing repositories including
For any questions, comments, or collaboration inquiries, please contact:
📧 zdong@caltech.edu
If you use this code, data, or methodology in your research, please cite the following paper:
Z. Dong et al.
“Non-invasive embryonic development monitoring in avian eggs using laser speckle contrast imaging,”
Biomedical Optics Express, 15(8): 4605, 2024.
https://opg.optica.org/boe/fulltext.cfm?uri=boe-15-8-4605