Como o empilhamento funciona (e por que mais frames nem sempre é melhor)

Empilhar não é tirar a média de fotos. É um argumento de relação sinal/ruído com modos de falha específicos, e adicionar frames deixa de ajudar.

Pergunte por que empilhamos astrofotografias e normalmente vão dizer “para reduzir o ruído”. É verdade e ajuda pouco. Não diz quantos frames você precisa, por que a sua pilha de 200 parece pior que a pilha de 60 de outra pessoa, ou por que adicionar mais uma hora às vezes não muda nada.

O argumento em si é curto, e depois que você o entende a maioria das decisões de empilhamento sai dele.

Sinal soma. Ruído não.

Aponte o telescópio para uma nebulosa e faça uma exposição. Cada pixel recebe um certo número de fótons do céu. Esse número não é fixo: a chegada de fótons é aleatória, e a contagem varia de exposição para exposição em aproximadamente a própria raiz quadrada. Colete 100 fótons e a variação entre frames é de uns 10. Colete 10.000 e é de uns 100.

Agora empilhe N frames. O sinal, a contagem real de fótons do objeto, soma linearmente: N vezes mais. O ruído é aleatório e se cancela em parte, então cresce apenas como a raiz quadrada de N.

Então a relação sinal/ruído melhora em √N.

Essa relação explica a maior parte do que você vê:

  • 4 frames é duas vezes melhor que 1.
  • 16 frames é duas vezes melhor que 4.
  • 64 frames é duas vezes melhor que 16.

Cada dobro de qualidade custa quatro vezes mais frames. É por isso que a diferença entre 10 e 40 frames é dramática e a diferença entre 200 e 260 é invisível. Se a segunda decepciona, você não fez nada errado. Você adicionou 30 % a mais de frames por 14 % de melhoria, e 14 % está abaixo do que o olho percebe com confiança.

Para um salto visível a partir de uma pilha de 200 frames, precisa de uns 800.

É por isso que o ruído de leitura decide a duração dos subs

Uma segunda fonte de ruído não se comporta assim. Toda vez que o sensor é lido, a eletrônica adiciona uma penalidade fixa. Ela não depende da duração da exposição; um frame de 5 segundos e um de 500 pagam uma vez cada.

Então um dado tempo total de integração carrega ruído de leitura em proporção a em quantos frames você o divide. Noventa minutos em 540 subs de dez segundos pagam a penalidade 540 vezes. Os mesmos noventa minutos em 18 subs de cinco minutos pagam 18 vezes.

Esse é todo o argumento a favor de subexposições mais longas. É também por isso que um setup guiado se distancia de um telescópio inteligente em alvos fracos com o mesmo tempo total. O equipamento guiado não coleta mais luz. Ele lê o sensor trinta vezes menos.

A contrapressão é que subs longos precisam de bom rastreamento, e um frame de 300 segundos com rastros não vale nada. A duração certa é a mais longa que a sua montagem entrega de forma confiável, o que é uma questão mecânica, não de processamento.

O alinhamento é onde as pilhas se perdem

O argumento √N assume que cada frame contribui o mesmo sinal para o mesmo pixel. Isso exige que os frames estejam registrados, e é aqui que a maioria das pilhas decepcionantes falha.

Os frames se movem entre exposições: deriva da montagem, refração perto do horizonte, flexão e, em qualquer montagem altazimutal (o que inclui todo telescópio inteligente), rotação de campo. Ao longo de uma hora, frames do início e do fim podem estar rotacionados dezenas de graus entre si.

Um alinhamento que só lida com translação não dá conta, e falha em silêncio. Não aparece mensagem de erro, só uma pilha em que tudo está levemente borrado. Parece foco ruim ou seeing ruim, e as pessoas passam uma temporada perseguindo o problema errado.

Um registro adequado trabalha a partir das próprias estrelas. Constrói triângulos com as estrelas mais brilhantes de cada frame e os descreve pelas razões dos lados, que sobrevivem a translação, rotação e escala. Triângulos correspondentes votam em qual estrela corresponde a qual, um ajuste tolerante a outliers descarta os votos discordantes e uma passada de refinamento leva o resultado a precisão subpixel.

Esse último passo importa. Um erro consistente de meio pixel na pilha custa o mesmo detalhe que você perderia com um seeing um pouco pior.

Rejeição: a parte que remove o que a média não consegue

A média lida com ruído aleatório. Não lida com o que não é aleatório: satélites, aviões, raios cósmicos, faróis de carro varrendo o campo.

