Apply adaptive histogram equalization at the bottom part of the image
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi. I have a set of 2000 tif images of size 1024 X 1024 pixels in a folder and I want to apply histogram equalization only at the bottom part of the image. Say from y = 800 px to y = 1024 px, and make the rest (top part) of the image black. How can I incorporate this in the below code?
% Location of the original files
d = 'D:\Raw_Images\';
% Location of the new files
drive1='D:\New Imagews\';
for i=1:2000
num=sprintf('%03.0f\n',i);
name=strcat(d,'B_',num,'.tif');
I=imread(name);
J=adapthisteq(I,'NumTiles',[8 8],'clipLimit',0.1,'Distribution','uniform');
imwrite(J,strcat(drive1,'B_',num,'.tif'),'Compression','none');
end
0 commentaires
Réponse acceptée
DGM
le 21 Avr 2021
Something like this.
inpict=imread('someparticularimage.tiff');
tophalf=zeros([799 size(inpict,2) size(inpict,3)],class(inpict));
bothalf=inpict(800:end,:,:);
for c=1:size(inpict,3)
bothalf(:,:,c)=adapthisteq(bothalf(:,:,c),allmyfavoriteargumentsgohere);
end
outpict=cat(1,tophalf,bothalf);
This assumes the images may be color. If you can be assured that they are all single-channel images, the loop would be unnecessary.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Image Filtering and Enhancement dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!