Interactive tool allowing the measurement of distances, radii, and angles in images
Updated 12 Mar 2021

Editor's Note: This file was selected as MATLAB Central Pick of the Week

# Measure Tool
Measure Tool is a matlab function (measuretool.m) that provides a Graphical User Interface (GUI) that is designed to aid measurements on images.

If an image contains some visible object of known length, for example, a scale bar or a ruler, then the physical size of an area as imaged by a pixel (i.e. the pixel size) can be calibrated. This tool provides tools to perform this calibration (draw a line on the ruler) and then perform measurements on the image:
- Distance: point-point distance
- Caliper: line-point perpendicular distance
- Polyline: multi-point distance
- Spline: smooth multi-point distance (Catmull-Rom interpolated)
- Circle: center and radius
- Angle: line-line intersection angle

The main motivation behind the tool is precision. This is achieved by allowing image magnification changes while measuring. This allows the user to place points precisely using the mouse. Additionally, all measurements can by edited to allow further refinement.

The GUI is reasonably self contained, all code resides in one file: measuretool.m
This file also contains the GUI help, which is available through the GUI itself. See the header of measuretool.m for more info.

The tool has been hosted on the Matlab FileExchange since November 2009, the corresponding website can be found here:
http://www.mathworks.com/matlabcentral/fileexchange/25964-image-measurement-utility. Recently, that site is linked to the GitHub repository, which can be found here: https://github.com/Jann5s/measuretool.

Please let me know (by submitting and issue on GitHub) if you find any bugs or issues, or if you have some nice ideas for improvement.

Cite As

Jan Neggers (2024). Jann5s/measuretool (https://github.com/Jann5s/measuretool), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2015a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Versions that use the GitHub default branch cannot be downloaded

Version Published Release Notes

Complete rewrite, now with new code to handle mouse interactions alleviating the requirement on the image processing toolbox and (hopefully) making the tool more intuitive.

added the .bmp image type as suggested by Jie

Updated to include an App file for R2012b

Added a feature, as suggested by Jakub, now the average intensity can be drawn, and the intensity profiles can be saved to the workspace.

Made the GUI more intuative by improving the status texts, and disabling most buttons during a measurement.

A major update of the GUI, the interface is more intuitive now, also, some options have been added to allow the use of this tool for pre 2009b versions of matlab or in absense of the IP toolbox.

Added the long awaited save options, and fixed a bug with the help function not working.

I've fixed the color issue, mentioned by Till, also added a lot of comments to make the code more readable, and changed the method of providing the in GUI help.

Fixed some minor bugs, that would throw errors to the command screen when pressing buttons in an unexpected order.

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.