How to subtract false color gradient ?
이전 댓글 표시
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!
답변 (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
Edith Celeste
2023년 7월 4일
Matt J
2023년 7월 4일
Maybe I am not applying it right
I would have to assume that.
카테고리
도움말 센터 및 File Exchange에서 Read, Write, and Modify Image에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!