Matlab - segmentacion de imagen

 
Vista:

segmentacion de imagen

Publicado por lucii (1 intervención) el 03/12/2015 01:27:45
Hola buenas tardes tengo que segmentar una imagen en tres columnas, la primer columna debe estar dividia en 7 filas, la segunda columna sin divisiones y la tercer columna en 7 filas les agradeceria su ayuda

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
close all;
clear all;
clc;
 
A1 = rgb2gray(imread('imagenn.jpg'));
imshow(A1)
[f c] = size(A1);
umbral = 255;
 
for i = 1: f
    for j = 1 : c
 
        if j < c/2   % division verticcal
            if i < f/3
                IR(i,j) = A1(i,j);
            else
              IR(i,j) = 255 - A1(i,j);
            end
        else % division verticcal
             if i < f/2
                 IR(i,j) = 255 - A1(i,j);
 
            else
                 %if j < c/2     
                if A1(i,j)< umbral
                    IR(i,j)=150;
            else
              IR(i,j) = 150;
            end
            end
        end
        end
    end
%end
 
 
figure; imshow(IR);
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

segmentacion de imagen

Publicado por Royeth (1818 intervenciones) el 03/12/2015 03:56:51
esta es una forma que puedes segmentar tu imágen :


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
dc=3; %cuantas columnas
df=7; %cuantas filas
A1=reshape(1:21*21, [21 21]); %aquí va tu imágen leída
[f, c] = size(A1);
v=linspace(0,c,3+1);
v(2,1:end+1)=[0 v+1];
v(:,1)=[];
v(:,end)=[];
v2=linspace(0,f,df+1);
v2(2,1:end+1)=[0 v2+1];
v2(:,1)=[];
v2(:,end)=[];
for k=1:dc
for l=1:df
A{l,k}=A1(v2(2,l):v2(1,l),v(2,k):v(1,k));
end
end


luego de esto debes concatenar la columna del medio y listo , para ver una matriz en especifico colocas
A{1,1} por ejemplo y te muestra la primera matriz , en caso de que tu matriz no vaya a dar regular debes usar redondeos

saludos
https://www.facebook.com/royethmatlab/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar