# MipSmooth

## Abstrato

autor: Klaus Post (Sh0dan)
versão: 1.11
download: http://cultact-server.novi.dk/kpo/avisynth/mipsmooth.html
categoria: Suavizadores Spatio-temporal
requisitos:

- YV12 & YUY2 & RGB Colorspace
- Suporte ISSE
- Largura divisível por 4 para YV12 e por 8 para YUY2

## Descrição

Este é o MipSmoother - uma reinvenção de SmoothHiQ e Convolution3D. MipSmooth foi feito para habilitar suavizações em áreas de píxeis maiores de 3x3 (x3), para remover blocos e suavizar ruído de baixa freqüência. É minha esperança que quando este filtro for ajeitado será melhor que C3D para suavizar superfícies planas e gradientes. Isto deveria ser bom para cartuns/anime, mas realmente também ajuda muito bem em seqüências de filme.

## Sintaxe

Sintaxe básica: `MipSmooth` - todos os parâmetros são opcionais.

Sintaxe estendida:

`MipSmooth` (clip, optional arguments)

Há vários argumentos que controlam quanta suavização será aplicada:

preset = "MovieHQ" / "MovieLQ" / "AnimeHQ" / "AnimeLQ" / "VHS" / "Rainbow" / "Custom"

Veja a seção pré-fixada para mais informação.

    spatial = 5,
    temporal = 4,
    spatial_chroma =6,
    temporal_chroma =54,
    scenechange = 2.0

Todos os números são válidos na gama de 0 a 255 e isto define o percentual para cada modo de mistura.
Os limiares podem ser comparados aos de C3D, exceto percentuais mais altos suavizam muito menos que C3D.
As colocações padrões são bastante conservadoras, e só suavizam ligeiramente as superfícies.

"Temporal influence" é substituído por detecção de mudança de cena global, que desabilitará o processo temporal em qualquer direção. Use "show = true" para exibir os valores em cada quadro.

method = "strong" / "soft" / "supersoft" / "superstrong" - padrão: "supersoft"
Esta colocação controla quanto borrado é aplicado. As colocações fortes fazem o filtro ter um impacto maior, considerando que macio é mais suave. Em geral forte deve dar melhores resultados em anime e suave deve ser melhor para material filmado. SuperSoft / SuperStrong usa uma aproximação ligeiramente diferente e em geral produz menos artefatos. Estes dois são em geral um pouco mais macio que modos não-super.

downsizer = "reduce", "point", "bilinear", "bicubic", "lanczos" - padrão: "reduce"
upsizer = "point", "bilinear", "bicubic", "lanczos" - padrão: "bilinear"
Estes dois parâmetros controlam como os mapas de resolução mais baixa são criados. Pode não haver um impacto visual muito grande, ao usar "resizers" diferente. Experiências são bem-vindas!

scalefactor = 0.5
Esta opção fixa a escala de cada "mipmap" (*). Isto é quanto cada quadro é reduzido em cada repetição. A resolução original é multiplicada por este valor. Os valores utilizáveis são de 0.2 a 4.0, porém são recomendados só entre 0.4 e 1.5. Quando esta colocação é 1.0 nenhum borrado de espaço é feito, mas não é recomendado - use spatial = 0. Experimente com valores acima de 1.0 - eles podem ser úteis.
Isto afeta o raio do borrão. Quanto mais baixo é o fator de escala, maior o raio do borrão - e mais "crosstalk" (?) você terá.

* ver Informação de Fundo, mais abaixo.

    MipSmooth(downsizer="lanczos", upsizer="bilinear", scalefactor=1.5, method = "strong")

O escrito anterior produz suavização suave muito agradável, por exemplo, mas é muito lento.

weigh = true / false
Esta opção seleciona se "mips" devem ser pesados baseado em quanto borrado eles estão. O "mips" mais borrados são pesados como mais baixos. Esta opção é igual à "Média de Peso" em SmoothHiQ, ou matriz "suave" em Convolution3D.

Esta opção só tem efeito se o modo SuperMip for usado. Reduz a quantia de borrão quando ativada, assim pode ser usada para alcançar percentual mais altos sem artefatos.

show = true / false
Mostra a informação sobre a diferença de mudança de cena e as colocações usadas. Esta colocação não terá efeito em modo RGB24 - use RGB32 em vez!

storecustom = true / false
Isto armazenará as colocações usadas no registro. Para executar estes pré-fixos depois, use o parâmetro preset = "custom". Ele não se tornará automaticamente o parâmetro padrão.

## Pré-fixamentos

Pré-fixos são as colocações internas para o ajudar no início. Os nomes dos parâmetros não são casos sensíveis.

Todos os prefixados são carregados como valores padrões. Significa que ainda é possível afinar as colocações fixando os parâmetros individuais.

