Sunteți pe pagina 1din 4

PONTIFICIA

INFORMACIÓN UNIVERSIDAD
GENERAL CATÓLICA
SOBRE MODELOS RGBDEL
Y
ECUADOR
LIBRERÍASSEDE ESMERALDAS
OPENCV

LIBRERIAS OPENCV
Resumen. - En el siguiente informe se abordará información
Definición:
explicita sobre los modelos rgb y librerías opencv, este tema es

ALEXADER ARROYO - JEAN PIERRE LEÓN


relevantes en la materia de procesamiento de imágenes, para ello se
necesitará recopilar información efectiva para la correcta OpenCV es una librería de visión por computador de código
elaboración del informe. abierto, La librería está escrita en los lenguajes C y C++ y es
compatible con Linux, Windows y Mac OS X. Cuenta con un
desarrollo activo en interfaces para Python, Ruby, Matlab y
Palabras claves. – OPENCV, RGB, pixeles, procesamiento.
otros lenguajes. OpenCV ha sido diseñado para ser eficiente
en cuanto a gasto de recursos computacionales y con un
I. INTRODUCCION
enfoque hacia las aplicaciones de tiempo real.
Todo sistema en general utiliza diferentes sistemas de
OpenCV está escrito y optimizado en C y puede tomar ventaja
archivos y datos los cuales tienen un comportamiento puntual.
de los procesadores con múltiples núcleos.
Se tiene la necesidad de tener el conocimiento previo de los
Requisitos:
modelos rgb y las librerías opencv, puesto a ese hecho
Uno de los objetivos de OpenCV es proveer una
relevante tuve la predisposición de tomar medidas óptimas
infraestructura de visión por computador fácil de utilizar que
para respaldas la realización de esta investigación.
ayuda a los programadores a desarrollar aplicaciones
En la definición del problema se puede aducir que el
‘sofisticadas’ de CV (Computer Vision) rápidamente.
comportamiento exploratorio de los modelos rgb y librerías
La librería OpenCV contiene aproximadamente 500
opencv dentro de las imágenes permitirá mediante un modelo
funciones que abarcan muchas áreas de CV, incluyendo
computacional un mejor entendimiento de las propiedades de
inspección de productos de fábricas, escaneo médico,
las imágenes ante ciertos procesos de programación en
seguridad, interfaces de usuario, calibración de cámaras,
Matlab.
robótica…etc, porque la visión por computador y el
La librería OpenCV proporciona un marco de trabajo de alto
aprendizaje automática van de la mano.
nivel para el desarrollo de aplicaciones de visión por
OpenCV también tiene una completa librería de uso general
computador en tiempo real: estructuras de datos,
de aprendizaje automático (MLL o Machine Learning
procesamiento y análisis de imágenes, análisis estructural,
Library), la cual es muy útil para cualquier problema de
etc. Este marco de trabajo facilita en gran manera el
aprendizaje automático. Esta sublibrería está especializada en
aprendizaje e implementación de distintas técnicas de visión
el reconocimiento estadístico de patrones y clustering.
por computador, tanto a nivel docente como investigador,
aislando al desarrollador de las peculiaridades de los distintos
sistemas de visión.[1]

II. CONTENIDO


Figura 1: Funciones Opencv Figura 2: Categorías Opencv
Módulos de OPENCV:
Opencv tiene una estructura modular, los cuales son los
GESTIONAR DISTINTOS TIPOS DE IMÁGENES
siguientes:
Core Una imagen no es más que una matriz o un array
Este es el módulo básico de OpenCV. Incluye las estructuras bidimensional de números, siendo cada celda el equivalente a
de datos básicas y las funciones básicas de procesamiento de un píxel. Las imágenes poseen dimensiones de ancho x alto
imágenes. Este módulo también es usado por otros módulos (width x height), siendo el ancho las columnas y el alto las
como highgui. filas.[2]
Highhui Formatos de Ficheros
Este módulo provee interfaz de usuario, códecs de imagen y Formato BMP
vídeo y capacidad para capturar imágenes y vídeo, además de Este formato fue desarrollado por Microsoft para permitir una
otras capacidades como la de capturar eventos del ratón…etc. rápida entrada / salida por disco/pantalla. Entre las
Si necesitas capacidades de UI (User Interface) más características de este tipo de almacenamiento destaca la gran
avanzadas debes usar frameworks tales como Qt, WinForms. cantidad de niveles de profundidad que oferta: 1 bit por píxel
Imgproc (imagen de 2 colores o binaria), 4 bits por píxel (imagen de
Este módulo incluye algoritmos básicos de procesado de 16 colores), y 24 bits por píxel o lo que es lo mismo 3 bytes
imágenes, incluyendo filtrado de imágenes, transformado de (imagen de color). Este formato utiliza compresión sin
imágenes. pérdida: RLE o sin comprimir. Además, el almacenamiento es
Video bottom-left (se empieza por la parte inferior izquierda), y
Este módulo de análisis de vídeo incluye algoritmos de entrelaza los canales.[2]
seguimiento de objetos, entre otros. Formato Tiff
Objdetect Fue creado por Aldus (ahora Adobe) pensado en trabajos de
Incluye algoritmos de detección y reconocimiento de objetos impresión de alta resolución y calidad. Este es un formato
para objetos estándar. muy flexible, basado en tags (etiquetas) que son bloques de
datos (de formato predefinido) que contienen cierto tipo de
información sobre la imagen. Existen muchos tipos de tags (y
se pueden crear nuevos). Un fichero puede contener muchos
tags, uno detrás de otro. Éste es uno de los formatos más imshow(f);
abiertos que existe: admite hasta 64 000 canales, un número title('Imagen Original');
arbitrario de bits por píxel (hasta enteros o reales de 64 bits),
figure;
distintos espacios de color, múltiples imágenes por fichero, imshow(J);
cualquier tipo de compresión existente.[2] title('Imagen Trasladada');

