PSO Algorithm Applied to Codebook Design for Channel-Optimized Vector Quantization



Documentos relacionados
Algoritmo do Vagalume Aplicado ao Projeto de Dicionários do COVQ

Inserção de Marca D Água em Imagens Digitais com particionamento do dicionário utilizando o algoritmo Harmony Search

Método Dialético de Otimização usando o Princípio da Máxima Entropia

FERRAMENTA PARA O ENSINO DE QUANTIZAÇÃO VETORIAL EM CURSOS DE ENGENHARIA ELÉTRICA

Introdução às Redes Neurais Artificiais

Codificação de Canal

Análise e visualização de dados utilizando redes neurais artificiais auto-organizáveis

1 Problemas de transmissão

Processamento de Imagem. Prof. MSc. André Yoshimi Kusumoto

7.Conclusão e Trabalhos Futuros

Vetor Quantização e Aglomeramento (Clustering)

A Otimização Nuvem de Partículas (particle swarm)

Inteligência Computacional Aplicada a Engenharia de Software

Inserção de Marca D água Digital em Imagens Digitais Utilizando Quantização Vetorial com Particionamento do Dicionário por PSO

Inteligência de Enxame: PSO

4 Arquitetura básica de um analisador de elementos de redes

Implementações e Comparação de Multiplicadores de Alta Velocidade para Dispositivos Reconfiguráveis

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

COMPLEXIDADE COMPUTACIONAL DE UM ALGORITMO COMPETITIVO APLICADO AO PROJETO DE QUANTIZADORES VETORIAIS

PROJETO DE REDES

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001

29/08/2011. Radiologia Digital. Princípios Físicos da Imagem Digital. Unidade de Aprendizagem Radiológica. Professor Paulo Christakis

1 INTRODUÇÃO Internet Engineering Task Force (IETF) Mobile IP

Processo de Controle das Reposições da loja

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

IW10. Rev.: 02. Especificações Técnicas

1 Transmissão digital em banda base

UM ALGORITMO MEMÉTICO PARA A OTIMIZAÇÃO DE QUANTIZADORES VETORIAIS

Fatores de Impacto para alguns Periódicos Base JCR-2003 /ISI 1

Aceleração do Algoritmo Fuzzy K-means: Avaliação em Quantização Vetorial de Imagens.

CorelDRAW UM PROGRAMA DE DESIGN

Sinal analógico x sinal digital. Sinal analógico. Exemplos de variações nas grandezas básicas. Grandezas básicas em sinais periódicos

Algoritmos Genéticos

DECODIFICADOR DE DISPLAY DE 7 SEGMENTOS COM LATCH

Universidade Federal de Goiás Escola de Engenharia Elétrica e de Computação Laboratório de Máquinas Especiais

MINERAÇÃO DE DADOS APLICADA. Pedro Henrique Bragioni Las Casas

UNIVERSIDADE F EDERAL DE P ERNAMBUCO ANÁLISE DE UM MÉTODO PARA DETECÇÃO DE PEDESTRES EM IMAGENS PROPOSTA DE TRABALHO DE GRADUAÇÃO

I Seminário da Pós-graduação em Engenharia Elétrica

Gerenciamento de Projeto: Planejando os Recursos. Prof. Msc Ricardo Britto DIE-UFPI

Otimização de Funções Não Lineares por Meio do Algoritmo Árvore da Montanha

Verificação de Impressões Digitais usando Algoritmos Genéticos

Errata. Livro: Transmissão Digital - Princípios e Aplicações Edição:1ª Código: 4391 Autores: Dayan Adionel Guimarães & Rausley Adriano Amaral de Souza

Aprendizagem Competitiva com Consciência Aplicada ao Projeto de Dicionários para

SEGMENTAÇÃO DE IMAGENS EM PLACAS AUTOMOTIVAS

3 Classificação Resumo do algoritmo proposto

FUNDAÇÃO DE APOIO AO ENSINO TÉCNICO DO ESTADO DO RIO DE JANEIRO FAETERJ Petrópolis Área de Extensão PLANO DE CURSO

MÓDULO 4 Meios físicos de transmissão

Tecnologia de faixa para falha

Sistemas Operacionais e Introdução à Programação. Vetores e matrizes

Introdução à Transmissão Digital. Funções básicas de processamento de sinal num sistema de comunicações digitais.

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

AGRUPAMENTO DE ESCOLAS DE PORTELA E MOSCAVIDE. Informação - Prova de Equivalência à Frequência da disciplina de Aplicações Informáticas B

Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

1 Modulação digital para comunicações móveis

Thales Trigo. Formatos de arquivos digitais

RECONHECIMENTO DE PLACAS DE AUTOMÓVEIS ATRAVÉS DE CÂMERAS IP

I Seminário dos Grupos de Pesquisa da UNISC Ficha de Inscrição do Grupo de Pesquisa. Nome do Grupo: GPSEM Grupo de Projeto de Sistemas Embarcados e

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

DO ANALÓGICO AO DIGITAL: CONCEITOS E

Testes de Usabilidade

Regulamento do projeto "50 Telhados"

Projeto e Análise de Algoritmos Projeto de Algoritmos Introdução. Prof. Humberto Brandão humberto@dcc.ufmg.br

Algoritmos: Lógica para desenvolvimento de programação de computadores. Autor: José Augusto Manzano. Capítulo 1 Abordagem Contextual

ESTUDOS SOBRE A IMPLEMENTAÇÃO ONLINE DE UMA TÉCNICA DE ESTIMAÇÃO DE ENERGIA NO CALORÍMETRO HADRÔNICO DO ATLAS

REFORÇO DE PROGRAMAÇÃO ESTRUTURADA EM LINGUAGEM C PARA GRADUAÇÃO EM ENGENHARIA ELÉTRICA

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

Modelos Pioneiros de Aprendizado

Inteligência Computacional [2COP229]

Controle de Múltiplos Pivôs Centrais com um único Conjunto Motor-Bomba

Computadores de Programação (MAB353)

Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler

SISTEMAS DE COMUNICAÇÃO ÓPTICA : INICIAR A PROPOSTA DA DISSERTAÇÃO DE MESTRADO EM DISCIPLINA OPTATIVA, DURANTE PERÍODO DE AQUISIÇÃO DE CRÉDITOS.

Análise de componentes independentes aplicada à avaliação de imagens radiográficas de sementes

Transmissão de Imagens e Sinais de Voz Quantizados Vetorialmente em Canais com Desvanecimento. Waslon Terllizzie Araújo Lopes

Uma Versão Intervalar do Método de Segmentação de Imagens Utilizando o K-means

Complemento IV Introdução aos Algoritmos Genéticos

Filtros de sinais. Conhecendo os filtros de sinais.

Universidade Federal de Pernambuco

Análise em aparelhos de telefonia celular

Regulamento do projeto "50 Telhados"

5 SIMULAÇÃO DE UM SISTEMA WDM DE DOIS CANAIS COM O SOFTWARE VPI

UNIVERSIDADE FEDERAL DE PERNAMBUCO

TRATAMENTO E ANÁLISE DE SINAIS DE BAIXA FREQUÊNCIA PARA EMULAÇÃO DE CANAL RÁDIO

1. NÍVEL CONVENCIONAL DE MÁQUINA

4 Estudos de Casos Problema Direto

PESQUISA SOBRE O PERFIL DE ALUNOS NA UTILIZAÇÃO DE UM SITE DOCENTE DO ENSINO SUPERIOR

ALGORITMOS GENÉTICOS

4 Avaliação Experimental

CAPÍTULO 6 CIRCUITOS SEQUENCIAIS IV: PROJETO DE REDES SEQUENCIAIS

Curva ROC. George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE

Avaliação de técnicas de seleção de quadros-chave na recuperação de informação por conteúdo visual

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8

Cálculo de volume de objetos utilizando câmeras RGB-D

2- Conceitos Básicos de Telecomunicações

Manual Geral do OASIS

Análise qualitativa do processo de workflow da ouvidoria do IFMG campus Bambuí: um estudo de caso

Nathalie Portugal Vargas

6 Construção de Cenários

Feature-Driven Development

Transcrição:

