SlideShare une entreprise Scribd logo
1  sur  19
Julen Segura
Instrumentación para visión
Práctica final (Android App)
Máster Oficial en Visión Artificial
Universidad Rey Juan Carlos
06 de mayo de 2014
Índice
2
Introducción ………………………………………... 3
La aplicación 3DStereoglyph …………………………………………………...…… 3
El 3D Esteoscópcio …………………………………………..………….……….......... 4
Los anaglifos ………………..………………………………….…………………..………. 5
Requisitos …….………..………………………..….. 9
Funcionamiento ……………………….……..…. 10
Inicio ………………………….……………….………..………………………………...… 10
Cámara ….…………………………….…………….….…………………….………....... 11
Procesado de imágenes ………….………………………..…………………….…. 12
Resultado ………………………………………………..………………………………... 15
Vídeo demostrativo ……………………………………..…….………………....…. 17
El futuro de 3DStereoglyph ……….…….…. 18
Posibles mejoras de la aplicación ……………………………………..…..…… 19
Continuidad de la aplicación ….…...…………………………………….......... 20
Introducción
La aplicación 3DStereoglyph
• ¿Qué hace?
– Proporciona ayuda para tomar un par estéreo de imágenes
con una única cámara.
– Convierte dicho par estéreo en una imagen 3D anaglífica
que puede ser visualizada con las gafas correspondientes
en una pantalla estándar 2D.
• ¿Por qué?
– Auge del mercado 3D.
– La práctica totalidad de los dispositivos móviles:
• sólo dispone de una cámara.
• tiene una pantalla 2D. 3
El 3D Estereoscópico
• Crea una sensación de profundidad a partir de un par
estéreo de imágenes (dos imágenes de la misma
escena, con disparidad en el eje horizontal), llevando
a cada ojo únicamente la imagen que le corresponde.
4
Los anaglifos
• Codificación por colores de un par estéreo.
• El resultado es una única imagen que combina la
información del ambas imágenes del par.
– Puede visualizarse en una
pantalla 2D corriente.
– Requiere unas gafas con
filtros de los colores
adecuados para su
visualización 3D.
5
• Existen diferentes combinaciones de colores.
– Verde/magenta, ámbar/azul,…
– La más común: rojo/cyan.
– Son colores complementarios
• Al pasar el color A a través de un filtro
de color B, se elimina la información
de color y queda una imagen de
intensidades en escala de grises.
• Al pasar el color A a través de un filtro
de color A, la imagen no cambia.
• La unión de ambos contiene los tres
canales RGB.
6
• Creación de anaglifos
–
7
– La imagen izquierda se codifica en
cyan.
• Para ello, en una imagen RGB se
eliminan la componente R.
• Se conservan G y B.
– La imagen derecha se codifica en
rojo.
• Para ello, en una imagen RGB se
eliminan las componentes G y B.
• Se conserva R.
– Al fusionar dichas imágenes (o crear una imagen a
partir de los canales GB+R extraídos), se obtiene un
anaglifo.
• Las zonas en que ambas imágenes coincidan tendrán los tres
canales RGB, y por tanto recuperan su color original.
8
Requisitos para implementar
3DStereoglyph
Build Target:
API level 11
Android 3.0 (HONEYCOMB)
que es el mínimo requerido para la
Librería:
OpenCV 2.4.8
Guía de instalación e inclusión en
un proyecto: [Tutorial on OpenCV]
9
Funcionamiento
Inicio Main.java (Activity)
layout_inicio.xml layout_instrucciones.xml
• Menú inicial y pantalla de instrucciones.
• Si no existen, se crean en la tarjeta SD los directorios necesarios.
10
Cámara
PhotoView.java (JavaCameraView)
Photo1.java (Activity) Photo 2.java (Activity)
layout_camaraview.xml
• SurfaceView
• ImageView
Imagen 1
Transparencia= 0.5
Imagen 2
Ayuda para alinear
11
Nota: las funciones para abrir la cámara de los activity Photo1 y Photo2, y la función para tomar una imagen
de JavaCameraView, se extrajeron de los tutoriales “Mixed Processing” y “Camera control” de OpenCV 2.4.8.
Procesado de imágenes
Process3D.java (Activity)
layout_procesar3d.xml
• Intercambiar imágenes.
• Convertir a 3D.
12
• Intercambiar imágenes:
13
public void onCreate(Bundle savedInstanceState) {
…
Options options = new Options();
options.inTempStorage = new byte[16*1024]; options.inSampleSize = 4;
myBitmap= BitmapFactory.decodeFile(imageFileName, options);
…
myImageView= (ImageView)findViewById(R.id.izquierda);
myImageView.setImageBitmap(myBitmap);
…}
public void onClick(View v) {
int id = v.getId();
if (id == R.id.boton1) {
cuenta_cambios=cuenta_cambios+1;
cambiar();
} else if (id == R.id.boton2) {
procesar(); }
}
private void cambiar() {
aux=myBitmap;
myBitmap=myBitmap2;
myBitmap2=aux;
myImageView= (ImageView)findViewById(R.id.izquierda);
myImageView.setImageBitmap(myBitmap);
…
}
Si se pulsa “Cambiar”:
-Se aumenta el contador.
-Se llama a la función cambiar.
Si se pulsa “Convertir a 3D”:
-Se llama a la función procesar.
Se asocian al ImageView en el
que se vayan a mostrar.
Se cargan las imágenes en
bitmaps con menor resolución
para utilizar menos memoria.
Se carga el layout y se ponen
los botones a la escucha.
Se intercambian los bitmaps
con ayuda de un auxiliar.
Se vuelven a asociar a los ImageView
donde se muestran.
Función
cambiar
• Convertir a 3D:
14
public void procesar() {
…
zda = Highgui.imread(imageFileName);
dcha = Highgui.imread(imageFileName2);
List<Mat> rgb_channel = new ArrayList<Mat>();
Core.split(izda, rgb_channel);
List<Mat> rgb_channel2 = new ArrayList<Mat>();
Core.split(dcha, rgb_channel2);
Size size = izda.size(); imagen3D = new Mat(size,CvType.CV_8U);
List<Mat> rgb_channel3 = new ArrayList<Mat>();
rgb_channel3.add(rgb_channel2.get(0));
rgb_channel3.add(rgb_channel2.get(1));
rgb_channel3.add(rgb_channel.get(2));
Core.merge(rgb_channel3, imagen3D);
SimpleDateFormat formatter = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss");
Date now = new Date();
String imageFileName3 = Environment.getExternalStorageDirectory().toString()+"/3DStereoglyph/3D_images/"+
formatter.format(now) + "_3D.jpg";
Highgui.imwrite(imageFileName3, imagen3D);
mostrar_resultado(imageFileName3);}
Se obtienen los canales
B y G de la imagen izda.
y el R de la imagen dcha.
Se unen en una matriz =
imagen anaglífica.
Se separan las imágenes
en sus canales (BGR).
Se preparan un array y una
matriz para los canales y la
matriz de la imagen final.
Se cargan las imágenes con OpenCV = matrices Mat.
Cuál es Izda o dcha depende de cuántas veces se han
intercambiado las imágenes tomadas (contador).
Se llama a la función que
muestra el resultado.
Se guarda la imagen en el directorio, con un nombre
único (fecha y hora) para evitar su sobreescritura.
Función
procesar
Resultado
• Se muestra el resultado en layout_resultado.xml.
• Se guarda en el directorio de la aplicación.
15
Otros resultados:
16
Vídeo demostrativo
https://www.youtube.com/watch?v=RDVqdDJc5DI
17
El futuro de 3DStereoglyph
Posibles mejoras de la aplicación
• En la captura de imágenes
– Estabilización de la señal de entrada.
• En la conversión a 3D
– Posibilidad de correcciones en la alineación de las
imágenes.
– Otras codificaciones:
• Otros colores de anaglifos.
• Codificaciones para pantallas estereoscópicas: side-by-side,
entrelazado, etc.
18
Continuidad de la aplicación
• Dispositivos con pantalla estereoscópica
Ayuda en la toma de pares estéreo alineados.
Conversión del par a 3D.
• Dispositivos con dos cámaras
 Ayuda en la toma de pares estéreo alineados.
Conversión del par a 3D.
• Dispositivos con dos cámaras y pantalla
estereoscópica
 Ayuda en la toma de pares estéreo alineados.
Conversión del par a 3D.
19

Contenu connexe

En vedette

Retención en la fuente
Retención en la fuenteRetención en la fuente
Retención en la fuenteYeseniaLopezS
 
مرگ.رنگ -سهراب.سپهری
مرگ.رنگ -سهراب.سپهریمرگ.رنگ -سهراب.سپهری
مرگ.رنگ -سهراب.سپهریFarid Kamali
 
Libro para el maestro
Libro para el maestroLibro para el maestro
Libro para el maestroJHENNYREYES
 
Neu in WordPress – Wo finde ich Hilfe und Informationen. BarCamp Braunschweig...
Neu in WordPress – Wo finde ich Hilfe und Informationen. BarCamp Braunschweig...Neu in WordPress – Wo finde ich Hilfe und Informationen. BarCamp Braunschweig...
Neu in WordPress – Wo finde ich Hilfe und Informationen. BarCamp Braunschweig...frankstaude
 
LAS TIC EN CLASE
LAS TIC EN CLASELAS TIC EN CLASE
LAS TIC EN CLASEKelly Ossa
 
Der Wind
Der WindDer Wind
Der WindAster46
 
