How to subtract false color gradient ?
Afficher commentaires plus anciens
Hi! I am trying to subtract a False color gradient from my image. I tried using the "detrend" function to subtract the polynomial trend, but it seems like I might be subtracting too much. I get some weird lines across my image.
This is the image before the gradient correction:
and this is how it looks after:

And this is my code:
% Calculate strain
strainNorm = (dspacingNorm - dspacingNominal) / dspacingNominal;
% Gradient Correction
D = detrend(strainNorm,1,'omitmissing');
figure; imagesc(xbins,ybins,D * 100);
title('Elastic lattice strain (%)'); colorbar; axis square; axis equal; % axis([0 xbins(end) 0 ybins(end)])
colormap jet; caxis([strainMin strainMax])
set(gca,'xtick',[]); set(gca,'xticklabel',[]); set(gca,'ytick',[]); set(gca,'yticklabel',[])
Thank you!
Réponses (1)
detrend() operates column by column. I suspect you can avoid the lines by subtracting a plane fit to the whole surface instead, e.g., using planarFit() from this FEX download,
2 commentaires
Edith Celeste
le 4 Juil 2023
Matt J
le 4 Juil 2023
Maybe I am not applying it right
I would have to assume that.
Catégories
En savoir plus sur Read, Write, and Modify Image dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!