PSO Algorithm Applied to Codebook Design for Channel-Optimized Vector Quantization H. A. S. Leitão, W. T. A. Lopes, Member, IEEE and F. Madeiro Abstract Vector quantization (VQ) has been used in signal compression systems. However, in the scenario of image transmission, VQ is very sensitive to channel errors. An approach to decrease such sensitivity is channel-optimized vector quantization (), which involves VQ codebook design taking into account the characteristics of the channel. In the present work, particle swarm optimization (PSO) is applied to codebook design for. Simulation results are presented for a variety of bit error rates of a binary symmetric channel (BSC) and reveal the effectiveness of the method in decreasing visual impairment by blocking artifacts in the reconstructed images, overperforming conventional codebook design in terms of peak signal to noise ratio of the reconstructed images for approximately 90% of exhaustive evaluations of image transmission over BSC. Keywords image vector quantization, channel-optimized vector quantization, particle swarm optimization, signal processing. I. INTRODUÇÃO C OM o avanço tecnológico dos sistemas computacionais, o uso de recursos de mídias digitais, tais como imagens, voz e vídeo, cresce e se populariza, tanto para contextos sociais quanto para contextos profissionais. Com isso, os requisitos de largura de banda para transmissão de sinais precisam ser reduzidos. Essa redução pode ser obtida por meio da codificação de sinais, particularmente codificação de fonte. Neste cenário, a quantização vetorial se apresenta como uma técnica amplamente utilizada. Estudos abordam seu uso em diversas aplicações como, por exemplo, na compressão de imagens [1-4], em projetos de alocação de antenas para telefonia celular [5], em processamento de imagens médicas [6] e em segurança da informação envolvendo imagens digitais (por exemplo, esteganografia e marca d água digital) [7-11]. A quantização vetorial de imagens envolve o mapeamento de blocos de pixels da imagem de entrada (imagem a ser quantizada) em um conjunto finito de possíveis blocos de pixels, os quais são denominados vetores-código (ou vetores de reconstrução, protótipos, vetores de referência, blocos de referência). Esse conjunto finito é denominado dicionário. O número de pixels de cada vetor é denominado dimensão e o número de vetores-código é denominado tamanho do dicionário. O projeto de dicionário é levado a efeito no sentido de minimizar a distorção introduzida na representação dos vetores de entrada pelos respectivos vetores-código. Uma abordagem usual para o projeto de dicionário consiste em utilizar um H. A. de S. Leitão, Universidade Federal de Pernambuco, Pernambuco, Brasil, herbert.leitao@ufpe.br W. T. A. Lopes, Universidade Federal de Campina Grande (UFCG), Paraíba, Brasil, waslon@ieee.org F. M. Bernardino Junior, Universidade de Pernambuco (UPE), Pernambuco, Brasil, madeiro@poli.br conjunto de treino, constituído por uma sequência representativa da fonte a ser quantizada. Exemplos de técnicas que usam conjunto de treino incluem o algoritmo LBG (Linde- Buzo-Gray) [12], versões aceleradas do algoritmo K-means [13,14], algoritmos de redes neurais [15,16], algoritmos fuzzy K-means [17,18] e algoritmos meméticos [19]. Nos algoritmos supramencionados, a atualização do dicionário é guiada pela passagem do conjunto de treino. Assim, classes diferentes de imagens requerem dicionários diferentes, visto que o alvo da compressão baseada em quantização vetorial é reduzir a distorção introduzida na quantização, ou seja, na substituição dos vetores de entrada pelos respectivos vetores-código. A quantização vetorial é sensível a erros de canal que podem ocorrer na transmissão. No caso particular da quantização vetorial com imagens, os ruídos de canal geram artefatos que comprometem visualmente a qualidade das imagens reconstruídas [20]. Uma abordagem utilizada para o problema é a quantização vetorial otimizada para canal (, channeloptimized vector quantization), técnica de quantização que busca minimizar os efeitos dos erros que acontecem no canal e que afetam a qualidade das imagens reconstruídas. A utiliza no projeto do dicionário informações da fonte e do próprio canal de transmissão [21]. A partir dessas informações, em se tratando de projeto de dicionário para, o alvo é obter um dicionário mais robusto aos erros de canal quando comparado a dicionário obtido de técnicas convencionais de projeto (considerando apenas informações da fonte). O projeto de dicionários para pode ser visto como um problema de otimização. Problemas de otimização são passíveis de aplicação de técnicas de computação bioinspirada. A computação bio-inspirada é uma área de estudo onde são desenvolvidos algoritmos baseados em processos naturais ou em comportamentos sociais [22], podendo ser aplicada em diversos contextos e em diversas situações, como em reconfiguração de redes elétricas [23] e reconhecimento facial [24]. Como exemplos de aplicações ao tem-se a otimização do projeto de dicionários a partir do uso de lógica nebulosa [25], de algoritmos genéticos [26] e do algoritmo do vagalume [27]. O presente artigo apresenta a aplicação da otimização por enxame de partículas (PSO, Particle Swarm Optimization), modelo de computação bio-inspirada apresentado por Eberhart e Kennedy em 1995 [28], ao projeto de dicionários para. Denominado de PSO-, este método busca reduzir a distorção média final dos dicionários projetados e, por consequência, melhorar a qualidade das imagens reconstruídas a partir da obtenção de dicionários mais robustos a erros de canal. O restante deste artigo encontra-se organizado da seguinte forma: a Seção II aborda a quantização vetorial otimizada para canal, a Seção III apresenta a meta-heurística de otimização por

enxame de partículas, a Seção IV descreve o funcionamento do PSO-, os resultados são apresentados na Seção V e as conclusões na Seção VI. II. A é um método de quantização vetorial utilizado na compressão de imagens para transmissão por canais com ruídos. A Fig. 1 apresenta um diagrama de blocos que ilustra um sistema de transmissão utilizando o processo de quantização vetorial. O codificador E( ) mapeia um vetor formado por um bloco de pixels da imagem fonte, R, em um índice = E(), {1, 2,, }. A operação do codificador está relacionada a um conjunto de particio-namento de R, ={,,, }, tal que E() =. O decodificador ( ), realiza o mapeamento do índice j, {1,2,,}, recebido após a transmissão, em um vetor-código (centroide) =(), R. O vetor-código faz parte de um dicionário ={,,, }. Figura 1. Sistema de transmissão utilizando o processo de quantização vetorial. Seja uma transmissão por canal binário simétrico com probabilidade de erro de bit. A probabilidade de o codificador transmitir o índice e o decodificador receber o índice é dada por ( ). Considerando que a medida de distorção (, ) associada ao mapeamento de um vetor X em um vetor Y é dada pela distância euclidiana quadrática (, ) =, (1) o projeto de dicionários para consiste em obter um dicionário formado por um conjunto de vetores que serão utilizados no processo de quantização vetorial. Esta etapa pode ser resumida da seguinte forma: (a) Particionamento os vetores do conjunto de treino são alocados nas regiões do conjunto de particionamento ={,,, } de acordo com =: ( ) ( ),. (b) Atualização do dicionário os novos vetores-código das regiões do conjunto de particionamento são calculados de acordo com (2) = ( ) ( ), (3) em que é o número de vetores de treino pertencentes à região. (c) Cálculo da distorção calcula-se a distorção média obtida por [] = 1 ( ), (4) em que denota o número da iteração. (d) Teste de convergência critério de parada do algoritmo. As etapas de particionamento, atualização do dicionário e cálculo da distorção, que ocorrem em uma iteração, são realizadas repetidamente até que o critério de parada definido no teste de convergência seja satisfeito. Precisamente, o algoritmo para ao final da t-ésima iteração se [] [] [], (5) em que é um parâmetro denominado de limiar de distorção. III. OTIMIZAÇÃO POR ENXAME DE PARTÍCULAS A otimização por enxame de partículas (PSO, particle swarm optimization) é um algoritmo de inteligência artificial desenvolvido por Eberhart e Kennedy [28], inspirado no comportamento social apresentado por bandos de pássaros em revoada. Na PSO, o termo partícula simboliza o pássaro e representa uma possível solução para o problema; o espaço de busca por possíveis soluções representa a área sobrevoada pelos pássaros; e a solução ótima representa o local do ninho ou da comida. Para avaliar o grau de aptidão das soluções obtidas, a PSO utiliza uma função denominada fitness. As partículas possuem dois operadores associados a elas: o vetor posição e o vetor velocidade. O vetor posição grava a posição da partícula no espaço de busca e o vetor velocidade direciona as mudanças de posição das partículas durante a execução do algoritmo. Além da informação desses dois operadores, cada partícula grava duas posições: a posição global best (gbest), que é a melhor posição conhecida pelo enxame, e a posição personal best (pbest), que é a melhor posição conhecida pela partícula. Essas posições funcionam como um histórico de melhores resultados a ser utilizado no processo decisório de reposicionamento, ou seja, a partícula deve procurar se movimentar na direção das melhores regiões visitadas por ela e pela partícula com melhor resultado momentâneo do enxame. A Fig. 2 mostra o fluxograma do algoritmo PSO. Na inicialização, são gerados aleatoriamente os vetores,,,, N, que representam as posições das partículas no espaço de busca. Em seguida a função fitness é utilizada para calcular a aptidão de cada partícula. Ao ter a informação do valor de aptidão de cada partícula, o algoritmo verifica qual informação vai ficar gravada nas posições pbest e gbest. Na primeira iteração, na posição pbest de cada partícula fica gravada justamente a sua posição inicial; nas demais iterações,

a posição pbest somente será atualizada se a aptidão da partícula na iteração for melhor. Por sua vez, a posição gbest na primeira iteração grava a posição da partícula que obteve melhor valor de aptidão; nas demais iterações, a posição gbest somente é atualizada quando alguma partícula obtém aptidão melhor. Após verificar as informações das posições pbest e gbest é avaliado o critério de parada, caso este não tenha sido alcançado o algoritmo continua atualizando o vetor velocidade de cada partícula. De acordo com a literatura [29,30], uma possível forma de atualização do vetor velocidade é [] = [] + [] [] [] + [] [] [], em que é o vetor velocidade da partícula i no momento da mudança de posição, t é a iteração, é o parâmetro cognitivo da partícula, é o parâmetro de aprendizado social e e são valores aleatórios compreendidos no intervalo de 0 a 1. Na Equação 6, os parâmetros cognitivo e de aprendizado social ponderam respectivamente o quanto a partícula irá aproveitar da sua distância em relação às informações memorizadas e, já e representam a ação instintiva de aproveitamento de determinada parcela de informação. Calcula-se então a nova posição para cada partícula. (6) partículas. (b) Em seguida a imagem de treino (ou uma concatenação de imagens) é particionada em M vetores, formando o conjunto de treino = {,,, }. (c) É realizado, para cada partícula, o mapeamento dos M vetores de treino nas N regiões do conjunto de particionamento P, conforme mostrado na Equação 2. (d) Calcula-se, para cada partícula, o vetor-código (centroide) de cada região do conjunto de particionamento P, conforme a Equação 3. (e) Calcula-se, para cada partícula, a distorção média [], apresentada na Equação 4, em que l representa a partícula e t representa o número da iteração do algoritmo. (f) Calcula-se a aptidão para cada partícula. A aptidão da partícula é o inverso da distorção média calculada em (e). Quanto menor for a distorção média (função de otimização) maior é a aptidão da partícula, [] = 1 []. (8) (g) Atualiza-se a informação que vai ficar gravada na posição pbest de cada partícula. (h) Atualiza-se a informação que vai ficar gravada na posição gbest. (i) Realiza-se o teste de convergência (Equação 5) na partícula que possui o melhor valor de aptidão até o momento, valor gravado na posição gbest. A condição de parada da etapa de projeto de dicionário para PSO- depende do limiar de distorção estabelecido. Caso o critério de parada não tenha sido alcançado, o PSO- continua na ação descrita na etapa (j). (j) Atualiza-se o vetor velocidade de cada vetor-código em cada partícula. A atualização do vetor velocidade acontece em duas etapas. Na primeira etapa, determinase o valor da velocidade para cada vetor-código, conforme mostrado na Equação 9, fazendo com que a partícula siga uma trajetória de convergência baseada nas características do projeto de dicionários da. [] = [] [], (9) =, (10) Figura 2. Fluxograma do algoritmo PSO. [] = [] + []. (7) Na sequência, inicia-se uma nova iteração do algoritmo PSO. IV. PSO- O algoritmo PSO aplicado ao projeto de dicionários para quantização vetorial otimizada para canal (PSO-) pode ser descrito da seguinte forma: (a) Inicialmente são gerados aleatoriamente dicionários iniciais de tamanho N e dimensão K. Cada dicionário inicial será representado no PSO- por uma das em que é o centroide j do conjunto de particionamento P, Equação 3, pertencente à partícula l. Na segunda etapa, a velocidade de cada vetor-código é atualizada pela equação [] = [] + [] [] [] + [] [] []. (11) (k) Atualiza-se o vetor posição de cada partícula na iteração t, adicionando-se o vetor velocidade ao valor atual, [] = [] + []. (12)