guiapara elcurado del hormigon
guiapara elcurado del hormigonguiapara elcurado del hormigon
guiapara elcurado del hormigonOscar Tapia
 
Suchmaschinen Optimierung
Suchmaschinen OptimierungSuchmaschinen Optimierung
Suchmaschinen Optimierungch.ch
 
Mario Jose Camacaro Peraza
Mario Jose Camacaro PerazaMario Jose Camacaro Peraza
Mario Jose Camacaro Perazamariocp30
 
Wie erstelle ich einen Publikationszeitplan
Wie erstelle ich einen PublikationszeitplanWie erstelle ich einen Publikationszeitplan
Wie erstelle ich einen PublikationszeitplanEditage Germany
 
Insiderreport De
Insiderreport DeInsiderreport De
Insiderreport Deguestcce0ec
 
Einfluss von Social Media auf Recruiting & Employer Branding
Einfluss von Social Media auf Recruiting & Employer BrandingEinfluss von Social Media auf Recruiting & Employer Branding
Einfluss von Social Media auf Recruiting & Employer Brandingxeit AG
 
Tð Çhrï§
Tð Çhrï§Tð Çhrï§
Tð Çhrï§0oAnnAo0
 

En vedette (20)

Los skaters;)xd
Los skaters;)xdLos skaters;)xd
Los skaters;)xd
 
Retención en la fuente
Retención en la fuenteRetención en la fuente
Retención en la fuente
 
Slidashare
SlidashareSlidashare
Slidashare
 
مرگ.رنگ -سهراب.سپهری
مرگ.رنگ -سهراب.سپهریمرگ.رنگ -سهراب.سپهری
مرگ.رنگ -سهراب.سپهری
 
Unfaelle
UnfaelleUnfaelle
Unfaelle
 
Libro para el maestro
Libro para el maestroLibro para el maestro
Libro para el maestro
 
Neu in WordPress – Wo finde ich Hilfe und Informationen. BarCamp Braunschweig...
Neu in WordPress – Wo finde ich Hilfe und Informationen. BarCamp Braunschweig...Neu in WordPress – Wo finde ich Hilfe und Informationen. BarCamp Braunschweig...
Neu in WordPress – Wo finde ich Hilfe und Informationen. BarCamp Braunschweig...
 
Ada 4 bloque 2
Ada 4 bloque 2Ada 4 bloque 2
Ada 4 bloque 2
 
LAS TIC EN CLASE
LAS TIC EN CLASELAS TIC EN CLASE
LAS TIC EN CLASE
 
Marktinfo Schweden 2015
Marktinfo Schweden 2015Marktinfo Schweden 2015
Marktinfo Schweden 2015
 
copaso
copasocopaso
copaso
 
Der Wind
Der WindDer Wind
Der Wind
 
Dunkel
DunkelDunkel
Dunkel
 
guiapara elcurado del hormigon
guiapara elcurado del hormigonguiapara elcurado del hormigon
guiapara elcurado del hormigon
 
Suchmaschinen Optimierung
Suchmaschinen OptimierungSuchmaschinen Optimierung
Suchmaschinen Optimierung
 
Mario Jose Camacaro Peraza
Mario Jose Camacaro PerazaMario Jose Camacaro Peraza
Mario Jose Camacaro Peraza
 
