Mais

Qual é o formato binário de ROIs ENVI (Classic)?


Sou um Pythonist em um escritório cheio de usuários ENVI / IDL. Eu criei algumas ferramentas para ajudar a preencher essa lacuna, mas um grande obstáculo são os arquivos ENVI Classic .roi, que meus colegas usam muito.

Posso facilmente importar ROIs ENVI 5 para Python, já que o formato baseado em texto é fácil de analisar. No entanto, não tenho um bom senso para o formato binário dos arquivos ENVI Classic .roi, que constituem a maior parte do intercâmbio de dados em meu grupo. Alguém tem algum código que lê ou grava esses arquivos, ou alguma ideia de como fazer isso?

É um tanto entediante iniciar o ENVI 5 toda vez que quero ir e voltar - prefiro resolver o problema na origem, se possível.


Não sou especialista em python, mas isso deve ser relativamente fácil de fazer se você já estiver escrevendo scripts que podem analisar, ler e gravar arquivos ASCII padronizados.

De acordo com a Harris Geospatial Solutions, o atual desenvolvedor do ENVI, os arquivos de imagem binários ENVI (descritos aqui) devem consistir no arquivo binário e um arquivo de cabeçalho ASCII (definido com exemplo aqui). Para ler um arquivo de imagem ENVI, você precisará analisar o cabeçalho ASCII e acessar o tipo de dados (inteiro, flutuante, assinado / não assinado, etc.), número de bandas, o intercalamento (banda sequencial, banda intercalada por- pixel ou faixa intercalada por linha), ordem de bytes e qualquer outra informação de dados pertinente. Dê uma olhada na descrição do formato do arquivo de cabeçalho e no exemplo vinculado acima.

Agora que você sabe quais pedaços do binário devem ser lidos por vez, em que ordem estão e a quais bandas pertencem, você está pronto para ler os dados da imagem.


Assista o vídeo: ENVI Masking (Outubro 2021).