1. HIPI: Hadoop Interfaz para procesamiento de
imágenes Image-based MapReduce tareas
Chris Sweeney Liu Liu Seán Arietta Jason Lawrence
Universidad de Virginia
Figura 1:Un típicoHadoop MapReduce canalizaciónmediante nuestra interfaz de procesamientode imagencon n imágenes, puedo
asignar nodos ynodos j reducir
Resumen
La cantidadde imágenesque se suben a Internet está aumentando
rápidamente, con usuarios de Facebook cargar más de 2,5 mil
millones de fotos nuevascada mes Facebook [2010], sinembargo,
las aplicaciones que hacen uso de estos datos carecen
gravemente. Aplicaciones de la visión por computador actual
utilizar un pequeño número de imágenes de entrada debido a la
dificultad radica en la adquisición de los recursos informáticos y
las opciones de almacenamiento para grandes cantidades de
datos [Guo... 2005;Blancoet al. 2010]. Como tal, el desarrollode
aplicaciones de visión que utilizan un conjunto grande de
imágenes ha sido limitado [Ghemawat y Gobioff... 2003]. El
Hadoop Mapreduce plataforma proporciona un sistema para
grandes y computacionalmente intensiva del procesamiento
distribuido (Dean, 2004), aunque el uso de sistema Hadoops está
severamente limitada por las complejidades técnicas de desarrollo
de aplicaciones útiles [Ghemawat y Gobioff... 2003; Blanco et al.
2010]. A abordar de inmediato este, proponemos una fuente
abierta de Hadoop Interfaz de procesamiento de imágenes (HIPI)
que pretende crear una interfaz para visión por computador con
tecnología MapReduce. HIPI abstrae los detalles altamente
técnicos de Hadoop y del sistema es lo suficientemente flexible
como para aplicar muchas de las técnicas de visión por
computador en la actual literatura. Este documento describe el
marco HIPI, ydescribe dos ejemplos de aplicaciones que han sido
implementadas con HIPI. El objetivo de HIPI es crear una
herramienta que hará eldesarrollo de procesamientode imágenes
a gran escala yproyectos de visión extremadamente accesible con
la esperanza de que esto facultará a investigadores yestudiantes
para crear aplicaciones con facilidad. Keywords:mapreduce, visión
por computador, procesamiento de imágenes
1 Introducción
Muchos de procesamiento de imagen y visión por computador
algoritmos son aplicables a tareas de datos a gran escala. A
menudo es conveniente ejecutar estos algoritmos en grandes
conjuntos de datos (p.ej. Mayores de 1 TB) que actualmente están
limitadaspor la potencia de cálculode unordenador [Guo... 2005].
Estas tareas se realizan normalmente en un sistema distribuido,
dividiendola tarea en uno o más de lassiguientes características:
parámetros delalgoritmo, imágeneso píxeles[Blancoet al. 2010].
Realización de tareas a través de un parámetro concreto es
increíblemente paralelo y a menudo puede ser perfectamente
paralelos. Detección facial yclasificaciónhistórica sonejemplos de
este tipo de algoritmos [Li y Crandall... 2009; Liu et al. 2009]. La
capacidad de establecer paralelismos entre tales tareas permite
escalable, eficiente ejecuciónde aplicaciones intensivas en uso de
recursos. El MapReduce Framework proporciona una plataforma
para tales aplicaciones.
Visión básica de las aplicaciones que utilizanMapReduce Hadoops
framework requieren una curva de aprendizaje asombrosa y
abrumadora complejidad [Blanco et al. 2010]. La sobrecarga
necesaria para implementar estas aplicaciones lesiona
gravemente el progresode los investigadores [Blanco et al. 2010;
Li y Crandall... 2009]. HIPI elimina los detalles altamente técnicos
de sistema Hadoops y proporciona a los usuarios familiarizados
con la sensaciónde una biblioteca de imágenesconel accesoa los
recursos avanzados de un sistema distribuido[DeanyGhemawat
2008; Apache 2010]. Nuestra plataforma se centra en dar a los
usuarios unaccesosinprecedentes a estructurasde datos basadas
en imágenesconunoleoducto que es intuitivo para el MapReduce
system, que permite el uso fácil y flexible para aplicaciones de
visión. Debido a la similitud de objetivos en nuestros marcos,
tomamos particular inspiración del proyecto Frankencamera
como un modelo para el diseño de una API abierta para
proporcionar acceso a recursos informáticos.
Hemos diseñadoHIPI conlos objetivos de facilitar una plataforma
suficientemente específicas para contener un marco pertinente
aplicable para todo el procesamiento de imágenes y aplicaciones
de la visión por computador, pero lo suficientemente flexible
como para soportar los cambios continuos y mejoras dentro de
Hadoops Mapreduce sistema. Esperamos promover HIPI vision
research por estas razones. HIPI es en gran parte un proyecto de
diseño de software, impulsada por los objetivos primordiales de
Imagen Hipi
unir
imágenes
1...k
...
imágenes
n-k....n
Cull
Mapa 1
...
Mapa i
Shuffle
reducen 1
...
Reducir j
resultad
o
2. abstraer la funcionalidad de Hadoop en una imagen centrada en
el sistema yproporcionar unsistema extensible que proporcionará
a los investigadores una herramienta para utilizar eficazmente
Hadoops Mapreduce sistema para el procesamiento de imágenes
y visión por computador. Creemos que esta facilidad de uso y
control de usuario hará que el proceso para la creación de
experimentos de visión a gran escala y aplicaciones. Como
resultado, el HIPI sirve como una excelente herramienta para
investigadores en visión por computador, porque permite el
desarrollo en gran escala de las aplicaciones de la visión por
computador para ser más accesible que nunca. A nuestro saber,
somos el primer grupo para proporcionar una interfazabiertapara
el procesamiento de imágenes y visión por computador para
aplicaciones Mapreduce Hadoops plataforma [White et al. 2010].
En la siguiente sección se describirá la labor anterior enesta área.
En particular, comentamos la motivación para crear unmarcoque
permita imagebased a gran escala de aplicaciones de visión. A
continuación, describimos la descripción de la biblioteca HIPI
incluyendo el sacrificio, el mapa, y reducir las etapas. Además,
describir nuestro enfoque para la distribución de tareas para el
MapReduce canalización. Por último, nos muestran las
capacidades de HIPI con dos ejemplos de aplicaciones de visión
utilizandoHIPI.
2 Trabajo previo
Con la proliferación de almacenamiento de fotos en línea y sitios
web de medios socialescomo Facebook, Flickr yPicasa, la cantidad
de datos de imagen disponible es mayor que nunca y creciendo
más rápidamente cada día Facebook[2010]. Estosoloproporciona
una increíble base de datos de imágenes que se puede ampliar
hasta más de 880 millones de imágenes. Increíble y los modelos
probabilísticos estadística puede ser construida a partir de una
muestra tangrande comofuente. Por ejemplo, una base de datos
de todas las texturas encontradas en una gran colección de
imágenes pueden ser construidas y utilizadas por los
investigadores oartistas. La informaciónpuede ser increíblemente
útil para entender las relaciones enel mundo. Si una imagen vale
más que mil palabras, podríamos escribir una enciclopedia conlos
miles de millones de imágenes disponibles para nosotros
en1 internet.
Estas imágenes están mejoradas, sinembargo, por el hechode que
los usuarios estén suministrando etiquetas (de objetos, caras,
etc.), comentarios, títulos y descripciones de estos datos para
nosotros. Esta información nos suministra una cantidad increíble
de contexto sin precedentes para las imágenes. Problemas tales
como OCR que siguenengranmedida sinresolverse puede hacer
pasos agigantados coneste contextodisponible les guían. Stone et
al. describen en detalle cómo los sitios de redes sociales pueden
aprovechar las funciones de etiquetado facial para mejorar
significativamente el reconocimiento facial. Esta idea puede
aplicarse a una amplia gama de funciones de imagen que nos
permiten examinar y analizar las imágenes en una forma
revolucionaria.
1 Uno puede imaginar que aplicaciones como objeto la detección
podría proporcionar información que permitirá a los investigadores
Son estas las razones que motivan la necesidad de investigación
con aplicaciones que aprovechan la visión de grandes conjuntos
de imágenes. MapReduce proporciona un marco
extremadamente potente que funciona bien en aplicaciones de
uso intensivo de datos, donde el modelo de procesamiento de
datos es similar o de la misma. A menudo es el caso con las
operaciones basadas en imágenes que nos lleve a cabo
operaciones similares en todo un conjunto de entrada, haciendo
MapReduce ideal para aplicaciones basadas en i mágenes. Sin
embargo, muchos investigadores encuentran poco práctico para
poder reunir un conjunto significativo de imágenes relevantes
para sus estudios [Guo... 2005]. Además, muchos investigadores
no tienen maneras eficientes para almacenar y acceder a ese
conjunto de imágenes. Como resultado, poca investigación se ha
realizado en conjuntos de imágenes extremadamente grandes.
3 El marco HIPI
HIPI fue creada para brindar a los investigadoresyles presente un
Capaz herramienta que permitiría la investigación que involucra el
procesamientode imágenesyla visión se realiza muyfácilmente.
Con el conocimientoque HIPI sería utilizada para investigadoresy
como una herramienta educativa, hemos diseñado HIPI con los
siguientes objetivos en mente.
1. Proporcionar una biblioteca abierta, extensible para el
procesamiento de imágenes y aplicaciones de la visión por
computador enun marcoMapReduce
2. Almacenar imágenes de forma eficiente para su uso en
aplicaciones MapReduce
3. Para permitir el filtradode un simple conjunto de imágenes
4. Presentar a los usuarios una interfaz intuitiva para
operaciones basadas en imágenes y ocultar los detalles del
marco MapReduce
5. HIPI crearán aplicaciones, de manera que son altamente
paralelizado y equilibrados, de modo que los usuarios no
tienenque preocuparse por esos detalles
3.1 Almacenamiento de datos
Hadoop utiliza unsistema de archivos distribuido para almacenar
archivos envarias máquinas a lo largo del cluster. Hadooppermite
que los archivos se accede, sin embargo, sin un conocimiento de
donde está almacenado en el clúster, de forma que los usuarios
puedenhacer referenciaa archivos de la misma forma que en una
máquina local yHadoop presentará el archivocorrespondiente.
Al realizar trabajos de Hadoop MapReduce, intenta ejecutar el
mapa yreducir tareas a las máquinas fueron los datos que se están
procesandoestá situadode modoque los datos notienenque ser
copiados entre máquinas Apache [2010]. Como tal, MapReduce
tareas se ejecutan de manera más eficiente cuando la entrada es
un archivo grande en contraposicióna muchos archivos pequeños.
Los archivos grandes son significativamente más probabilidades
de ser almacenados en una máquina, mientras que muchos
archivos pequeños probablemente serán repartidos entre
reconocen las relaciones entreciertos objetos (por ejemplo los abejorros
son a menudo en fotografías de flores).
Hay muchos ejemplos deaplicaciones útiles,como estos.
3. diferentes máquinas, lo cual requiere una sobrecarga considerable
para copiar2 todos los datos a la máquina donde el mapa es tarea
[Ghemawat yGobioff... 2003]. Esta sobrecarga puede ralentizar el
tiempo de ejecución de diez a cien veces blanco [2010].
Sencillamente, el MapReduce marco funciona más eficientemente
cuandolos datos que se están procesando a los equipos localesse
lleva a caboel procesamiento.
Figura 2: Representación de la relación entre el índice y los
archivos de datos enun paquete de imagen HIPI
Con esto en mente, hemos creado un paquete de imagen HIPI el
tipo de datos que almacena muchas imágenesen un solo archivo
grande de modo que MapReduce trabajos se pueden realizar de
forma más eficiente. Una imagen HIPI Bundle consta de dos
archivos: un archivo de datos que contenga imágenes
concatenadas y un archivo de índice que contiene información
sobre los desplazamientos de las imágenesenel archivo de datos,
como se muestra en la figura 2. Esta configuración nos permite
acceder fácilmente a las imágenes de todo el paquete completo
sin tener que leer encada imagen.
Observamos varios beneficios del paquete en las pruebas de
imagenHIPI contra Hadoop Hadoopyarchivode secuencia(HAR)
formatos de archivo. Como Blanco et. al. nota, HARs sólosonútiles
para archivar archivos (como copias de seguridad), y de hecho
puede realizar más lentoque la lectura enlos archivos de la forma
estándar. Los archivos de secuencia funcionan mejor que las
aplicaciones estándar para archivos pequeños, pero se debe leer
en serie ytomar muchotiempopara generar el paquete deimagen
HIPI. tienen velocidades similares a los archivos de secuencia, no
tiene que ser leído en serie, y pueden ser generados con un
programa MapReduce [Blanco 2010; Conner 2009]. Además,
Imagen HIPI Bundles son más personalizable y son mudables, a
diferencia de la secuencia y HAR archivos. Por ejemplo, hemos
implementado la posibilidad de sólo leer el encabezado de un
archivo de imagen usando HIPI Paquetes de imagen, lo que sería
mucho más difícilcon otros tipos de archivo. Otras características
de la imagenHIPI Bundles estánresaltados enla secciónsiguiente
2 Son archivos pequeños que son considerablemente más pequeños
que el tamaño delbloque de archivos de la máquina en la que resideel
archivo
3.2 MapReduce basadas en imágenes
Estándar de HadoopMapReduce programas controlan la entrada
y salida de datos muyeficaz, perola lucha enla representación de
imágenes en un formato que sea útil para los investigadores. Los
métodos actuales implican una sobrecarga considerable para
obtener imagen de flotación estándar de representación. Por
ejemplo, para distribuir unconjuntode imágenesa unconjuntode
nodos del mapa requeriría un usuario para pasar las imágenes
como una cadena, entonces decodificar cada imagen en cada
mapa tarea antes de poder hacer el acceso de información de
píxeles. Esto no sólo es ineficiente, sino un inconveniente. Estas
tareas pueden crear dolores de cabeza a los usuarios y hacer el
códigounaspecto desordenado ydifícil de interpretar la intención
del código. Como tal, compartir el código es menos eficiente
porque el código es más difícil de leer y más difícil de depurar.
Nuestra biblioteca se centra en lo que conoce los tipos de datos
basada en imágenes directamente al usuario para facilitar su uso
en aplicaciones MapReduce.
Figura 3: El usuario sólo necesita especificar una imagen HIPI
paquete comouna entrada, yHIPI cuidará de paralelizaciónde la
tarea yel envío de imágenes de flotación para los mappers
Usando el tipo de datos del paquete de imagen HIPI como
entradas, hemos creado una especificación de entrada que va a
distribuir imágenes en la imagen HIPI Bundle en todos los nodos
del mapa. Distribuimos imágenes tales que intentamos maximizar
la localidadentre el mapa ymáquinas de la máquina donde reside
la imagen. Normalmente, un usuario tendría que crear
RecordReader InputFormat y clases que especifique cómo el
trabajo MapReduce distribuirá la entrada, y qué información se
envía a cada máquina. Esta es la tarea es importante ya menudo
se convierte en un gran punto de dolores de cabeza para los
usuarios. Hemos incluidoInputFormat yRecordReaders que cuide
de estopara el usuario. Nuestra especificación trabaja en imagen
HIPI paquetes para diferentes tipos de imágenes, tamaños y
cantidades variables de encabezado y la información Exif.
Manejamos todas estas diferentes permutaciones de imágenes
detrás de lasescenas para traer imágenesdirectamente al usuario
Entrada:
paquete
de
tarea Mapa
imágenes
codificada(jpeg,
png, etc.)
imágenes
codificada(jpeg,
png, etc.)
codificada
imágenes
jpeg,
png, etc.) (
fl
fl
i
Ave
na
Ave
na flimágene
s
Mapa
Mapa de
tareas tarea
realizada por HIPI
detrás de las escenas
4. como imágenes de flotación. No es necesario trabajar para ser
realizado por el usuario, e imágenes de flotación son llevados
directamente al mapa las tareas en una forma altamente
paralelizado.
Durante la distribuciónde los insumos, peroantes de que el mapa
las tareas comienzan introducimos una fase de descarte al
MapReduce canalización. La fase de descarte permite imágenes
que se filtran en función de las propiedades de una imagen. El
usuario especifica una clase de sacrificio que describe cómo las
imágenes serán filtrados (por ejemplo, imágenes de menos de 10
megapíxeles, imágenescon datos de encabezado de ubicaciónde
SIG). Sólo las imágenes que pasan a la fase de descarte se
distribuirán a las tareas del mapa, evitando la copia de datos
innecesarios. Este proceso es a menudo muy eficaz porque el
sacrificio ocurre a menudo basados en la información del
encabezado de la imagen, por lo que no es necesarioleer toda la
imagen.
Además, lasimágenes se distribuyen comoimágenes de flotación
de forma que los usuarios pueden tener acceso inmediato a los
valores de los píxeles para el procesamiento de imágenes y la
visión de las operaciones. Las imágenes se almacenan siempre
como tipos de imagen estándar (p. ej. JPEG, PNG, etc.) para un
almacenamiento eficiente, pero HIPI cuida de la codificación y
descodificación de imágenes para presentar al usuario con
flotaciónMapReduce imágenes dentro del ducto. Comoresultado,
los programas tales como calcular el valor medio de todos los
píxeles de un conjunto de imágenes puede ser escrita enel mero
hecho de líneas. Nos proporcionan operaciones tales como el
recorte de imagen de extracción de parches. A menudo es
conveniente para acceder a la cabecera de la imagen y la
informaciónexif sinnecesidadde informaciónde píxeles, de modo
que hemos abstraenesta informaciónde los datos de píxeles. Esto
es particularmente útil para la fase de descarte, y para
aplicaciones como im2Sig que necesitan tener acceso a los
metadatos. Presentar a los usuarios coninterfaces intuitivas para
tener acceso a los datos relevantes para el procesamiento de
imágenes y aplicaciones de visión permitirá para hacer más
eficiente la creaciónde aplicaciones MapReduce.3
4 Ejemplos
Describimos dos aplicaciones no triviales realizadas utilizando el
marco HIPI MapReduce para crear puestos de trabajo. Estas
aplicaciones son indicativos de los tipos de aplicaciones que
permite a los usuarios interesados HIPI con grandes operaciones
de imagen para hacer fácilmente. Estos ejemplos son difíciles e
ineficaz en las plataformas existentes, pero sencillo de
implementar con la API HIPI.
4.1 Principales componentes de imágenes naturales
Como un homenaje al Hancocket. al, calculamos los 15 primeros
componentes principales de imágenes naturales. Sin embargo,
decidimos enlugar de muestreoal azar un parche de 15 imágenes,
tomamos muestras de más de 1000 imágenes y 100 parches en
cada uno. El tamaño de nuestro conjunto de entrada era 10.000
veces más grande que el experimento original. Además, no nos
limitamos nuestras imágenes para imágenes naturales como el
experimento original (aunque podríamos hacerlo en la fase de
3 Http://graphics.cs.cmu.edu/projects/im2gps/
sacrificio). Como tal, los resultados difieren pero disponen de
características similares.
Podemos establecer paralelismos en el proceso de calcular la
matriz de covarianza paralas imágenesde acuerdo conla siguiente
fórmula, donde xies una muestra
Figura 4: Los 15 primeros componentes principales de una
muestra aleatoria de 15 imágenes naturales, observados por
Hancocket al. de izquierda a derecha, de arriba a abajo
Figura 5: Los 15 primeros componentes principales de 100.000
imágenes muestreadas aleatoriamente los parches, como
calculadocon HIPI de izquierda a derecha, de arriba a abajo
Parche yx¯ es el parche muestra significa
(1)
Ecuación-1 HIPI trajes perfectamente porque la suma es
groseramente paralelo. En otras palabras, podemos calcular
fácilmente cada término de la sumatoria de forma independiente
(suponiendo que ya tenemos la media), por lo tanto, podemos
calcular cada término en paralelo. Debemos primero ejecutar un
trabajo MapReduce para calcular la media de la muestra y, a
continuación, utilizarlo como x¯cálculo de covarianza para el
futuro. A continuación, ejecutamos un MapReduce trabajo que
calcula(xi-x¯)(xi-x¯)T para todos 100 parches de cada imagen.
Porque HIPI asigna una imagen por cada mapa, es tarea sencilla
muestra al azar una imagende 100 parches yrealizar este cálculo.
Cada mapa tarea será entonces emiten la suma de su parcial
covarianzas muestreados enla imagena la reductora, donde todas
5. las covarianzas parcial se sumarán a calcular la covarianza para
todo el conjunto de muestra.4
Después de determinar la covarianza para 100.000 tomaron
muestras al azar de parches, hemos utilizado el Matlab para
encontrar los 15 primeros componentes principales. Como se
esperaba, las imágenes no se correlacionan perfectamente
porque estamos usando muchodiferentes insumos para nuestros
experimentos, ynuestra pantalla de valores positivos ynegativos
también puedendiferir ligeramente. Sinembargo, algunos de los
principales componentes son los mismos (1, 7, 12), son
meramente conmutado (2 y3, 4 y 5), o mostrar cierta semejanza
con el experimento original (15). Realizar un análisis de
componentes principales sobre un enorme conjunto de datos
ilimitado, nos da unos conocimientos sin parangón sobre las
imágenes. Para tareascomoestas, HIPI sobresale.
4.2 La descarga de millones de imágenes
Paso 1: Especificar una lista de imágenes para
coleccionar. Suponemos que existe una lista bien formado que
contiene las URL de las imágenes para descargar. Esta lista debe
ser almacenada en un archivo de texto con exactamente una
imagen URL por línea. Esta lista puede ser generada por un lado,
de MySQL, o a partir de una consulta de búsqueda (por ejemplo
Google images, Flickr, etc.). Además de la lista de imágenes, el
usuariointroducirá el númerode nodos que se ejecute la tarea. De
acuerdo con esta entrada, se divide la imagen en el número
especificado de nodos para la máxima eficiencia y el paralelismo
al descargar las imágenes. Cada nodo en la tarea Mapa generará
una imagen HIPI Bundle que contiene todas las imágenes que ha
descargado, entonces el reductor se fusionan todos los paquetes
de imagenHIPI formando una granimagenHIPI Bundle.
Figura 6: Demostración de la paralelización en la aplicación
Downloader. La tarea de la descarga de la lista de direcciones URL
de las imágenes está dividida entre n Mapa de tareas. Cada
mapper crea una imagen HIPI Bundle, que se fusionaron en una
gran imagen HIPI Bundle enel reducir la fase
Paso 2: dividir las URLs en grupos y enviar a cada grupo un
mapa. Usandola lista de direcciones URL de imagenintroducida y
el número de nodos utilizados para descargar estas imágenes,
podemos distribuir equitativamente la tarea de descarga de
imágenes para especificar el número de nodos del mapa. Esto
permite que haya el máximo de paralelizaciónpara el procesode
descarga. Url de la imagen se ha distribuido a los distintos nodos
por igual, yel mapa de tareas comenzará a descargar cada imagen
4 Llamamos a esta suma parcial la covarianza parcial
en el conjunto de direcciones URL es responsable, como muestra
la figura 6.
Paso 3: Descargar imágenes desde Internet. Podemos entonces
establecer una conexióna la url se recuperan de la base de datos
y descargar la imagenmediante la clase URLConnectionjava. Una
vez conectado, podemos comprobar el tipo de archivo para
asegurarse de que es una imagen válida, y obtenga un
InputStream para la conexión. A partir de esto, podemos usar el
InputStream para añadir la imagena una imagen HIPI Bundle.
Paso 4:almacenar imágenes enuna imagenHIPI Bundle. Una vez
que el InputStream es recibida de la URLConnection, podemos
agregar la imagen a un paquete de imagen HIPI simplemente
pasando el InputStream al método addImage. Cada tarea mapa
generará una imagen HIPI Bundle y el reducir la fase combinará
todos los paquetesjuntos enun granpaquete.
Almacenandoimágenesde esta forma, usted podrá tomar ventaja
de nuestro marco HIPI MapReduce para las tareas que desea
realizar enla imagenfija enun punto posterior. Por ejemplo, para
comprobar los resultados del programa de descarga, hemos
ejecutado un programa muysimple MapReduce (7 líneas)que sea
capaz de tomar la imagenHIPI Bundle yescribir las imágenes para
archivos JPEG individuales sobre los HDFS sinesfuerzo.
5 Conclusión
Este documento ha descrito nuestra biblioteca para el
procesamientode imágenesyaplicacionesde visión enun marco
Hadoop MapReduce - HIPI (Interfaz de procesamiento de
imágenes). Esta biblioteca fue cuidadosamente diseñado para
ocultar los detalles complejos de la potente Hadoop MapReduce
marco y sacar a la luz lo que más preocupan a los usuarios: las
imágenes. Nuestro sistema ha sido creado con la intención de
operar en grandes conjuntos de imágenes. Proporcionamos un
formato para almacenar imágenes para acceder eficientemente
dentro del ducto y MapReduce métodos sencillos para crear
dichos archivos. Proporcionando un sacrificio etapa antes de la
fase de mapeo, nos dan al usuario una forma sencilla para filtrar
conjuntos de imágenes y controlar los tipos de imágenes que se
utilizanensus MapReduce tareas. Por último, proporcionamos los
codificadores ydecodificadoresde imagenque correr detrás de las
escenasytrabajar para presentar al usuarioconflotacióntipos de
imagen que son más útiles para el procesamiento de imágenes y
aplicaciones de visión.
A través de estas características, nuestro interfaz trae consigoun
nuevo nivel de simplicidad para la creación de aplicaciones de
visión a gran escala con el objetivo de empoderar a los
investigadores yprofesores con una herramienta eficiente para la
creación de aplicaciones MapReduce centrado alrededor de las
imágenes. Este papel describe dos ejemplos de aplicaciones
construidas con HIPI que demuestran la potencia que presenta a
los usuarios. Esperamos que para conseguir que los recursos y el
poder de MapReduce a la visión que tenemos de la comunidad
mejorará la capacidad para crear nuevos proyectos de visión que
permitirá a los usuarios a empujar el campo de visión por
ordenador.
Lista de
dire
ccio
Mapa
1
Mapa
denodo
nodo del
mapa ...n
Bundle 1
HIPI HIPI
IMAGEN
IMAGEN
Bundle... HIPI
HIPI Paquete n
Reducir elpaquete
de
6. 6 Agradecimientos
Nos gustaría dar lasgracias enparticular al candidatoa doctorado
sean Arietta por su orientación y tutoría a lo largo de este
proyecto. Su liderazgo y visión han sido excelentes modelos y
puntos de aprendizaje para nosotros a lo largo de este proceso.
Además, debemos dar un gran agradecimiento a l Profesor
Ayudante Jason Lawrence por su apoyo a lo largo de los últimos
años y por habernos acogido en UVa de gráficos del grupo como
ojos brillantesestudiantes.
Referencias
Unarepresas, A., JACOBS, D., D, J. Olson, tico, M., PULLI, K.
TALVALA, E., unaJDIN, B., VAQUERO, D., LENSCH, H., y
HOROWITZ, M. 2010. La frankencamera: una plataforma
experimental para la fotografía computacional. ACMSIGGRAPH
2010 papers, 1-12.
UnPache, 2010. Hadoop Mapreduce Marco
Http://hadoop.apache.org/mapreduce/..
CONNER, J. 2009. Personalización de formatos de archivo de
entrada para el procesamiento de imágenes en
hadoop. Universidad del Estado de Arizona. En línea en:
Http://hpc. asu. edu/node/97.
DEAN, J., y GHEMAWAT, S. 2008. Mapreduce: procesamientode datos
simplificada engrandes grupos. Comunicaciones del ACM51, 1,
107-113.
FACEBOOK, 2010. FacebookImagen Almacenamiento
Http://blog.facebook.com/blog.php?post=206178097130..
GHEMAWAT, S., y GOBIOFF. . . , H. 2003. El sistema de archivos de
google. ACMSIGOPSoperativo ... (ENE).
GUO. . . , G. 2005. Aprender de ejemplos en el caso de muestras
pequeñas: reconocimiento de la expresión
facial. Sistemas(ENE).
ANCOCK H, P., BADDELEY, R., y Smith, L. 1992. Los principales
componentes de imágenes naturales. Red: cálculo en sistemas
neuronales 3, 1, 61-70.
LI, Y., y CRANDALL. . . , D. 2009. Clasificación histórica en grandes
coleccionesde imágenes. Visión por Computador (ENE).
LIU, K., LI, S., TANG, L., y WANG. . . , L. 2009. Rápidoseguimientofacial
paralelo utilizando el algoritmo de filtro de
partículas. Multimedia yExpo (ENE).
STONO, Z., Y ZICKLER. . . , T. 2010. Hacia el reconocimiento de cara a
gran escala utilizando un contexto de red social. Actas del
IEEE (ENE).
WHITE, B., YEH, T., la, J., y DAVIS, L. 2010. Escala web de Visión por
computador usando mapreduce para minería de datos
multimedia. Actas del Décimo Seminario internacional sobre
minería de datos multimedia, 1-10.
WHITE, 2010. El PequeñaArchivos Problema
Http://www.cloudera.com/blog/2009/02/the-small-
filesproblem/..