Skip to content

Dynamic speckle algorithm, showing distribution of activity of controlled sample

Notifications You must be signed in to change notification settings

F1reFr0st/Modified-Structure-Function-algorithm-MATLAB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Linkedin Badge Telegram Badge

Modified Structure Function (MSF) algorithm

Where MSF is used?

Dynamic speckle imaging (DSI) enables visualization of speed distribution for processes that occur in a controlled object and lead to micro-changes of its relief. Method is used in such fields as non-destructive testing, estimation of blood flow, measurement of bacterial response, observation of processes in plants, food quality assessment, drying of paints, fire detection and etc.

Images that show activity distribution within controlled object are called activity maps. Below are shown some examples.

Blod flow estimation Non-destructive testing Paint drying estimation
example example example

How to calculate activity maps?

Before obtaining activity maps, we have to capture speckle images. Setup for capturing images is shown below. It consists of vibration-isolated table, laser, laser expander and camera, connected to PC or laptop.

example

Speckle image may look like this, for instance

example

There are many algorithms to calculate activity maps, for instance, Laser Speckle Contrast Analysis (LACSA), Generalized Differences (GD), Fuji Algorithm and etc. In this code Modified Stucture Function algorithm is implemented as it is faster, more sensitive and calculated maps have better spatial resolution, comparing to other methods. Idea is to analize N correlated in time speckle images, consecutively captured with constant time interval.

example

To calculate final value of one pixel with i, j coordinates, we use Normalized Modified Structure Function equation.

Normalized Modified Structure Function $$\ S(i,j,m) = \frac{1}{N-1}\sum_{n=1}^{N-m}\frac{ \left|I_{ij,n} - I_{ij,n+m} \right|}{I_{ij,n} + I_{ij,n+m}} $$

Choice of m value affects the quality and sensitivity of the activity map to changes taking place in the observed object. Usually the value varies from 1 to 10.

You can download .zip file containing 20 images to see how this algorithm works and play with choice of m step. Also enter size of set equal to 20 in the input window.