MERIT provides free software algorithms for Delay-and-Sum reconstruction of microwave imaging signals in medical and industrial settings. MERIT allows users to easily and configurably test different algorithms, easily switching between time and frequency domain signal representations. All inbuilt algorithms can be configured to run in parallel or on GPU without changing the code. Features include:
- visualize signals: view and compare signals;
- manage signals: reorder antenna numbering, exclude channels etc., limit to monostatic/bistatic signals etc.;
- estimate propagation paths based on transmit and receive locations;
- delay signals based on propagation paths through multiple media with dispersive dielectric properties;
- image using a highly configurable and extensible set of beamforming algorithms such as delay-and-sum;
- analyze resulting images using a variety of metrics such as signal-to-clutter and signal-to-mean ratios;
- and visualize image results in two and three dimensions.
MERIT is designed to make the imaging code short, clear and efficient. For example:
%% Load sample data (antenna locations, frequencies and signals)
frequencies = dlmread('example_data/frequencies.csv');
antenna_locations = dlmread('example_data/antenna_locations.csv');
channel_names = dlmread('example_data/channel_names.csv');
scan1 = dlmread('example_data/B0_P3_p000.csv');
scan2 = dlmread('example_data/B0_P3_p036.csv');
%% Perform rotation subtraction
signals = scan1-scan2;
%% Generate imaging domain
[points, axes_] = merit.domain.hemisphere('radius', 7e-2, 'resolution', 2.5e-3);
%% Calculate delays for synthetic focusing
delays = merit.beamform.get_delays(channel_names, antenna_locations, ...
'relative_permittivity', 8);
%% Perform imaging
img = abs(merit.beamform(signals, frequencies, points, delays, ...
merit.beamformers.DAS));
%% Plot image using MATLAB functions
im_slice = merit.visualize.get_slice(img, points, axes_, 'z', 35e-3);
imagesc(axes_{1:2}, im_slice);
In a few lines of code, radar-based images can be efficiently created. MERIT allows the user to change the beamformer, imaging domain and other features easily and simply. Functions are designed to accept options allowing the user to easily change the imaging procedure.
To try MERIT:
Follow the Getting Started Guide which shows, using a step-by-step guide, how to load, process, image and visualise microwave breast images. Bug reports, feature requests, or code or documentation contributions are welcome.
If you have found MERIT useful and publish your work, we would be grateful if you could cite us using:
D. O’Loughlin, M. A. Elahi, E. Porter, et al., "Open-source Software for Microwave Radar-based Image Reconstruction", Proceedings of the 12th European Conference on Antennas and Propagation (EuCAP), London, the UK, 9-13 April.
If you have used and cited MERIT, please consider adding your publication here (using the Github Issue Tracker: how-to guide).
Research publications which have used MERIT:
-
Effects of Interpatient Variance on Microwave Breast Images: Experimental Evaluation
-
Evaluation of Experimental Microwave Radar-Based Images: Evaluation Criteria
The most recent version is 0.1.0. Notable changes to MERIT are recorded in CHANGELOG. The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
MERIT is available under the Apache 2.0 license. See LICENSE for more information.