File Exchange

image thumbnail

grain and particle analysis with line intersection method

version 1.6 (72.2 KB) by

This GUI allows you to analyze the size of grains in a micrograph with the 'line cut' method.



View License

This program allows you to analyze the size of grains in a micrograph with the intersection method arranged in a user-friendly GUI.
After loading the micrograph the program puts lines on the surface. Now you have to use the cursor to click on the intercept of the lines with the grain boundaries. Concluding you get an editable and savable histogram and a txt-file containing the length of the grains.
You can also analyze existing txt-files to get the histogram (including lognormal distribution fitting) or an empirical cumulative distribution function plot of different micrographs and you can compare them in one chart.
In addition you get a lot of features (e.g. rotate image) and fully control about many settings.

The GUI should be mostly self-explanatory, anyway I recommend this screencast, in which all features are explained.
Alternative on YouTube:
as playlist:
Part 1 (Image):

Part 2 (File):

Part 3 (CDF):

Part 4 (rotate image):

Part 5 (save settings):

If you have special questions please check the header of the .m file and email the responsible person:

This submission based on the idea and code of Matthias Funk from the Karlsruhe Institute of Technology (KIT), IAM-WBM, Nachwuchsgruppe für microreliability. This project was financed by DFG-SFB499N01.
The lognormal distribution fitting in histogram was created by Jochen Lohmiller based on:
C.E. Kril, R. Birringer, Esimating grain-size distributions in nanocrystalline materials from X-ray diffraction profile analysis, Phil. Mag. A, 77: 3, 621 — 640

Comments and Ratings (4)


Aeriel (view profile)

When I use this code I get multiple openfig.m errors.


Excellent program, but can I use this for analysing particles size which are aggregated particles, and some of them are separated from others (ther are some empty space or gap between them)?

Thank you in advance

zhou jianshan



added contact data; 'Line Cut' = 'intersection method'


changed title


added all Screencasts to YouTube; small fix in CDF (to avoid errors at multiple file selection)


- Uploaded alternative Screencast (due to traffic limitation on

MATLAB Release
MATLAB 7.13 (R2011b)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video