Visorama

 

 

1 - Fase de Teste do Hardware

1.1 - Tarefa

   Realizar testes de performance do hardware com o objetivo tanto de saber o quando pode ser feito no processo de visualização das panoramas quanto para desenvolver algoritmo de visualização e estruturas de armazenamento adequadas para obter o máximo de rendimento da máquina.

   Os testes de performance serão realizados na placa de vídeo, no HD e nas memórias. Os testes no HD e nas memórias tem como objetivo averiguar as taxas de transferência de tiles entre o HD e as memórias. E os testes na placa de vídeo será feito visando o tempo de quadros por segundo. Todos os testes serão feitos mediante dois fatores: o tamanho do tile e o tipo de acesso que é feito no HD.

1.1.1 - Tamanho do Tile

    Os testes serão realizados com base em diferentes tamanhos de tiles. Todos os tiles da panorama terão as mesmas dimensões e estas dimensões serão dadas em potência de 2. Assim, as dimensões dos tiles de qualquer nível de resolução da panorama é dado por (2n, 2m), onde n e m são inteiros positivos.

1.1.2 - Tipos de Acesso

   Os testes realizados levam em consideração os seguintes tipos de acessos:

  1. Acesso Aleatório - Os tiles são lidos do HD aleatoriamente.

  2. Acesso Sequencial - Os tiles são lidos do HD sequencialmente.

  3. Acesso por nível de resolução - Os tiles são lidos do HD por nível de resolução.

  4. Acesso por visualização - Os tiles são lidos caso estes estejam dentro da janela de visualização.

  5. Acesso a estrutura de dados - Leitura do header e da estrutura de dados que representam a panorama em multi-resolução.

  1.1.3 - Estrutura de Dados

   Nos teste de desempenho serão utilizados dois tipos de estrutura de dados para a representação da panorama. A primeira estrutura de dados, inicialmente desenvolvida no sistema de visualização de panoramas, cada nível de resolução da panorama é representado por uma matriz de tiles (ver figura 1). Todos os tiles pertencentes ao menor nível de resolução possuem uma imagem associada, enquanto os tiles dos níveis de maior resolução podem estar vazios sem nenhuma imagem associada. Isto ocorre porque no processo de construção da estrutura em multiresolução um tile de maior resolução só possui imagem se a sua representação num nível de menor resolução causar uma grande perda de informação visual, caso contrário apenas a imagem do nível de menor resolução é armazenada. A vantagem de desse tipo de estrutura é que o acesso aos tiles é em tempo linear. E desvantagem é que há perda de espaço de memória já que tiles que não tem imagem não são destruídos. A segunda estrutura de dados o nível de menor resolução é representado por uma matriz onde cada elemento desta matriz representa uma quad-tree. Cada quad-tree sua raiz representa um tile da imagem em menor resolução e os níveis posteriores representa este mesmo tile em resoluções crescentes a medida que o nível aumenta (ver figura2). A vantagem desta abordagem é que ocupa menor espaço no processo de armazenamento. E a desvantagem é que o acesso aos tiles mais lento que na estrutura anterior, pois o percorrimento em arvores não pode ser feito em tempo linear.

1.1.4 - Armazenamento em Disco

   Os testes de desempenho serão realizados utilizando-se duas formas diferentes de armazenar as estruturas de dados apresentadas na seção anterior. Os arquivos de disco de ambas estruturas de dados terão a mesma estrutura de Header. A diferença de armazenamento ocorrera no momento de armazenamento das imagens dos tiles. Na primeira estrutura de dados as imagens serão armazenadas por nível de resolução, enquanto que na segunda estrutura de dados os tiles são armazenados segundo seu parentesco na quad-tree, isto é, as imagens dos tiles irmão sempre são armazenadas juntas.