Wie erstelle ich einen Publikationszeitplan
Wie erstelle ich einen PublikationszeitplanWie erstelle ich einen Publikationszeitplan
Wie erstelle ich einen Publikationszeitplan
 
Insiderreport De
Insiderreport DeInsiderreport De
Insiderreport De
 
Einfluss von Social Media auf Recruiting & Employer Branding
Einfluss von Social Media auf Recruiting & Employer BrandingEinfluss von Social Media auf Recruiting & Employer Branding
Einfluss von Social Media auf Recruiting & Employer Branding
 
Tð Çhrï§
Tð Çhrï§Tð Çhrï§
Tð Çhrï§
 

Similaire à Presentación 3DStereoglyph (Android App)

UtplMadrid_Tutorías_MATLAB_IMAGENES MATLAB
UtplMadrid_Tutorías_MATLAB_IMAGENES MATLABUtplMadrid_Tutorías_MATLAB_IMAGENES MATLAB
UtplMadrid_Tutorías_MATLAB_IMAGENES MATLABdpatriciocastillom
 
23371 procesamiento-de-imagenes-con-matlab
23371 procesamiento-de-imagenes-con-matlab23371 procesamiento-de-imagenes-con-matlab
23371 procesamiento-de-imagenes-con-matlabRicardo Villalobos Rojas
 
Sistema de visión artificial para el reconocimiento y
Sistema de visión artificial para el reconocimiento ySistema de visión artificial para el reconocimiento y
Sistema de visión artificial para el reconocimiento yviisonartificial2012
 
Manual de practicas segundo parcial
Manual de practicas segundo parcialManual de practicas segundo parcial
Manual de practicas segundo parcialGuillermo Mendoza
 
Manual gimp cap9
Manual gimp cap9Manual gimp cap9
Manual gimp cap9Gurrugno
 
Pasos para dibujar figura en 3 d
Pasos para dibujar figura en 3 dPasos para dibujar figura en 3 d
Pasos para dibujar figura en 3 dUNSCH
 
Glosario de términos de diseño 3d
Glosario de términos de diseño 3dGlosario de términos de diseño 3d
Glosario de términos de diseño 3dAfm Zabaleta
 
Utp 2015-2_pdi_lab2
 Utp 2015-2_pdi_lab2 Utp 2015-2_pdi_lab2
Utp 2015-2_pdi_lab2jcbp_peru
 
Utp pdi_2014-2 lab3 borrador
 Utp pdi_2014-2 lab3 borrador Utp pdi_2014-2 lab3 borrador
Utp pdi_2014-2 lab3 borradorjcbp_peru
 
Curso de fotografia ajustes fotograficos
Curso de fotografia   ajustes fotograficosCurso de fotografia   ajustes fotograficos
Curso de fotografia ajustes fotograficosxbox360colombia
 
Introducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLIntroducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLkdeespana
 
(2012) [ingeuan] deteccion vehicular
(2012) [ingeuan] deteccion vehicular(2012) [ingeuan] deteccion vehicular
(2012) [ingeuan] deteccion vehicularOscar Avilés
 
Colegio nacional nicolas esguerra
Colegio nacional nicolas esguerraColegio nacional nicolas esguerra
Colegio nacional nicolas esguerraGustavo Hinestroza
 
Pdiva 2012 2 balotario pc1
Pdiva 2012 2 balotario pc1Pdiva 2012 2 balotario pc1
Pdiva 2012 2 balotario pc1jcbenitezp
 

Similaire à Presentación 3DStereoglyph (Android App) (20)

UtplMadrid_Tutorías_MATLAB_IMAGENES MATLAB
UtplMadrid_Tutorías_MATLAB_IMAGENES MATLABUtplMadrid_Tutorías_MATLAB_IMAGENES MATLAB
UtplMadrid_Tutorías_MATLAB_IMAGENES MATLAB
 
140j9t1zwvw7elgr8qo1 090527055423-phpapp01
140j9t1zwvw7elgr8qo1 090527055423-phpapp01140j9t1zwvw7elgr8qo1 090527055423-phpapp01
140j9t1zwvw7elgr8qo1 090527055423-phpapp01
 
23371 procesamiento-de-imagenes-con-matlab
23371 procesamiento-de-imagenes-con-matlab23371 procesamiento-de-imagenes-con-matlab
23371 procesamiento-de-imagenes-con-matlab
 
Cursovision
CursovisionCursovision
Cursovision
 
