Professional Documents
Culture Documents
ENUNCIADO
DESCRIPCION
FORMULACION
Justificacin
Objetivos:
Objetivos General
El objetivo general de este proyecto es mejorar el
sistema de seguridad de nuestro Pais
MARCO REFERENCIAL
Antecedentes de la investigacion.-
Historia
Egomotion estimacin
Reconocimiento de gestos
Robtica mvil
Movimiento comprensin
Identificacin de objetos
La segmentacin y el reconocimiento
Realidad aumentada
Impulso (meta-algoritmo)
Bosque aleatoria
MARCO TEORICO
Que es OPEN CV?
Segmentacin de imgenes
Deteccin de bordes
La deteccin de bordes es un campo bien desarrollado por s
mismo en el procesamiento de imgenes. Los lmites de
regiones y los bordes estn estrechamente relacionados, ya
que a menudo hay un fuerte ajuste en la intensidad en los
lmites de las regiones. Las tcnicas de deteccin de bordes
pueden ser usadas como otra tcnica de segmentacin ms. Los
bordes identificados por la deteccin de bordes en ocasiones
estn desconectados. Para segmentar un objeto a partir de una
imagen sin embargo, es necesario que los bordes formen
figuras cerradas.
Transformadas de Hough
Las transformadas de Hough determinan la localizacin de
curvas parametrizadas dentro de una imagen. En este caso se
emplearn para la localizacin de lneas rectas y crculos.
La entrada a este algoritmo es una imagen binarizada, donde
se ha etiquetado los pxeles representantes de los bordes con
el nivel 1 y al fondo se le coloca con nivel 0. Para esta
prctica se he elegido el detector de Canny. Sitese en el
>>[m n] = size(imgEnt);
>>D = logical(zeros(m, n,'uint8'));
>>imgSegm = zeros(m, n);
>>x=1;y=1;
>>imgDivision=double(imgDivision);
>>i=1; while( size(x,1) ~= 0) imCond = (imgDivision >
(imgDivision(x(1),y(1))-20))... & (imgDivision <
(imgDivision(x(1),y(1))+20)); imCond = imCond & (~D); im1 =
regionGrowing2(imgDivision, x(1), y(1), 20,imCond);
imgSegm(im1)=i; i = i +1; D = D | im1; [x,y]= find(D == 0);
end
>>imgEtiq = label2rgb(imgSegm);
>>imshow(imgEtiq);
Los resultados de la segmentacin se visualizan sobre la
imagen de entrada:
>>borde =edge(imgSegm,'canny');
>>imshow(ImagResMarcado(imgEnt,borde));
x_cont = 0;
y_cont = 0;
x_total = 0;
y_total = 0;
int
int
int
int
x_v_cont = 0;
y_v_cont = 0;
x_v_total = 0;
y_v_total = 0;
//rojo
if ((data[i*anchura_fila+j*canales + 2] > 80) &&
!((data[i*anchura_fila+j*canales + 0] >
data[i*anchura_fila+j*canales + 2]/2) ||
(data[i*anchura_fila+j*canales + 1] >
data[i*anchura_fila+j*canales + 2]/2))){
printf(Punto rojo en %d, %d, valor: %dn,j,i,
data[i*anchura_fila+j*canales+2]);
data[i*anchura_fila+j*canales + 2]=0;
y_total = y_total + i;
x_total = x_total + j;
y_cont++;
x_cont++;
}
}
1 - El doble bucle anidado del que hablamos anteriormente,
necesario para recorrer la imagen (de izquierda a derecha, y
de arriba a abajo).
3 - Accedemos a cada color tal y como coment en la
seccin Qu es una imagen?:. En este caso el verde que est
en el medio ser el + 1. Con este valor umbral de 80 tenemos
suficiente verde, por debajo sera ya demasiado oscuro, y por
encima perderamos pxeles verdes.
4 y 5 - Que los valores de azul y rojo sean claramente
inferiores a los de verde es importante; con que sus valores
no lleguen a la mitad del verde es suficiente. La expresin
booleana completa significa: Si el valor del canal verde es
superior a 80, y el de los canales rojo y azul no supera
ninguno de ellos la mitad del verde, entonces
7 a 9 Pintamos los pxeles de blanco, para que cuando
mostremos la imagen veamos cuales ha detectado.
10 a 13 - Guardamos los datos para el posterior clculo del
punto medio.
17 a 26 Repetimos el proceso con los pxeles rojos.
Clculo del punto medio de los dos objetos, y la distancia
entre ellos:
int x_medio = x_total / x_cont;
int y_medio = y_total / y_cont;
Seguimiento de imagenes
Otra de las aplicaciones muy practicas que podemos crear con
opencv es un sistema de deteccin de movimientos, podremos
por ejemplo usar una webcam para detectar movimiento y hacer
que se una notificacin a nuestro telfono, las aplicaciones
FUENTES
https://unpocodejava.wordpress.com/2013/10/09/que-es-opencv/
http://acodigo.blogspot.com/
https://es.wikipedia.org/wiki/Segmentaci%C3%B3n_(procesamiento_de_im%C3%A1genes)
http://www.elai.upm.es/webantigua/spain/Asignaturas/Robotica/PracticasROVA/prROVA5Seg
mentacion.pdf
http://alojamientos.us.es/gtocoma/pid/tema4.pdf