Com a atualização do posicionamento das partículas, o PSO- retorna à etapa (c) para iniciar uma nova iteração. V. RESULTADOS Esta seção apresenta os resultados obtidos pelos dicionários projetados utilizando as imagens apresentadas na Fig. 3, de 256 256 pixels com 256 níveis de cinza. As imagens foram utilizadas como conjunto de treino na etapa de projeto de dicionários e como imagens de transmissão. Na etapa de projeto de dicionários para PSO- foram utilizados 50 dicionários iniciais aleatórios (dicionários compostos por vetores-código da imagem de treino escolhidos aleatoriamente), em que, para cada projeto de dicionário, o dicionário escolhido na primeira iteração, representando a partícula com melhor aptidão inicial, foi utilizado no projeto de dicionário para. Foram avaliados dicionários de tamanho = 32, 64, 128 e 256 vetores-código, com dimensão =16 (blocos de 4 4 pixels), e com limiar de distorção = 0,001, projetados para transmissão de imagens por canal binário simétrico com probabilidade de erro de bit () de 0,005; 0,010; 0,050 e 0,100. Os valores dos parâmetros aplicados ao PSO- na etapa de projeto de dicionários são mostrados na Tabela I. Os valores utilizados como parâmetro cognitivo da partícula ( ) e como parâmetro de aprendizado social ( ) foram obtidos a partir de uma análise prévia, em que foram observados valores para e que produzissem um ambiente mais competitivo entre as partículas, procurando obter um número maior de troca de partículas escolhidas ao longo do processo. Outro fator observado em relação à e foi a escolha de valores para esses parâmetros que gerassem dicionários mais robustos aos erros de canal. A avaliação de robustez dos dicionários está relacionada à avaliação da qualidade das imagens reconstruídas correspondentes, medida pela relação sinal-ruído de pico (PSNR, Peak Signal-to-Noise Ratio), = 10. log, (13) em que MSE (Mean Square Error) é o erro médio quadrático entre os pixels da imagem original e os pixels da imagem reconstruída, e é o valor máximo que um pixel pode possuir na imagem. Em se tratando de imagens 8 bpp (bits por pixel), = 255. (b) Boat. (a) Lena. Figura 3. Imagens utilizadas no estudo. (c) Clock. No estudo, denota-se por o valor médio de relação sinal-ruído de pico das imagens reconstruídas por dicionário, considerando 50 transmissões. Denota-se por o valor médio de relação sinal-ruído de pico final para cada N e ν. A Tabela II apresenta os valores de obtidos para as três imagens. Pode-se observar que 89,58% dos valores de obtidos pelo PSO- foram maiores que os valores de da, subindo para 100% nos casos de canal binário simétrico com as menores faixas de probabilidade de erro de bit (0,005; 0,010 e 0,050). O melhor ganho em decibéis do PSO- em relação à para cada imagem foi: 0,47 db para a imagem Lena, ocorrido nos dicionários projetados com =64 e = 0,005; 0,44 db para a imagem Boat, ocorrido nos dicionários projetados com = 256 e = 0,005; e 0,28 db para a imagem Clock, ocorrido nos dicionários projetados com =64 e = 0,010. TABELA I. PARÂMETROS DO PSO-. Imagens Lena e Boat = 0,5 e =0,7 Imagem Clock = 0,5 e =0,7 para =32 e =64 = 0,5 e =0,9 para =128 e =256