Sistema de visión artificial para el reconocimiento y
Sistema de visión artificial para el reconocimiento ySistema de visión artificial para el reconocimiento y
Sistema de visión artificial para el reconocimiento y
 
Manual de practicas segundo parcial
Manual de practicas segundo parcialManual de practicas segundo parcial
Manual de practicas segundo parcial
 
Manual gimp cap9
Manual gimp cap9Manual gimp cap9
Manual gimp cap9
 
Estela y naye
Estela y nayeEstela y naye
Estela y naye
 
Pasos para dibujar figura en 3 d
Pasos para dibujar figura en 3 dPasos para dibujar figura en 3 d
Pasos para dibujar figura en 3 d
 
main
mainmain
main
 
Glosario de términos de diseño 3d
Glosario de términos de diseño 3dGlosario de términos de diseño 3d
Glosario de términos de diseño 3d
 
Utp 2015-2_pdi_lab2
 Utp 2015-2_pdi_lab2 Utp 2015-2_pdi_lab2
Utp 2015-2_pdi_lab2
 
Utp pdi_2014-2 lab3 borrador
 Utp pdi_2014-2 lab3 borrador Utp pdi_2014-2 lab3 borrador
Utp pdi_2014-2 lab3 borrador
 
Entregable3
Entregable3Entregable3
Entregable3
 
Curso de fotografia ajustes fotograficos
Curso de fotografia   ajustes fotograficosCurso de fotografia   ajustes fotograficos
Curso de fotografia ajustes fotograficos
 
Introducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLIntroducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGL
 
(2012) [ingeuan] deteccion vehicular
(2012) [ingeuan] deteccion vehicular(2012) [ingeuan] deteccion vehicular
(2012) [ingeuan] deteccion vehicular
 
Colegio nacional nicolas esguerra
Colegio nacional nicolas esguerraColegio nacional nicolas esguerra
Colegio nacional nicolas esguerra
 
Guion
GuionGuion
Guion
 
Pdiva 2012 2 balotario pc1
Pdiva 2012 2 balotario pc1Pdiva 2012 2 balotario pc1
Pdiva 2012 2 balotario pc1
 

Dernier

Minería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptosMinería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptosisauVillalva
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheElisaLen4
 
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfTIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfssuser202b79
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacionesRamon Bartolozzi
 
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfAnálisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfGabrielCayampiGutier
 
Desigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdfDesigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdfRonaldLozano11
 
tesis maíz univesidad catolica santa maria
tesis maíz univesidad catolica santa mariatesis maíz univesidad catolica santa maria
tesis maíz univesidad catolica santa mariasusafy7
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesCarlosMeraz16
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTElisaLen4
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEduardoBriones22
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfs7yl3dr4g0n01
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajasjuanprv
 
Control estadistico de procesos Primera parte.pdf
Control estadistico de procesos Primera parte.pdfControl estadistico de procesos Primera parte.pdf
Control estadistico de procesos Primera parte.pdfLucianaGomez67
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)Ricardo705519
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATevercoyla
 
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUQUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUManuelSosa83
 
Sesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptxSesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptxMarcosAlvarezSalinas
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processbarom
 
CONEXIONES SERIE, PERALELO EN MÓDULOS FOTOVOLTAICOS.pdf
CONEXIONES SERIE, PERALELO EN MÓDULOS FOTOVOLTAICOS.pdfCONEXIONES SERIE, PERALELO EN MÓDULOS FOTOVOLTAICOS.pdf
CONEXIONES SERIE, PERALELO EN MÓDULOS FOTOVOLTAICOS.pdfwduranteg
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGUROalejandrocrisostomo2
 

Dernier (20)

Minería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptosMinería convencional: datos importantes y conceptos
Minería convencional: datos importantes y conceptos
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfTIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operaciones
 
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfAnálisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
 
Desigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdfDesigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdf
 
tesis maíz univesidad catolica santa maria
tesis maíz univesidad catolica santa mariatesis maíz univesidad catolica santa maria
tesis maíz univesidad catolica santa maria
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestaciones
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdf
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajas
 
Control estadistico de procesos Primera parte.pdf
Control estadistico de procesos Primera parte.pdfControl estadistico de procesos Primera parte.pdf
Control estadistico de procesos Primera parte.pdf
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
 
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUQUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
 
Sesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptxSesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptx
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo process
 
CONEXIONES SERIE, PERALELO EN MÓDULOS FOTOVOLTAICOS.pdf
CONEXIONES SERIE, PERALELO EN MÓDULOS FOTOVOLTAICOS.pdfCONEXIONES SERIE, PERALELO EN MÓDULOS FOTOVOLTAICOS.pdf
CONEXIONES SERIE, PERALELO EN MÓDULOS FOTOVOLTAICOS.pdf
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
 

Presentación 3DStereoglyph (Android App)

  • 1. Julen Segura Instrumentación para visión Práctica final (Android App) Máster Oficial en Visión Artificial Universidad Rey Juan Carlos 06 de mayo de 2014
  • 2. Índice 2 Introducción ………………………………………... 3 La aplicación 3DStereoglyph …………………………………………………...…… 3 El 3D Esteoscópcio …………………………………………..………….……….......... 4 Los anaglifos ………………..………………………………….…………………..………. 5 Requisitos …….………..………………………..….. 9 Funcionamiento ……………………….……..…. 10 Inicio ………………………….……………….………..………………………………...… 10 Cámara ….…………………………….…………….….…………………….………....... 11 Procesado de imágenes ………….………………………..…………………….…. 12 Resultado ………………………………………………..………………………………... 15 Vídeo demostrativo ……………………………………..…….………………....…. 17 El futuro de 3DStereoglyph ……….…….…. 18 Posibles mejoras de la aplicación ……………………………………..…..…… 19 Continuidad de la aplicación ….…...…………………………………….......... 20
  • 3. Introducción La aplicación 3DStereoglyph • ¿Qué hace? – Proporciona ayuda para tomar un par estéreo de imágenes con una única cámara. – Convierte dicho par estéreo en una imagen 3D anaglífica que puede ser visualizada con las gafas correspondientes en una pantalla estándar 2D. • ¿Por qué? – Auge del mercado 3D. – La práctica totalidad de los dispositivos móviles: • sólo dispone de una cámara. • tiene una pantalla 2D. 3
  • 4. El 3D Estereoscópico • Crea una sensación de profundidad a partir de un par estéreo de imágenes (dos imágenes de la misma escena, con disparidad en el eje horizontal), llevando a cada ojo únicamente la imagen que le corresponde. 4
  • 5. Los anaglifos • Codificación por colores de un par estéreo. • El resultado es una única imagen que combina la información del ambas imágenes del par. – Puede visualizarse en una pantalla 2D corriente. – Requiere unas gafas con filtros de los colores adecuados para su visualización 3D. 5
  • 6. • Existen diferentes combinaciones de colores. – Verde/magenta, ámbar/azul,… – La más común: rojo/cyan. – Son colores complementarios • Al pasar el color A a través de un filtro de color B, se elimina la información de color y queda una imagen de intensidades en escala de grises. • Al pasar el color A a través de un filtro de color A, la imagen no cambia. • La unión de ambos contiene los tres canales RGB. 6
  • 7. • Creación de anaglifos – 7 – La imagen izquierda se codifica en cyan. • Para ello, en una imagen RGB se eliminan la componente R. • Se conservan G y B. – La imagen derecha se codifica en rojo. • Para ello, en una imagen RGB se eliminan las componentes G y B. • Se conserva R.
  • 8. – Al fusionar dichas imágenes (o crear una imagen a partir de los canales GB+R extraídos), se obtiene un anaglifo. • Las zonas en que ambas imágenes coincidan tendrán los tres canales RGB, y por tanto recuperan su color original. 8
  • 9. Requisitos para implementar 3DStereoglyph Build Target: API level 11 Android 3.0 (HONEYCOMB) que es el mínimo requerido para la Librería: OpenCV 2.4.8 Guía de instalación e inclusión en un proyecto: [Tutorial on OpenCV] 9
  • 10. Funcionamiento Inicio Main.java (Activity) layout_inicio.xml layout_instrucciones.xml • Menú inicial y pantalla de instrucciones. • Si no existen, se crean en la tarjeta SD los directorios necesarios. 10
  • 11. Cámara PhotoView.java (JavaCameraView) Photo1.java (Activity) Photo 2.java (Activity) layout_camaraview.xml • SurfaceView • ImageView Imagen 1 Transparencia= 0.5 Imagen 2 Ayuda para alinear 11 Nota: las funciones para abrir la cámara de los activity Photo1 y Photo2, y la función para tomar una imagen de JavaCameraView, se extrajeron de los tutoriales “Mixed Processing” y “Camera control” de OpenCV 2.4.8.
  • 12. Procesado de imágenes Process3D.java (Activity) layout_procesar3d.xml • Intercambiar imágenes. • Convertir a 3D. 12
  • 13. • Intercambiar imágenes: 13 public void onCreate(Bundle savedInstanceState) { … Options options = new Options(); options.inTempStorage = new byte[16*1024]; options.inSampleSize = 4; myBitmap= BitmapFactory.decodeFile(imageFileName, options); … myImageView= (ImageView)findViewById(R.id.izquierda); myImageView.setImageBitmap(myBitmap); …} public void onClick(View v) { int id = v.getId(); if (id == R.id.boton1) { cuenta_cambios=cuenta_cambios+1; cambiar(); } else if (id == R.id.boton2) { procesar(); } } private void cambiar() { aux=myBitmap; myBitmap=myBitmap2; myBitmap2=aux; myImageView= (ImageView)findViewById(R.id.izquierda); myImageView.setImageBitmap(myBitmap); … } Si se pulsa “Cambiar”: -Se aumenta el contador. -Se llama a la función cambiar. Si se pulsa “Convertir a 3D”: -Se llama a la función procesar. Se asocian al ImageView en el que se vayan a mostrar. Se cargan las imágenes en bitmaps con menor resolución para utilizar menos memoria. Se carga el layout y se ponen los botones a la escucha. Se intercambian los bitmaps con ayuda de un auxiliar. Se vuelven a asociar a los ImageView donde se muestran. Función cambiar
  • 14. • Convertir a 3D: 14 public void procesar() { … zda = Highgui.imread(imageFileName); dcha = Highgui.imread(imageFileName2); List<Mat> rgb_channel = new ArrayList<Mat>(); Core.split(izda, rgb_channel); List<Mat> rgb_channel2 = new ArrayList<Mat>(); Core.split(dcha, rgb_channel2); Size size = izda.size(); imagen3D = new Mat(size,CvType.CV_8U); List<Mat> rgb_channel3 = new ArrayList<Mat>(); rgb_channel3.add(rgb_channel2.get(0)); rgb_channel3.add(rgb_channel2.get(1)); rgb_channel3.add(rgb_channel.get(2)); Core.merge(rgb_channel3, imagen3D); SimpleDateFormat formatter = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss"); Date now = new Date(); String imageFileName3 = Environment.getExternalStorageDirectory().toString()+"/3DStereoglyph/3D_images/"+ formatter.format(now) + "_3D.jpg"; Highgui.imwrite(imageFileName3, imagen3D); mostrar_resultado(imageFileName3);} Se obtienen los canales B y G de la imagen izda. y el R de la imagen dcha. Se unen en una matriz = imagen anaglífica. Se separan las imágenes en sus canales (BGR). Se preparan un array y una matriz para los canales y la matriz de la imagen final. Se cargan las imágenes con OpenCV = matrices Mat. Cuál es Izda o dcha depende de cuántas veces se han intercambiado las imágenes tomadas (contador). Se llama a la función que muestra el resultado. Se guarda la imagen en el directorio, con un nombre único (fecha y hora) para evitar su sobreescritura. Función procesar
  • 15. Resultado • Se muestra el resultado en layout_resultado.xml. • Se guarda en el directorio de la aplicación. 15
  • 18. El futuro de 3DStereoglyph Posibles mejoras de la aplicación • En la captura de imágenes – Estabilización de la señal de entrada. • En la conversión a 3D – Posibilidad de correcciones en la alineación de las imágenes. – Otras codificaciones: • Otros colores de anaglifos. • Codificaciones para pantallas estereoscópicas: side-by-side, entrelazado, etc. 18
  • 19. Continuidad de la aplicación • Dispositivos con pantalla estereoscópica Ayuda en la toma de pares estéreo alineados. Conversión del par a 3D. • Dispositivos con dos cámaras  Ayuda en la toma de pares estéreo alineados. Conversión del par a 3D. • Dispositivos con dos cámaras y pantalla estereoscópica  Ayuda en la toma de pares estéreo alineados. Conversión del par a 3D. 19