Detectar sustracción de imágenes
Publicado por Oscar (3 intervenciones) el 15/05/2012 02:37:17
Hola.
Estoy intentando realizar un proyecto en Matlab 2009a, que identifique la sustracción de un objeto dentro de una serie de imágenes capturadas a través de una cámara y emita una alarma, ya sea sonora o por led de que el objeto ya no se encuentra.
De la misma forma que se muestra en el siguiente video:
Por favor si me puede alguien colaborar ya que es un trabajo urgente que debo entregar el día de mañana.
El código que he intentado arreglar es el siguiente:
Muchas gracias!
Estoy intentando realizar un proyecto en Matlab 2009a, que identifique la sustracción de un objeto dentro de una serie de imágenes capturadas a través de una cámara y emita una alarma, ya sea sonora o por led de que el objeto ya no se encuentra.
De la misma forma que se muestra en el siguiente video:
Por favor si me puede alguien colaborar ya que es un trabajo urgente que debo entregar el día de mañana.
El código que he intentado arreglar es el siguiente:
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
% Capturando la imágen
vid = videoinput('winvideo',1,'RGB24_320x240'); % Establece la conexión con la WebCam
start(vid); % Inica la WebCam
imagen=getsnapshot(vid); % Captura la foto
J = rgb2gray(imagen); % Convierte la foto a blanco y negro
BW = edge(J,'prewitt'); % Aplica Filtro
BW2 = edge(J,'canny'); % Aplica Filtro
imshow(BW); % Muestra foto filtrada
figure, imshow(imagen) % Muestra la foto
% Detectar la sustracción del objeto
% Importar la imágen con el(los) objeto(s) a evaluar
A=imread('C:\Users\danielLDS\Desktop\UDI\Visión Artificial\parcialkarenestupiñan\objeto.jpg');
B=rgb2gray(A); % Pasar a escala de grices
[M N]=size(A); % Determinar el tamaño de la imágen
C=ones(M,N); % COnvertir a unos la matriz de la imágen
%Recorrer la matriz y almacenar en una nueva
for i=225:270
for j=235:371
C(i,j)=B(i,j);
end
end
% Importar la imágen
I=imread('C:\Users\danielLDS\Desktop\UDI\Visión Artificial\parcialkarenestupiñan\objeto.jpg');
% Pasar a escala de grices
zgris=rgb2gray(I);
%Recorrer la región de la imágen donde está el objeto
for i=225:270
for j=235:371
% Si los pixeles de la región evaluada coinciden con el de la
% matriz donde aparece el objeto, muestra el mensaje
% correspondiente
if I(i,j)==C(i,j)
mensaje='TIENE EL OBJETO';
else
mensaje='NO HAY OBJETO';
end
end
end
mensaje %Muestra el mensaje
imshow(I)
%imtool(zgris) % Herramienta para retocar imágen
% Detección del puerto paralelo
parport = digitalio('parallel','LPT1');
dato = addline(parport,0:7,'out');
n=1;
for i=1:8
putvalue(dato,n);
n=n*2;
pause(0.2)
end
n=128;
for i=1:8
putvalue(dato,n);
n=n/2;
pause(0.2)
end
Muchas gracias!
Valora esta pregunta


0