TABELA II. VALORES DE. ν Imagem Método N 32 64 128 256 25,14 25,86 26,33 26,35 25,49 26,33 26,63 26,70 23,88 24,49 25,06 25,05 0,005 Boat PSO- 24,08 24,83 25,37 25,49 24,82 25,35 25,50 25,63 25,04 25,54 25,60 25,76 24,50 24,78 24,71 24,86 24,77 24,95 24,91 25,15 23,32 23,65 23,69 24,12 0,010 Boat PSO- 23,59 23,88 23,90 24,24 23,93 23,91 24,30 24,80 24,07 24,19 24,46 24,94 20,65 20,91 21,04 20,74 20,76 21,11 21,23 21,01 20,08 20,49 20,62 20,16 0,050 Boat PSO- 20,22 20,71 20,82 20,24 20,14 20,14 19,89 19,87 20,38 20,29 20,08 20,03 19,02 19,08 18,73 18,88 19,26 18,95 18,95 18,94 18,71 18,72 18,05 18,50 0,100 Boat PSO- 18,86 18,62 18,18 18,41 18,14 18,20 18,24 18,14 18,10 18,24 18,25 18,09 A Fig. 4 apresenta a distorção média a cada iteração ( [] ) para a e para o PSO-. Os números mostrados junto à distorção média do PSO- representam a partícula que obteve o melhor resultado na iteração (salienta-se que esta partícula, por ser a de maior aptidão, corresponde ao dicionário escolhido na iteração). Pode-se observar que na etapa de projeto de dicionários para PSO- foram realizadas 47 iterações, obtendo distorção média final = 9,059. 10. Nessas 47 iterações houve cinco trocas de partículas ao longo do processo, apresentando quatro partículas diferentes. No projeto de dicionários para foram realizadas 30 Figura 4. Projeto de dicionário para e para PSO-. iterações, obtendo distorção média final = 9,796. 10. A das imagens reconstruídas pelo PSO- foi de 24,83 db, já as imagens reconstruídas pela obtiveram de 24,41 db, o que representa, em média, uma melhoria de 0,42 db em termos de das imagens reconstruídas pelo PSO-. Nas Fig. 5, 6 e 7 são apresentadas as imagens Lena, Boat e Clock, reconstruídas após transmissão por canal binário simétrico com = 0,010, utilizando dicionários projetados para e para PSO- de tamanho = 256 vetorescódigo. As imagens foram reconstruídas com os mesmos bits incorretos na sequência de bits transmitida pelo canal binário simétrico. Com isso é possível avaliar a robustez dos dicionários, observando os efeitos causados pelos erros de canal em blocos de pixels pertencentes à mesma posição das imagens. Foram escolhidos pares de dicionários (/PSO- ) que apresentaram valores de próximos aos valores apresentados na Tabela II. (a). Figura 5. Imagens Lena reconstruídas. (b) PSO-. Os resultados de PSNR dessas imagens foram: = 25,23 db para a imagem Lena reconstruída pela, = 26,34 db para a imagem Lena reconstruída pelo PSO-, = 24,12 db para a imagem Boat reconstruída pela, = 24,73 db para a imagem Boat reconstruída pelo PSO-, = 24,50 db para a imagem Clock reconstruída pela e = 25,30 db para a imagem Clock reconstruída pelo PSO-. No zoom efetuado em regiões das imagens é possível observar o efeito dos bloqueamentos espúrios ocasionado pelos erros de canal, onde se percebe que a imagem reconstruída pelo PSO- sofre menos alteração por conta deste tipo de erro. Em simulações realizadas com imagens distintas, a diferentes taxas de codificação e considerando valores distintos de probabilidade de erro de bit do canal binário simétrico,