Por exemplo: MipSmooth(preset = movieHQ ", scenechange = 8) usará MovieHQ, mas com scenechange fixado em 8.

MovieHQ

Este pré-fixado é para filmes naturais em alta qualidade.

    Spatial: 4
    Temporal: 5
    Spatial Chroma: 5
    Temporal Chroma: 7
    Scenechange: 2.0
    Method: SuperSoft
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.85
    Weigh = true

MovieHQ2

Este pré-fixado é para filmes naturais em alta qualidade.

    Spatial: 2
    Temporal: 2
    Spatial Chroma: 3
    Temporal Chroma: 3
    Scenechange: 2.5
    Method: SuperSoft
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.75
    Weigh = true

MovieLQ

Este pré-fixado é para filmes naturais que precisam mais suavização, ter mais blocos e ruído removido.

    Spatial: 8
    Temporal: 7
    Spatial Chroma: 10
    Temporal Chroma: 8
    Scenechange: 3.5
    Method: SuperSoft
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.65
    Weigh = true

MovieLQ2

Este pré-fixado é para filmes naturais que precisam mais suavização, ter mais blocos e ruído removido.

    Spatial: 4
    Temporal: 4
    Spatial Chroma: 5
    Temporal Chroma: 5
    Scenechange: 3.5
    Method: SuperStrong
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.65
    Weigh = true

VHS

    Spatial: 9
    Temporal: 6
    Spatial Chroma: 10
    Temporal Chroma: 9
    Scenechange: 5.0
    Method: SuperStrong
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.60
    Weigh = true

AnimeHQ

Este é para remoção leve de blocos e restauração gradiente. Tem mais suavização espacial do que vídeo ordinário para ajudar a recriar superfícies gradientes e lisas.

    Spatial: 6
    Temporal: 8
    Spatial Chroma: 6
    Temporal Chroma: 8
    Scenechange: 5.0
    Method: SuperSoft
    Downsizer: Bicubic
    Upsizer: Bicubic
    Scalefactor: 0.60
    Weigh = true

AnimeLQ

Este é para material mais ruidoso com mais blocos e ruído.

    Spatial: 5
    Temporal: 5
    Spatial Chroma: 5
    Temporal Chroma: 7
    Scenechange: 5.5
    Method: SuperStrong
    Downsizer: Bilinear
    Upsizer: Bicubic
    Scalefactor: 0.5
    Weigh = true

Rainbow - arco-íris

Isto pode ajudar a remover arco-íris piscando. Veja isto em Doom9 para info e alternativas. Reduza "scalefactor" para mais remoção de arco-íris e mais borrado em croma.

    Spatial: 0
    Temporal: 0
    Spatial Chroma: 255
    Temporal Chroma: 255
    Scenechange: 2.0
    Method: SuperStrong
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.65
    Weigh = true

Custom - costume

Este lê as colocações que foram armazenadas no registro e as usa como padrões.
Se nenhuma colocação armazenada no registro houver, um erro será emitido.
A qualquer hora é possível usar "storecustom = true" que armazenará as colocações atuais no registro para serem usadas como parâmetros de costume.

## Exemplos & Truques:

Tente experimentar com suavização bem agressiva com baixos percentuais. Por exemplo:

    MipSmooth(spatial=2, temporal=2, method="superstrong", scalefactor=0.75, weigh=true)

Esta é uma colocação bem boa para material de alta qualidade, estabilizando a imagem e dando compressão muito melhor, retendo ainda uma quantia bem alta de detalhe. Estes modos são implementados como pré-fixados "MovieHQ2" e "MovieLQ2".

    MipSmooth(spatial=255, scenechange=0, method="soft")
    # Isto dará uma imagem bem suave - visto em alguns comerciais e óperas sabão.

    MipSmooth(spatial=255, scenechange=0, method="strong", scalefactor=0.65)
    # Isto suavizará muito a imagem, como um suave borrão gaussian.

    MipSmooth(spatial=255, scenechange=255, temporal=255, method="superstrong", scalefactor=0.6, weigh=false)
    # Isto também dará uma imagem muito suave com um borrão temporal.

Ao aparar com este filtro, use antes o parâmetro "align=true", disponível no AviSynth 2.5.3 e posterior. Isto dá na maioria dos casos uma leve acelerada.

## Informação de Fundo

"Mip" vem de "MipMap" que é um termo usado no mundo de gráficos 3D em tempo real e basicamente descreve uma versão amostrada de uma textura (superfícies bitmap de objetos 3D), usada quando o objeto está distante. MipMaps é sempre a metade do tamanho da imagem original.

O que MipSmooth faz é na verdade muito simples:

Pega o quadro fonte e cria três versões novas, cada uma com metade do tamanho da prévia. Isto é feito com ReduceBy2 ou um resizer selecionável. Estes quadros são todos escalados ao tamanho original com BilinearResize e comparados com o original e se a diferença estiver abaixo do percentual, a informação é usada para formar o píxel final.

O mesmo é feito para o prévio e o próximo quadro - e todos estes três quadros e os mipmaps borrados são usados para reconstruir cada píxel. O percentual é ajustado para aquelas imagens mais borradas sejam determinadas um percentual mais baixo que as versões mais aguçadas.

Supermip cria primeiro três quadros (supermips) de imagens espacialmente borradas e fazem uma suavização temporal nestes três quadros. Isto reduz grandemente os artefatos em "denoising / blurring" (supressão de ruídos / borrados) pesados.

## Melhoras Futuras Possíveis

- Número ajustável de mips.
- Exemplos de imagem em documentação.
- GUI.

`$Date: 2006/03/26 18:11:53 $ Portuguese translation by RoLon`