2013-03-22 3 views

ответ

0

В панели инструментов обработки изображений есть несколько вариантов сегментирования изображений на основе цвета. Дополнительная информация 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) 
Смежные вопросы