How to normalize heatmap image and find the shape info

The following heatmap image is non-normalized and includes RCS info. How to normalize it and use the shape of the object for classification instead of RCS?

Answers (1)

Hi Mohamed,
When working with heatmaps for data analysis, I've had similar experiences where MATLAB made the process much more manageable. Below, I've provided a sample code that can be used for the task. Feel free to adapt its individual components for other needs as well.
heatmapImage = imread('your_heatmap_image.png');
if size(heatmapImage, 3) == 3
heatmapImage = rgb2gray(heatmapImage);
end
normalizedHeatmap = normalize(double(heatmapImage));
figure;
imshow(normalizedHeatmap, []);
title('Normalized Heatmap');
binaryImage = imbinarize(normalizedHeatmap);
stats = regionprops(binaryImage, 'Area', 'Perimeter', 'BoundingBox', 'Centroid');
figure;
imshow(binaryImage);
hold on;
for k = 1:length(stats)
rectangle('Position', stats(k).BoundingBox, 'EdgeColor', 'r', 'LineWidth', 1);
end
title('Extracted Shapes');
hold off;
The result for the given image is as follows:
There are multiple functions used here, you can explore the same using the following commands:
  • “doc normalize”
  • “doc imbinarize”
  • “doc regionprops”
I hope this helps with your issue.

Categories

Products

Release

R2019a

Tags

Asked:

on 20 Apr 2021

Answered:

on 21 Feb 2025

Community Treasure Hunt

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

Start Hunting!