Formato JPEG
Escalado
Es un formato bastante reciente, está más elaborado y
El escalado es una transformación afín que puede aumentar o
orientado al almacenamiento de imágenes fotográficas.
disminuir un objeto por un determinado factor. La imagen
Admite tanto imágenes en escala de grises (1 byte por píxel)
que se obtiene a la salida se relaciona con la entrada
como imágenes en color RGB (3 bytes por píxel). Además,
siguiendo la siguiente regla:
incluye mecanismos avanzados de compresión, que pueden
Imag_destino (x, y) = Imag_origen (ex*x, ey*y)
ajustarse a distintas ratios de compresión. Una de sus
siendo:
principales características es la compresión con pérdida,
- ex: escala en el eje x
mediante DCT. El fichero puede incluir una versión reducida
- ey: escala en el eje y
para pre visualizar la imagen antes de leerla.[2]
Dentro del escalado existen dos supuestos básicos: que la

TRANSFORMACIONES GEOMETRICAS imagen de salida


aumente con respecto a la imagen de entrada (aumento), o
Se entiende por transformación afín cualquier tipo de rotación
que la imagen de salida disminuya con respecto a la imagen
escalado o traslación que se produzca en las dos direcciones
de entrada (reducción). La aplicación de una u otra dependerá
espaciales del plano. Como transformaciones afines
del factor de escala que introduzcamos.
principales podemos citar: el escalado, la rotación y la
f=imread('Paisaje.jpg');
traslación. El elemento básico de toda transformación afín es T=graythresh(f);
la matriz de transformación, que será la encargada de definir
la clase y los parámetros de la transformación a realizar. Así, g=imresize(f,0.5);
figure;
tendremos siempre una matriz asociada tanto para el imshow(f);
escalado, como para la rotación, como para la traslación.[2] title('Imagen Original');
Traslación
figure;
La traslación también es conocida como desplazamiento, y se imshow(g);
basa en el cambio de posición de un objeto de acuerdo con title('Imagen Escala');
una fórmula. Por lo tanto, la imagen de salida obtenida se
relaciona con la entrada de la siguiente manera:
Rotación
Img_resultado (x, y) = Img_origen (x + dx, y + dy)
La rotación es una transformación en la que los ejes de
Siendo, dx = desplazamiento en el eje horizontal
coordenadas son rotados un determinado ángulo respecto al
dy = desplazamiento en el eje vertical
origen. Las operaciones en las coordenadas que se llevan a
código de imagen trasladada
cabo en la rotación se pueden sintetizar en la siguiente
f=imread('Paisaje.jpg');
T=graythresh(f); relación:
fbinaria=im2bw(f,T); Imagen_resultado (x, y) = Imagen_inicial (x∙cosα + y∙sen, α
r=imrotate(f,45); -x∙sen α + y∙cos)
J = imtranslate(f,[25.3,
-10.1],'FillValues',255); siendo a = ángulo de rotación
figure; código de imagen rotada 45º
f=imread('Paisaje.jpg'); IV. REFERENCIAS
T=graythresh(f);
fbinaria=im2bw(f,T); [1] C. Medrano, “Tutorial de OpenCV.”
r=imrotate(f,45);
figure; [2] G. G. M, “El Derecho a la Intimidad y la
imshow(f); Informática,” pp. 67–77, 1984.
title('Imagen Original'); [3] V. M. Arévalo, J. González, and G. Ambrosio, “La

figure; Librería De Visión Artificial Opencv Aplicación a La


imshow(r); Docencia E Investigación,” pp. 1–6, 2002.
title('Imagen rotada 45º'); [4] https://osl.ull.es/software-libre/opencv-libreria-vision-
computador/

BINARIZACION DE IMÁGENES
En esta sección se pretende dar a entender las armas con las
que nos provee Opencv para el cambio de codificación entre
imágenes. Así, el principal objetivo es encontrar una función
o conjunto de funciones que realicen la misma operación que
las estructuras graythresh y im2bw realizan en Matlab. Por
tanto, debemos ser capaces de tomar una imagen en escala de
grises (imagen de intensidad) y convertirla en imagen binaria,
mediante la aplicación de un umbral. Todos los valores
superiores al valor umbral serán binarizados a 1 y los que no
superen ese valor lo serán a 0.
Código imagen hacer una imagen binaria
f=imread('Paisaje.jpg');
T=graythresh(f);
fbinaria=im2bw(f,T);
figure;
imshow(f);
title('Imagen Original');
figure;
imshow(fbinaria);
title('Imagen Binaria');

III. CONCLUSIONES
Opencv constituye una de las apuestas más interesantes e
importantes en visión por computador a lo largo de los
últimos tiempos y además Software Libre. Su estabilidad,
escalabilidad, su rápido crecimiento y desarrollo garantizan
su continuidad y la hacen especialmente útil en el ámbito
universitario, para la realización de tareas de docencia e
investigación a corto, medio y largo plazo.

S-ar putea să vă placă și