Visão geral: para blocos ou .vrt, ou ambos?

10

Ao usar o para mosaicos de grandes coleções de imagens, é melhor adicionar visões gerais (pirâmides) às rasters individuais ou ao final .vrt, ou a ambos? (Onde "melhor" significa encontrar o ponto de equilíbrio entre não usar mais armazenamento do que o necessário e, ao mesmo tempo, proporcionar uma experiência tranquila para usar e navegar na imagem final.)

Matt Wilson
fonte
eu quero perguntar qual é a razão de usar mosaico
Luka tumba

Respostas:

8

Depende principalmente de qual é a escala mínima para mostrar sua camada de imagem.

Criar visões gerais para rasters individuais é mais flexível quando você atualiza sua camada parcialmente. Basta excluir a imagem antiga e colocar uma nova imagem com visões gerais. Se você tiver visões gerais de construção para o .vrt, deverá criá-lo novamente após a atualização. No entanto, as visões gerais individuais não funcionam bem em pequena escala. Se suas imagens originais abrangem 10x10 km cada e você deseja mostrar na tela uma área de 100x100 km, o sistema deve abrir 100 arquivos individuais para ler as visões gerais. Se você criou visões gerais para o .vrt, existe apenas um arquivo para abrir e será mais rápido.

Você também pode usar um modelo híbrido: crie alguns níveis de visão geral interna (2 4 8) e crie um novo arquivo físico a partir de .vrt com tamanho de pixel da próxima visão geral (16). Crie visões gerais internas para a imagem subamostrada e, finalmente, combine tudo em um grupo dependente da escala. Quando as imagens individuais são alteradas para as mais novas, o arquivo de visão geral física geralmente não requer atualização, pois as alterações não são visíveis em letras pequenas.

Quando se trata da necessidade de espaço em disco, é o mesmo nos dois casos. Mas lembre-se de compactar suas visões gerais. Com imagens aéreas, você pode economizar mais de 90% do espaço em disco compactando as visões gerais com o método JPEG e a interpretação fotométrica.

Ao fazer sua pergunta, eu diria que cria visões gerais compactadas para o seu .vrt. É preciso a mesma quantidade de espaço em disco e a experiência de navegação será boa em qualquer escala. Lembre-se ainda do que escrevi sobre atualização.

user30184
fonte
a ideia híbrida é muito interessante! Estou curioso para saber por que um arquivo físico no nível 16. Isso oferece algo gdaladdo foo.vrt 16 32 64que não? ... também me ocorre: as visões gerais em mosaico e vrt podem ser desejadas nos casos em que os mosaicos individuais são acessados, bem como o mosaico virtual.
27515 Mathew
gdaladdo foo.vrt 16 32.64cria um arquivo físico, mas se você o criou gdaladdo foo.vrt 2 4 8antes, já possui um arquivo foo.vrt.ovr. Bem, o arquivo .ovr é realmente apenas um tiff e você pode renomeá-lo e criar níveis de visão geral manualmente com um novo arquivo .vrt que é um pouco complicado. Você quer dizer que você tem foo_1234.tif em um mosaico virtual all_foo.vrt, mas alguns usuários podem precisar acessar esse único tiff diretamente? Então você está certo, nenhum software pode adivinhar para ter uma visão geral de all_foo.vrt.ovr.
User30184 25/05
Ah, talvez você pretenda escrever 2 4 8 visões gerais para imagens individuais e 16 32 64 ... para o vrt. Excelente ideia mesmo.
User30184
sim para a 2ª resposta, 2 4 8 para blocos e 16 32 64 para vrt.
27515 Mathew
O problema que está sendo discutido é um que eu estou frequentemente tentando hackear e é constantemente causa de agonia. Eu tenho uma enorme quantidade de arquivos organizados em pastas de 10 km2. Para cada pasta, gero um vrt e adiciono visões gerais (2 4 8 16). Em seguida, agrego os arquivos vrt em um (gdalbuildvrt generate.vrt * .vrt). Criar uma visão geral para o agregado.vrt (32 64 128 256) é um problema. Eu suspeito que o gdalbuildvrt vá diretamente para os arquivos de origem, em vez dos arquivos ovr já criados ... Isso está correto? E se sim: existe uma solução alternativa?