You are on page 1of 4

%METODO UTSU/Segmentacion por umbralizacion

function umbral()
I = imread('placa.jpg'); T = graythresh(I);
bw = im2bw(I, T);
subplot(1,2,1),imshow(I), title('Original')
subplot(1,2,2), imshow(bw), title('Segmentaci�n por Umbralizacion')
return;
end

%2 da manera de binarizarla imagen


function umbral()
I = imread('placa.jpg');
info=imfinfo('placa.jpg');
if (info.ColorType == 'truecolor')
I=rgb2gray(I);
else
I=I;
end
T = graythresh(I);
T = T * 255;
bw = (I <= T);
subplot(1,2,1)
imshow(I), title('Original')
subplot(1,2,2)
imshow(bw), title('Umbralizacion')
return;
end

%SEGMENTACION BASADA EN REGIONES


I = imread('imagen.jpg');
umbral = graythresh(I);
I = im2bw(I, umbral);
L = bwlabel(I);
stats = regionprops(L, 'all');
stats(1).BoundingBox

I = imread('placa.jpg');
umbral = graythresh(I);
I = im2bw(I, umbral);
L = bwlabel(I);
stats = regionprops(L, 'all');
E=stats(1).BoundingBox;
I=imcrop(I,E);
imshow(I)

%DETECCION DE PUNTOS
%Read image and detect interest points.
i1=imread('camara.jpg');
I=rgb2gray(i1);
points = detectSURFFeatures(I);
%Display locations of interest in image
imshow(I);hold on;
plot(points.selectStrongest(100));

POR REGIONES
I = imread('placa1.jpg');
umbral = graythresh(I);
I2 = im2bw(I, umbral);
%i3=imcrop(I2,[65 10 486 240]);
i4=not(I2);
L = bwlabel(i4);
stats = regionprops(L, 'all');
E=stats(1).BoundingBox;
I3=imcrop(i4,E);
E1=stats(2).BoundingBox;
L2=imcrop(i4,E1);
E2=stats(3).BoundingBox;
L3=imcrop(i4,E2);
L1=imresize(I3,[76 42]);
L21=imresize(L2,[76 42]);
L31=imresize(L3,[76 42]);
imwrite(L1,'M.jpg');
m1=imread('M.jpg');
k1=corr2(m1,L21)
if k1>0.85
disp('la letra es M')
else
disp('la letra no es M')
end
subplot(2,3,1);imshow(I);
title('Numero y letras de la placa');
subplot(2,3,2);imshow(I3);
title('Primer Caracter')
subplot(2,3,3);imshow(L2);
title('Segundo Caracter')
subplot(2,3,4);imshow(L3);
title('Tercer Caracter')

OPERACIONES CON IMAGENES


i=imread('1.jpg');
j=imread('2.jpg');
%s=imadd(i,j);
%imshow(s)
s=imadd(i,100);
imshow(s)

r=imsubtract(i,j);

g=immultiply(i,j);

subplot(2,2,1);imshow(s)
subplot(2,2,2);imshow(r)
subplot(2,2,3);imshow(g)

ULTIMA CLASE
PRACTICA 1
i= imread('barby.jpg');
original=rgb2gray(i);
figure; imshow(original);
scale=1.3;
J=imresize(original,scale);
theta=-31;
distorted=imrotate(J,theta);
figure; imshow(distorted);
%% Se detectan los puntos mas relevantes
ptsOriginal = detectSURFFeatures(original);
ptsDistorted = detectSURFFeatures(distorted);
%%Se extraen las caracteristica y se las compara
[featuresOriginal,validPtsOriginal]=extractFeatures(original,ptsOriginal);
[featuresDistorted,validPtsDistorted]=extractFeatures(distorted,ptsDistorted);

%%Comparacion de las caterateristicas


%emparejamiento
indexPairs=matchFeatures(featuresOriginal,featuresDistorted);

%%Se encuentra la segmentacion de las dos imagenes


matchedOriginal=validPtsOriginal(indexPairs(:,1));
matchedDistorted=validPtsDistorted(indexPairs(:,2));

%%Muestra las caracteristicas de emparejamiento


figure; showMatchedFeatures(original,distorted,matchedOriginal,matchedDistorted);
%%Se analiza las configuraciones locales
%Se emplea estimaciones geometricas
[tform,inlierDistorted,inlierOriginal]=estimateGeometricTransform(matchedDistorted,
matchedOriginal,'similarity');
[tform,inlierDistorted,inlierOriginal]=estimateGeometricTransform(matchedDistorted,
matchedOriginal,'affine');
[tform,inlierDistorted,inlierOriginal]=estimateGeometricTransform(matchedDistorted,
matchedOriginal,'projective');

%% Display the matching points


figure;showMatchedFeatures(original,distorted,inlierOriginal,inlierDistorted);
legend('ptsOriginal','ptsDistorted')

%% Se verifican las transformaciones geometricas


outputView=imref2d(size(original));
recovered=imwarp(distorted,tform,'OutputView',outputView);
%%
figure;imshowpair(original,recovered,'montage')

PRACTICA 2
i=imread('rostro.jpg');
original=rgb2gray(i);
figure;imshow(original);
fd=vision.CascadeObjectDetector;
bbox=step(fd,original);
outim=insertObjectAnnotation(original,'rectangle',bbox,'Face');
figure;imshow(outim);

PRACTICA 3
pd=vision.PeopleDetector;
h=imread('im4.jpg');
[bboxes,scores]=step(pd,h);
k=insertObjectAnnotation(h, 'rectangle',bboxes,scores);
figure; imshow(k);

You might also like