Operaciones Con
Operaciones Con
Imágenes Binarias
Imágenes Binarias
-ÍNDICE
ÍNDICE
1.
1.
INTRODUCCION
INTRODUCCION
2.
2.
ANÁLISIS
ANÁLISIS
3.
3.
IMPLEMENTACIÓN
IMPLEMENTACIÓN
4.
4.
OPERACIONES Y EJEMPLOS
OPERACIONES Y EJEMPLOS
5.
1.INTRODUCCIÓN
1.INTRODUCCIÓN
-¿En que consiste este trabajo?
¿En que consiste este trabajo?
Aplicaci
Aplicaci
ó
ó
n de operaciones sobre im
n de operaciones sobre im
á
á
genes binarias
genes binarias
representadas mediante una determinada codificaci
representadas mediante una determinada codificació
ó
n.
n.
La codificació
La codificaci
ó
n utilizada es á
n utilizada es
árboles binarios basados en
rboles binarios basados en
interpolaci
¿En que consiste este trabajo?
¿En que consiste este trabajo?
Imagen Original
¿En que consiste este trabajo?
¿En que consiste este trabajo?
Imagen Original
Representación y
Codificación
¿En que consiste este trabajo?
¿En que consiste este trabajo?
Imagen Original
Representación y
Codificación
Traslación Rotación...
Reflexión{1245,2132,1311}
Operaciones
¿En que consiste este trabajo?
¿En que consiste este trabajo?
Imagen Original
Representación y
Codificación
Traslación Rotación...
Reflexión{1245,2132,1311}
Operaciones
Representación y
Codificación
¿En que consiste este trabajo?
¿En que consiste este trabajo?
Imagen Original
Representación y
Codificación
Traslación Rotación...
Reflexión{1245,2132,1311}
Operaciones
Representación y
Codificación
Imagen Final
2. ANÁLISIS
2. ANÁLISIS
¿En que consiste representación usada: IBB?
¿En que consiste representación usada: IBB?
¿En que consiste la codificación
¿En que consiste la codificación
utilizada: IBB?
utilizada: IBB?
La representación
La representación
ibb
ibb
consiste en un conjunto de
consiste en un conjunto de
códigos que obtenemos de la siguiente forma:
códigos que obtenemos de la siguiente forma:
Partiendo de una imagen binaria, realizamos una
Partiendo de una imagen binaria, realizamos una
representación de la misma mediante un árbol
representación de la misma mediante un árbol
binario. Para obtener el árbol, utilizamos el siguiente
binario. Para obtener el árbol, utilizamos el siguiente
procedimiento (visto en clases de teoría):
Procedimiento:
Procedimiento:
Realizamos primero una división vertical de la
Realizamos primero una división vertical de la
imagen. Si alguna de las partes no es totalmente
imagen. Si alguna de las partes no es totalmente
blanca ni negra realizamos a la misma una división
blanca ni negra realizamos a la misma una división
horizontal. Seguiríamos dividiendo así la imagen
horizontal. Seguiríamos dividiendo así la imagen
hasta encontrar bloques totalmente negros o blancos.
hasta encontrar bloques totalmente negros o blancos.
Estos bloques serán las hojas del árbol. A la hojas
Estos bloques serán las hojas del árbol. A la hojas
negras le calculamos un código binario en base al
negras le calculamos un código binario en base al
nivel de profundidad del árbol y su coordenada
nivel de profundidad del árbol y su coordenada
inferior izquierda.
Imagen
Imagen
Æ
Æ
Á
Á
rbol
rbol
Æ
Æ
hoja
hoja
Æ
Æ
encriptaci
encriptaci
ó
ó
n
n
Æ
Æ
c
c
ó
ó
digo
digo
Imagen
Imagen
Æ
Æ
Á
Á
rbol
rbol
Æ
Æ
hoja
hoja
Æ
Æ
encriptaci
encriptaci
ó
ó
n
n
Æ
Æ
c
c
ó
ó
digo
digo
Imagen
Imagen
Æ
Æ
Á
Á
rbol
rbol
Æ
Æ
hoja
hoja
Æ
Æ
encriptaci
encriptaci
ó
ó
n
n
Æ
Æ
c
c
ó
ó
digo
digo
Imagen
Imagen
Æ
Æ
Á
Á
rbol
rbol
Æ
Æ
hoja
hoja
Æ
Æ
encriptaci
encriptaci
ó
ó
n
n
Æ
Æ
c
c
ó
ó
digo
digo
Imagen
Árbol
Imagen
Imagen
Æ
Æ
Á
Á
rbol
rbol
Æ
Æ
hoja
hoja
Æ
Æ
encriptaci
encriptaci
ó
ó
n
n
Æ
Æ
c
c
ó
ó
digo
digo
Imagen
Árbol
Representación ¿Cómo construimos
Representación ¿Cómo construimos
el árbol?
el árbol?
Representación
Representación
Representación
Representación
Representación
Representación
left
up down
Representación
Representación
left up down l rRepresentación
Representación
left up down l r u dRepresentación
Representación
left up down l r u d l rRepresentación
Representación
left up down l r l r d u l rRepresentación
Representación
left up down l r l r d u d u r lRepresentación
Representación
left up down l r l r d u d u r r l lRepresentación
Representación
left up down l r l r d u d u r r l l l rRepresentación
Representación
left up down l r l r d u d u r r l l l r u dRepresentación
Representación
left up down l r l r d u d u r r l l l r u d right down up l l l l r r r r d d d d d d u u u u u uCódigo
Código
Ibb
Ibb
left up down l r l r d u d u r r l l l r u d right down up l l l l r r r r d d d d d d u u u u u u {32192} {51576} {24512}
Representación
Representación
La imagen queda codificada
mediante unos simples códigos
En particular esta imagen, queda
divida en 8 bloques básicos, que
dan lugar a los siguientes códigos:
{ 24512,32192,
32720,62800,
51576,63312,
¿Cómo se consiguen los códigos?
¿Cómo se consiguen los códigos?
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 u d l r l r d u d u r l 0 1 2 3 4 5
Pasamos i y j a binario:
Pasamos i y j a binario:
i =
i =
∑
∑
n
n
-
-
1
1
(
(
i
i
k
k
* 2
* 2
k
k
)
)
j =
j
=
∑
∑
n
n
-
-
1
1
(
(
j
j
k
k
* 2
* 2
k
k
)
)
Obtenemos S:
Obtenemos S:
S =
S =
2
2
2*n
2*n
–
–
2
2
(2*n
(2*n
–
–
l)
l)
Pasamos S a binario:
Pasamos S a binario:
S =
S =
∑
∑
2*n
2*n
-
-
1
1
(
(
s
s
k
k
* 2
* 2
k
k
)
)
Obtenemos el c
Obtenemos el c
ó
ó
digo en binario:
digo en binario:
3. IMPLEMENTACIÓN
3. IMPLEMENTACIÓN
-Partimos de una imagen binaria. Queremos:
Partimos de una imagen binaria. Queremos:
1.
1.
Analizar por cuantos bloques está formada
Analizar por cuantos bloques está formada
2.2.
Calcular el código de cada bloque
Calcular el código de cada bloque
Para ello hemos implementado 2 algoritmos:
Para ello hemos implementado 2 algoritmos:
1.
1.
Alg. Para detectar bloques en la imagen: es recursivo,
Alg. Para detectar bloques en la imagen: es recursivo,
mediante la técnica “divide y vencerás”
mediante la técnica “divide y vencerás”
2.
2.
Cálculo de bloque: en base a la coordenada inferior
Cálculo de bloque: en base a la coordenada inferior
izquierda y a su correspondiente nivel en el árbol
izquierda y a su correspondiente nivel en el árbol
4. OPERACIONES Y
4. OPERACIONES Y
EJEMPLOS
EJEMPLOS
Las distintas operaciones que realizamos son:
Las distintas operaciones que realizamos son:
Contar el número de píxeles negros.
Contar el número de píxeles negros.
Calcular el
Calcular el
centroide
centroide
.
.
Calcular código
Calcular código
ibb
ibb
de bloque o imagen
de bloque o imagen
Trasladar una imagen o bloque
Trasladar una imagen o bloque
5. CONCLUSIÓN
5. CONCLUSIÓN
Inconvenientes:
Inconvenientes:
La imagen ha de ser cuadrada y con lado potencia de
La imagen ha de ser cuadrada y con lado potencia de
dos (l = 2 ^ n)
dos (l = 2 ^ n)
Aplicable solo a imágenes en blanco y negro (imágenes
Aplicable solo a imágenes en blanco y negro (imágenes
binarias)
binarias)
Ventajas:
Ventajas:
Fácil representación
Fácil representación