É importante mencionar que a abordagem PSO- requer a utilização de um conjunto de dicionários a serem guiados pela passagem do conjunto de treino. De fato, cada partícula na técnica particle swarm optimization corresponde a um dicionário modificado ao final de cada passagem do conjunto de treino. A abordagem, por sua vez, utiliza apenas um dicionário guiado pela passagem do conjunto de treino. Assim, se um projeto PSO- envolve o uso de partículas, a complexidade computacional correspondente é cerca de vezes maior que complexidade computacional da abordagem convencional. (a). Figura 6. Imagens Boat reconstruídas. (b) PSO-. VI. CONCLUSÕES Este artigo apresentou a aplicação do algoritmo de otimização por enxame de partículas ao projeto de dicionários para quantização vetorial otimizada para canal. O método, chamado de PSO-, utilizou a otimização por enxame de partículas para projetar dicionários com menor distorção média final e mais robustos aos erros de canal. Os resultados obtidos no estudo mostram redução na distorção média final em 90,73% dos dicionários projetados para PSO-, em comparação com os resultados obtidos pela convencional. O algoritmo PSO- também conseguiu melhorar o valor médio de relação sinal-ruído de pico final em 89,58% dos conjuntos de transmissão no estudo, mostrando-se eficiente na obtenção de dicionários mais robustos aos erros de canal. Como trabalhos futuros podem ser citados a avaliação de outros tipos de canal e os efeitos da codificação de canal, a avaliação do impacto causado pelo aumento no número de partículas utilizadas no projeto de dicionários para PSO-, e a investigação de outros algoritmos bio-inspirados aplicados ao projeto de dicionários para. AGRADECIMENTOS Os autores agradecem o apoio financeiro do CNPq e da CAPES. REFERÊNCIAS (a). Figura 7. Imagens Clock reconstruídas. (b) PSO-. observou-se que a qualidade visual das imagens reconstruídas com dicionários PSO- mostrou-se, em geral, levemente superior à qualidade visual das imagens reconstruídas com dicionários. Inspeções visuais das imagens reconstruídas também revelaram que uma percepção subjetiva de leve diferença de qualidade deve-se ao fato de que, em geral, os artefatos associados aos dicionários PSO- parecem ser visualmente menos incômodos que os associados aos dicionários. [1] D. Tsolakis, G. Tsekouras e J. Tsimikas, Fuzzy vector quantization for image compression based on competitive agglomeration and a novel codeword migration strategy, Engineering Applications of Artificial Intelligence, pp. 1212-1225, vol 25, 2012. [2] E. Akhtarkavan e M. F. M. Salleh, Multiple descriptions coinciding lattice vector quantizer for wavelet image coding, IEEE Transactions on Image Processing, vol. 21, pp. 653-661, 2012. [3] D. Tsolakis, G. Tsekouras, A. Niros e A. Rigos, On the systematic development of fast fuzzy vector quantization for grayscale image compression, Neural Networks, vol. 36, pp. 83-96, 2012. [4] N. M. M. Rodrigues, E. A. B. Silva, M. B. Carvalho, S. M. M. Faria e V. M. M. Silva, On dictionary adaptation for recurrent pattern image coding, IEEE Transactions on Image Processing, vol. 17, pp. 1640-1653, 2008. [5] Y. Qian, Antenna location design for distributed antenna systems with selective transmission, International Conference on Wireless Communication & Signal Processing, pp. 1-5, Nov. 2009. [6] S. M. Hosseine e A. Naghsh-Nilchi, Medical ultrasound image compression using contextual vector quantization, Computers in Biology and Medicine, vol. 42, pp. 743-750, 2012. [7] J. Shen e J. Ren, A robust associative watermarking technique based on vector quantization, Digital Signal Processing, vol. 20, pp. 1408-1423, 2010.