Faça a média de 100 frames onde um tem um rastro de satélite e o rastro ainda está lá com 1 % de intensidade. É fraco, mas visível contra um céu escuro, e sobrevive ao esticamento.

A rejeição o remove olhando ao longo da pilha em cada pixel e descartando valores que não pertencem ali. Os métodos diferem no que “não pertencem” significa, e a escolha entre eles não é arbitrária.

Sigma clipping pega a média e o desvio padrão em cada pixel e descarta valores além de um limiar. Funciona bem e é o padrão por um bom motivo, mas assume que cada frame amostra a mesma distribuição.

Sigma clipping winsorizado puxa os outliers em direção ao grosso em vez de removê-los. É mais seguro em pilhas rasas, onde estimar um desvio padrão a partir de oito amostras e depois descartar valores tende a jogar fora sinal real.

Linear-fit clipping faz uma pergunta diferente. Ordena os valores de cada pixel ao longo da pilha e ajusta uma reta. Uma dispersão suave, do tipo produzido pela transparência mudando ao longo da noite, é esperada por esse modelo e não custa nada, enquanto um rastro de satélite continua sendo um valor longe da reta.

Essa diferença importa mais do que parece. Quando nuvens altas chegam, ou o alvo desce em direção à cúpula de luz, os frames de fato diferem. A dispersão é dado real, não ruído. O sigma clipping vê os frames nas pontas da faixa como outliers e começa a descartá-los, e os da ponta escura costumam ser os frames mais limpos da sessão. Você perde seus melhores dados para um método que assumiu que estavam errados.

O que observar é quanto o nível de céu por frame deriva. Se é estável, sigma clipping é o certo. Se se move mais que alguns pontos percentuais, um ajuste linear se sai melhor. O Akastroid mede a deriva e troca automaticamente acima de cerca de 8 %.

Pilhas rasas precisam de tratamento diferente

Com oito frames você não consegue estimar uma distribuição. Qualquer método de rejeição está trabalhando com poucas amostras, e um clipping agressivo vai remover sinal real enquanto afirma remover outliers.

Abaixo de uns oito frames, média simples ou uma mediana costuma ser a escolha mais segura. Entre oito e quinze, winsorizar. Acima disso, o clipping de verdade fica seguro.

É uma falha fácil de não notar. Rejeição agressiva numa pilha rasa produz uma imagem que parece limpa e à qual falta, silenciosamente, detalhe fraco. Não parece quebrada, só levemente vazia, e nada na tela diz por quê.

Quando mais frames deixam de ajudar

Há três casos em que a próxima hora não compra nada.

Ruído de leitura. Com subs muito curtos, o piso de ruído é definido pela leitura, não pelos fótons do céu. Empilhar ainda ajuda, mas você está lutando contra um custo fixo que mais frames não removem. Subs mais longos removem.

Céu, num alvo fraco. Sob céus claros o fundo domina, e as regiões externas fracas do seu alvo podem nunca subir acima dele. A relação sinal/ruído ainda melhora como √N, mas √N de mal detectável ainda é mal detectável. Céus mais escuros ou filtros de banda estreita mudam isso. Mais tempo não.

Alinhamento. Se o registro deixa erros de meio pixel, adicionar frames adiciona mais dados levemente desregistrados. A pilha fica mais suave e não mais nítida. Confira isso antes de culpar o céu.

Uma resposta prática

  • Duração do sub: a mais longa que a sua montagem rastreia com confiança. Isso define o ruído de leitura, e o ruído de leitura domina os alvos fracos.
  • Quantidade de frames: pense em fatores de quatro. Para uma melhoria visível, planeje quadruplicar.
  • Registro: precisa lidar com rotação em qualquer montagem altazimutal.
  • Rejeição: adapte à profundidade da sua pilha e à estabilidade da sua noite.
  • Conheça seu limite: ruído de leitura, brilho do céu ou alinhamento. Adicionar frames só ajuda nos dois primeiros, e devagar.

Nada disso exige matemática além de √N, mas explica por que uma pilha que não te agradou saiu do jeito que saiu, o que costuma ser mais útil do que mais um controle deslizante.

Ler o original em inglês · Também em Čeština · Dansk · Deutsch · Ελληνικά · Español · Suomi · Français · Hrvatski · Magyar · Italiano · 日本語 · Norsk bokmål · Nederlands · Română · Slovenčina · Slovenščina · Srpski · Svenska · Українська · 繁體中文

Teste com os seus próprios dados

O Akastroid faz tudo o que este guia descreve automaticamente, e mostra o que fez.

Baixar o Akastroid (grátis)