GPU Architectures for Wavelet-based Image Coding Acceleration

Els sistemes de codificació d'imatges moderns utilitzen tècniques amb alts requirements de comput per tal d'aconseguir comprimir imatges de manera eficient. Les aplicacions que fan us d'aquests codecs sovint tenen necesitats de processament en temps real. És habitual en aquests escena...

ver descrição completa

Detalhes bibliográficos
Autor: Enfedaque Montes, Pablo
Tipo de documento: tese
Estado:Versão publicada
Data de publicação:2017
País:España
Recursos:CBUC, CESCA
Repositório:TDR. Tesis Doctorales en Red
OAI Identifier:oai:www.tdx.cat:10803/405310
Acesso em linha:http://hdl.handle.net/10803/405310
Access Level:Acceso aberto
Palavra-chave:Computació paral·lela
Computación paralela
Parallel computing
Processament d'imatges
Procesamiento de imágenes
Image processing
Graphic processing unit (GPU)
Tecnologies
004
Descrição
Resumo:Els sistemes de codificació d'imatges moderns utilitzen tècniques amb alts requirements de comput per tal d'aconseguir comprimir imatges de manera eficient. Les aplicacions que fan us d'aquests codecs sovint tenen necesitats de processament en temps real. És habitual en aquests escenaris fer ús de hardware especialitzat com, per exemple, Field-Programmable Gate Arrays (FPGAs) o Applications-Specific Integrated Circuits (ASICs). No obstant, les GPUs, amb la seva arquitectura altament paral·lela orientada a rendiment, representen una alternativa atractiva en comparació al hardware especialitzat. Aquestes són reprogramables, energèticament eficients, es poden trobar a la majoria de sistemes i, sobretot, ofereixen un rendiment computacional molt competitiu. Els sistemes de codificació d'imatges basats en wavelets són aquells que utilitzen algun tipus de transformada wavelet abans de l'etapa de codificació de les dades. JPEG2000 és el sistema de codificació d'imatges basats en wavelet més representatiu. Diversos projectes d'investigació han intentat desenvolupar implementacions en GPU de JPEG2000, amb l'objectiu d'accelerar el sistema de codificació. Encara que algunes etapes del sistema són adequades per a la computació en GPUs, l'etapa de codificació de dades no exposa suficient paral·lelisme de granuralitat fina. A més, aquesta és l'etapa que requereix més recursos de comput (suposa un 75% del temps d'execució total) i representa, per tant, el coll d'ampolla del sistema. La investigació presentada en aquesta tesi es centra en la computació utilitzant GPUs de les etapes més rellevants dels sistemes de codificació d'imatges basats en wavelet: la transformada wavelet i l'etapa de codificació de dades. Aquesta tesi presenta tres contribucions principals: La primera, és una implementació de la Transformada Discreta Wavelet accelerada utilitzant GPUs. La implementació proposada aconsegueix una acceleració de 4x, respecte les solucions prèvies a l'estat de l'art; la segona, és l'anàlisi i reformulació de l’etapa de codificació de dades de JPEG2000. Es proposa un nou motor de compressió d'alt rendiment potencialment paral·lel: Bitplane Image Coding with Parallel Coefficient Processing (BPC-PaCo). BPC-PaCo reformula els mecanismes de codificació de dades, sense renunciar a cap funcionalitat dels sistemes de codificació tradicionals; l'última contribució d'aquesta tesis, presenta una implementació optimitzada per a GPU de BPC-PaCo. Es compara el seu rendiment amb les implementacions més competitives de JPEG2000, tant en CPU com en GPU, i es mostra com BPC-PaCo aconsegueix una millora en el temps d'execució de fins a 30x respecte les implementacions més rapides fins al moment.