[8] C. Chang, C. Lin e Y. Hsieh, Data hiding for vector quantization images using mixed-base notation and dissimilar patterns without loss of fidelity, Information Sciences, vol. 201, pp. 70-79, 2012. [9] J. Lee, Y. Chiou e J. Guo, Lossless data hiding for VQ indices based on neighboring correlation, Information Sciences, vol. 221, pp. 419-438, 2013. [10] W. Wang, C. Huang, C. Liu, P. Su e S. Wang, Data embedding for vector quantization image processing on the basis of adjoining state- codebook mapping, Information Sciences, vol. 246, pp. 69-82, 2013. [11] W. Wang, C. Huang e S. Wang, VQ applications in steganographic data hiding upon multimedia images, IEEE Systems Journal, vol. 5, pp. 528-537, 2011. [12] Y. Linde, A. Buzo e R. Gray. An algorithm for vector quantizer design. IEEE Transactions on Communications, vol. 28, PP. 84-95, 1980. [13] D. Lee, S. Baek e K. Sung. Modified K-means algorithm for vector quantizer design. IEEE Signal Processing Letters, vol. 4, n 1, pp. 2-4, 1997. [14] K. K. Paliwal e V. Ramasubramanian. Comments on Modified K-means algorithm for vector quantizer design. IEEE Transactions on Image Processing, vol. 9, n 11, pp. 1964-1967, 2000. [15] F. Madeiro, R. M. Vilar, J. M. Fechine e B. G. Aguiar Neto. A selforganizing algorithm for vector quantizer design applied to signal processing. International Journal of Neural Systems, pp. 219-226, vol. 9, n 3, 1999. [16] A. K. Krishnamurthy, S. C. Ahalt, D. E. Melton e P. Chen. Neural networks for vector quantization of speech and images. IEEE Journal on Selected Areas in Communications, vol. 8, n 8, pp. 1449-1457, 1990. [17] N. B. Karayiannis e P. I. Pai, Fuzzy vector quantization algorithms and their application in image compression. IEEE Transactions on Image Processing, vol. 4, n 9, pp. 1193 1201, 1995. [18] F. Madeiro, R. R. A. Galvão, F. A. B. S. Silveira e D. C. Cunha. Uma alternativa de aceleração do algoritmo fuzzy K-Means aplicado à quantização vetorial. TEMA. Tendências em Matemática Aplicada e Computacional, vol. 13, pp. 193-206, 2012. [19] C. R. B. Azevedo, R. A. Azevedo, E. L. Bispo Junior, T. A. E. Ferreira, W. T. A. Lopes e F. Madeiro. Um algoritmo memético para a otimização de quantizadores vetoriais. Learning and Nonlinear Models, vol. 5, n 1, pp. 1-15, 2008. [20] W. T. A. Lopes, F. Madeiro, J. F. Galdino, B. G. Aguiar Neto e M. S. Alencar, Diversidade em modulação aplicada a canais de comunicações móveis: efeito dos erros de estimação de canal na transmissão de imagens, Revista da Sociedade Brasileira de Telecomunicações, vol. 19, p.p. 22-33, 2004. [21] N. Favardin e V. Vaishampayan, On the performance and complexity of channel-optimized vector quantizers, IEEE Transactions on Information Theory, vol. 37, pp. 155-160, Jan. 1991. [22] X. S. Yang, Nature-Inspired Metaheuristic Algorithms. United Kingdom: Luniver Press, 2010. [23] F. Scenna, D. Anaut, L. Passoni e G. Meschino, Reconfiguration of electrical networks by an ant colony optimization algorithm, IEEE Latin America Transactions, vol. 11, pp. 538-544, Feb. 2013. [24] L. X. Medeiros, G. A. Carrijo, E. L. Flôres and A. C. P. Veiga, Genetic algorithms applied in face recognition, IEEE Latin America Transactions, vol. 10, pp. 2280-2285, Dec. 2012. [25] W. Hwang, F. Lin e C. Lin, Fuzzy channel-optimized vector quantization, IEEE Communication Letters, vol. 4, pp. 408-410, 2000. [26] W. Hwang, C. Ou e C. Yeh, Genetic channel-optimized vector quantizer design for burst error channels, 11 th European Symposium on Artificial Neural Networks, pp. 345-357, 2003. [27] H. A. S. Leitão, F. Madeiro e W. T. A. Lopes, Algoritmo do vagalume aplicado ao projeto de dicionários do, Congresso Brasileiro de Inteligência Computacional, Set. 2013. [28] J. Kennedy e R. C. Eberhart, Particle swarm optimization, Proceedings of the IEEE International Conference on Neural Networks, vol. 4, pp. 1942-1948, 1995. [29] N. Jin e Y. Rahmat-Samii, Advances in particle swarm optimization for antenna designs: real-number, binary, single-objective and multiobjective implementations, IEEE Transactions on Antennas and Propagation, vol. 55, pp. 556-567, 2007. [30] R. Eberhart e Y. Shi, Particle swarm optimization: developments, applications and resources, Proceedings of the Congress on Evolutionary Computation, vol. 1, pp. 81 86, 2001. Herbert Albérico de Sá Leitão nasceu em Recife, Pernambuco, em 1977. Recebeu o diploma de Engenheiro Eletricista em 2003 pela Universidade Federal de Pernambuco e o título de Mestre em Engenharia de Sistemas em 2014 pela Universidade de Pernambuco. Atualmente é professor do Departamento de Engenharia Elétrica da Universidade Federal de Pernambuco, Brasil. Seus principais interesses de pesquisa incluem processamento de sinais, sistemas de comunicação e inteligência computacional. Waslon Terllizzie Araújo Lopes nasceu em Petrolina, Pernambuco, em 29 de dezembro de 1974. Recebeu o diploma de Engenheiro Eletricista e o título de Mestre em Engenharia Elétrica pela Universidade Federal da Paraíba em 1998 e 1999, respectivamente. Recebeu o título de Doutor em Engenharia Elétrica pela Universidade Federal de Campina Grande em junho de 2003. Foi professor e chefe do Núcleo de Telecomunicações do Curso de Engenharia Elétrica da Faculdade ÁREA1, Salvador, BA, no período de agosto de 2003 a dezembro de 2009. Atualmente, Waslon Terllizzie é professor Adjunto 3 do Depar-tamento de Engenharia Elétrica da Universidade Federal de Campina Grande. É coordenador executivo do Instituto de Estudos Avançados em Comunicações (Iecom) e tutor do Grupo PET-Engenharia Elétrica e suas atividades de pesquisa concentram-se em quantização vetorial robusta, sistemas de comunicações sem fio, comunicações móveis, teoria das comunicações e processamento digital de imagens e sinais de voz, áreas em que tem mais de uma centena de trabalhos publicados em congressos, revistas e livros, nacionais e internacionais. Francisco Madeiro nasceu em Fortaleza, Ceará, Brasil, em 1972. Recebeu o título de Doutor em Engenharia Elétrica pela Universidade Federal da Paraíba, Brasil, em 2001. Atualmente é professor da Universidade de Pernambuco, Brasil. Seus principais interesses de pesquisa incluem processamento de sinais, sistemas de comunicação e inteligência computacional. Foi ganhador do prêmio Destaque em Ensino da Escola Politécnica de Pernambuco (POLI), em 2008, e dos prêmios de Destaque em Pesquisa e Destaque em Ensino da POLI, em 2013. Tem atuado em projetos de pesquisa e desenvolvimento (P&D) em transmissão digital e processamento de imagem. Desde 2011, é bolsista de Produtividade em Desenvolvimento Tecnológico e Extensão Inovadora (DT) do Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq).