martes, 19 de mayo de 2009

Triangulación de puntos seleccionados con el ratón en matlab

%punto a analizar de la camara izquierda
x_left_1=zeros(2,1);
x_right_1=zeros(2,1);
I=imread('izq_1.bmp');
figure(1)
imshow(I)
[x_left_1(1,1),x_left_1(2,1)]=getpts(figure(1));

%punto a analizar de la camara derecha

figure(2)
D=imread('der_1.bmp');
imshow(D)
[x_right_1(1,1),x_right_1(2,1)]=getpts(figure(2));

[Xc_1_left,Xc_1_right] = stereo_triangulation(x_left_1,x_right_1,om,T,fc_left,cc_left,kc_left,alpha_c_left,fc_right,cc_right,kc_right,alpha_c_right)

sprintf('El vector de traslación (x,y,z)=(%3.3f,%3.3f,%3.3f) respecto a la cámara izquierda \n',Xc_1_left(1,1)/10,Xc_1_left(2,1)/10,Xc_1_left(3,1)/10)
sprintf('El vector de traslación (x,y,z)=(%3.3f,%3.3f,%3.3f) respecto a la cámara derecha',Xc_1_right(1,1)/10,Xc_1_right(2,1)/10,Xc_1_right(3,1)/10)

Captura de stereo visión en Matlab

vid_izq=videoinput('winvideo',1);
preview(vid_izq)
vid_der=videoinput('winvideo',2);
preview(vid_der)
pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_1.bmp','BMP');
imwrite(im_der,'der_1.bmp','BMP');

pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_2.bmp','BMP');
imwrite(im_der,'der_2.bmp','BMP');

pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_3.bmp','BMP');
imwrite(im_der,'der_3.bmp','BMP');

pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_4.bmp','BMP');
imwrite(im_der,'der_4.bmp','BMP');

pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_5.bmp','BMP');
imwrite(im_der,'der_5.bmp','BMP');


pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_6.bmp','BMP');
imwrite(im_der,'der_6.bmp','BMP');

pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_7.bmp','BMP');
imwrite(im_der,'der_7.bmp','BMP');

pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_8.bmp','BMP');
imwrite(im_der,'der_8.bmp','BMP');

pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_9.bmp','BMP');
imwrite(im_der,'der_9.bmp','BMP');

pause
im_izq=getsnapshot(vid_izq);
im_der=getsnapshot(vid_der);
figure(1)
imshow(im_izq);
figure(2)
imshow(im_der);
imwrite(im_izq,'izq_10.bmp','BMP');
imwrite(im_der,'der_10.bmp','BMP');

Capturando Imagenes con matlab

obj1 = videoinput('winvideo', 1);
frame1 = getsnapshot(obj1);
figure(1)
image(frame1);
obj2 = videoinput('winvideo', 2);
frame2 = getsnapshot(obj2);
figure(2)
image(frame2);

sábado, 16 de mayo de 2009

Filtrado de color rojo en matlab

bola=imread('bola_i.bmp')
a=bola(:,:,1);
b=bola(:,:,2);
c=bola(:,:,3);

h = ones(5,5) / 25;
a = imfilter(a,h);
b = imfilter(b,h);
c = imfilter(c,h);

a = imfilter(a,h);
b = imfilter(b,h);
c = imfilter(c,h);

[m,n]=size(a)
for i=1:m
for j=1:n
a(i,j)=a(i,j)-0.3*b(i,j);
if(a(i,j)<0)
a(i,j)=0;
end
end
end
for i=1:m
for j=1:n
a(i,j)=a(i,j)-0.3*c(i,j);
if(a(i,j)<0)
a(i,j)=0;
end
end
end
level = graythresh(a)
BW = im2bw(a,level)
%BW = im2bw(a,0.3)
imview(BW)

lunes, 11 de mayo de 2009

Calificaciones de control digital

Hola, publico las calificaciones del tercer parcial. A quienes asistieron al foro de prototipos no se les descontaron 2 puntos.  Archivo aquí

Saludos