-1
Как я могу отделить изображение от трех областей (темный, средний, яркий)? Для этого доступны любые команды matlab?Adaptive Contrast Enhancement (ACE)
Как я могу отделить изображение от трех областей (темный, средний, яркий)? Для этого доступны любые команды matlab?Adaptive Contrast Enhancement (ACE)
В панели инструментов обработки изображений есть несколько вариантов сегментирования изображений на основе цвета. Дополнительная информация here. Если вам нужно только выбрать пиксели в зависимости от интенсивности, вы можете использовать логические операторы. Вот пример такого подхода:
% create an example image with three regions of intensity
im = ones(100,100);
im(1:25, 1:30) = 256;
im(75:end, 7:end) = 128;
% add some random noise
im = im + 10*rand(size(im));
% display image
figure
subplot(2,2,1)
image(im)
colormap gray
% segment image based on intensity
bottomThird = 256/3;
topThird = 2*256/3;
index1 = find(im < bottomThird);
index2 = find(and((im > bottomThird),(im <topThird)));
index3 = find(im > topThird);
%create images for each segmented region
im1 = ones(size(im));
im2 = ones(size(im));
im3 = ones(size(im));
im1(index1) = 0;
im2(index2) = 0;
im3(index3) = 0;
%display sub-regions
subplot(2,2,2)
imagesc(im1)
subplot(2,2,3)
imagesc(im2)
subplot(2,2,4)
imagesc(im3)