本站提供正體中文版。切換到正體中文本站提供简体中文版。切换到简体中文This site is available in English.View in Englishこのサイトには日本語版があります。日本語で表示이 사이트는 한국어로도 제공됩니다.한국어로 보기Diese Website ist auch auf Deutsch verfügbar.Auf Deutsch ansehenEste sitio web también está disponible en español.Ver en españolQuesto sito è disponibile anche in italiano.Visualizza in italianoEste site também está disponível em português.Ver em portuguêsDeze website is ook beschikbaar in het Nederlands.In het Nederlands bekijkenЭтот сайт также доступен на русском языке.Смотреть на русскомयह वेबसाइट हिन्दी में भी उपलब्ध है।हिन्दी में देखेंهذا الموقع متاح أيضًا باللغة العربية.عرض بالعربيةSitus ini juga tersedia dalam bahasa Indonesia.Lihat dalam bahasa IndonesiaBu site Türkçe olarak da mevcut.Türkçe görüntüleTa strona jest dostępna także po polsku.Wyświetl po polskuTrang web này cũng có phiên bản tiếng Việt.Xem bằng tiếng Việtاین وب‌سایت به فارسی هم در دسترس است.مشاهده به فارسی

Réduction des étoiles et gestion des étoiles : l'évolution des méthodes et un flux de travail en PixelMath

Étirement et phase non linéaire2021.01

Réduire les étoiles de façon adéquate permet de faire mieux ressortir le sujet de la prise de vue, surtout dans les régions denses en étoiles comme la zone de la Voie lactée, où, faute de traitement, un ciel constellé d’étoiles perturbe gravement les nébulosités. Cet article met en ordre les méthodes de réduction des étoiles, depuis les filtres d’érosion des premières années jusqu’à l’actuelle approche prédominante fondée sur l’image sans étoiles et sa mise en œuvre en PixelMath.

La méthode d’antan : réduction des étoiles par érosion (Erosion)

La toute première forme de réduction des étoiles reposait sur l’érosion (Erosion) : dans Photoshop on utilisait le filtre « Minimum », ou dans PixInsight l’Erosion, pour éroder les étoiles à l’intérieur d’une zone sélectionnée et les rendre plus petites. Pour faire les choses avec plus de soin, on l’associait à un masque de bords afin d’éviter d’éroder jusqu’au cœur des étoiles.

À vrai dire, à l’origine je réduisais peu les étoiles, car l’Erosion traditionnelle abîme souvent les étoiles (elle transforme par exemple les étoiles rondes en losanges, ou gâche les étoiles en diamant). Mais pour certaines cibles, comme la Nébuleuse de la Carène située dans la zone de la Voie lactée, aussi bon soit le masque d’étoiles, le résultat final conserve malgré tout une grande quantité d’étoiles qui perturbent les nébulosités, et il faut alors se résoudre à réduire les étoiles. C’est justement pour cela que le plus grand talon d’Achille de la réduction par érosion est son extrême sensibilité à la qualité du masque : si le masque est mal fait, des artéfacts apparaissent facilement au cœur des étoiles et dans leur pourtour.

Comparaison avant-après d’une réduction des étoiles d’antan, associée à un masque de StarNet++ (Nébuleuse de la Carène)

Le tournant : réduire les étoiles à l’aide d’une image sans étoiles

Le progrès des temps a peu à peu fait de la réduction des étoiles quelque chose qui se réalise d’un simple glissement de curseur, avec la possibilité de personnaliser quelle classe de taille d’étoiles réduire. Le point décisif est celui-ci : les gens ont commencé à se servir des outils de suppression des étoiles (comme StarNet++) pour réduire les étoiles, et pas seulement pour les supprimer. Arrivé en 2021, une fois tout transformé en scripts, c’est devenu encore plus commode, et le filtre Minimum de Photoshop ou l’Erosion de PixInsight n’étaient déjà plus guère en vogue.

Dans PixInsight est apparu un script de réduction des étoiles prêt à l’emploi : il n’utilise ni le filtre Minimum ni l’Erosion, mais atteint son but par la méthode qui associe StarNet++ à un Contour Mask.

Illustration d’une réduction des étoiles par script fondée sur StarNet++

J’en profite ici pour clarifier un point qu’il est facile de mal comprendre : l’option « Create star mask » de StarNet++ produit en réalité non pas un masque, mais les étoiles supprimées elles-mêmes. Si vous utilisez PixelMath de PixInsight ou les calques de Photoshop pour rajouter ce star_mask sur l’image déjà privée d’étoiles, vous obtiendrez quelque chose de quasiment identique à l’image originale, non débarrassée de ses étoiles.

La « star mask » que produit StarNet++ est en réalité les étoiles elles-mêmes ; en la rajoutant, on peut restaurer l’image

Après la réduction, les étoiles deviennent-elles toutes de la même taille ?

Un compagnon de passion a un jour affirmé qu’après la réduction des étoiles, la taille des étoiles devient identique pour toutes. Est-ce vraiment le cas ? Nullement — la taille d’une étoile réduite dépend surtout de sa taille d’origine et du masque de réduction des étoiles.

Dans la pratique, chaque fois que l’on réduit les étoiles on choisit le type d’étoiles à rapetisser (surtout les petites et moyennes) et l’on confectionne un masque approprié, ajusté à la taille des étoiles ; ainsi, après la réduction, la taille des étoiles peut encore différer, seulement on peut deviner, au pourtour des étoiles, qu’une réduction a été appliquée. Prenons pour exemple l’image agrandie de SL 17 : c’est le résultat de deux réductions au total (jusqu’ici je n’en ai jamais fait plus de deux).

Après la réduction, la taille des étoiles diffère encore et l’on distingue au pourtour les traces de la réduction (SL 17)

Vue agrandie de SL 17 montrant l’effet de deux passes de réduction

Réduire les étoiles avec l’approche de l’image sans étoiles donne un résultat d’étoiles plus naturel

Comparaison locale avant-après de la réduction des étoiles

Mise en œuvre de la réduction des étoiles en PixelMath (état non linéaire)

Réduire les étoiles à partir d’une image sans étoiles peut se réaliser avec précision dans PixInsight à l’aide de PixelMath. Les étapes, décomposées, sont les suivantes :

  1. Préparez le fichier image A ainsi que son image sans étoiles, le fichier B.
  2. Avec STF associé à HistogramTransformation, abaissez en même temps la luminosité de A et de B (déplacez le midtone vers la droite).
  3. Inversez A et B après en avoir abaissé la luminosité (clavier Ctrl+I).
  4. Divisez le A inversé par le B inversé pour obtenir l’image des étoiles inversée C (PixelMath).
  5. Multipliez C par l’inverse de B pour obtenir l’inverse D de l’image aux étoiles réduites (PixelMath).
  6. Inversez D pour revenir à l’image normale aux étoiles réduites (Ctrl+I).

Parmi ces étapes, les étapes 5 et 6 sont en réalité exactement la formule du screen blending mode. Si vous souhaitez une réduction plus marquée, vous pouvez abaisser encore davantage la luminosité de A et de B à l’étape 2. Une formule de principe :

afterimage = ~((~mtf_low(beforeimage) / ~mtf_low(starless)) * ~starless)

Illustration des étapes décomposées de la réduction des étoiles avec PixelMath

La même méthode peut aussi se reproduire dans Photoshop ou Affinity Photo ; la différence tient à ce qu’on la réalise au moyen de calques, et les modes de fusion (blending mode) entre les calques diffèrent aussi légèrement.

Reproduction de la réduction des étoiles de PixelMath avec les calques de Photoshop, le mode de fusion de chaque calque étant annoté

La clé : les étoiles doivent être extraites correctement par « division inversée »

Beaucoup traitent leur image par la voie de l’image sans étoiles mais échouent, au bout du compte, à rajouter les étoiles, et le nœud du problème réside dans la manière dont les étoiles ont été extraites.

Si l’on se contente de soustraire l’image sans étoiles de l’image originale pour obtenir les étoiles, puis que l’on rajoute ces étoiles, le résultat consiste souvent en des étoiles ternes et à la couleur incorrecte, qui donnent l’impression qu’on a baissé l’opacité du calque. La raison en est qu’une partie du contenu des étoiles est restée sur l’image sans étoiles, si bien que la soustraction n’a pas réussi à extraire les étoiles en totalité.

La meilleure façon est d’obtenir les étoiles complètes par division inversée ; une fois l’image sans étoiles entièrement traitée, on remet les étoiles en place par multiplication ou par multiplication inversée (screen blending mode).

Comparaison de la différence entre extraire les étoiles par soustraction (en haut) et par division inversée (en bas)

Linéaire et non linéaire : les formules d’extraction et de remise en place diffèrent

Après que RC Astro a lancé StarXTerminator (SXT), le champ d’application de la suppression des étoiles s’est étendu de l’état non linéaire jusqu’à l’état linéaire. Toutefois, entre l’état linéaire et l’état non linéaire, les étapes et les formules pour extraire et remettre en place les étoiles restent légèrement différentes, un point qui est souvent négligé.

État non linéaire (l’image a déjà subi un fort étirement, de sorte que les pixels ne conservent plus leur relation linéaire d’origine) :

  • Extraire les étoiles : dans SXT, cochez « Unscreen Stars », ou, après la suppression des étoiles, obtenez les étoiles avec la formule de division inversée ~(~Original_Nebula / ~Starless_Nebula).
  • Remettre les étoiles en place : dans PixelMath, utilisez la formule de multiplication inversée ~(~Nebula * ~stars), qui est aussi la formule mathématique du Screen Blending.

État linéaire (après l’intégration et avant le fort étirement, lorsque les pixels présentent leur relation linéaire d’origine) :

  • Extraire les étoiles : dans SXT, ne cochez pas « Unscreen Stars ».
  • Remettre les étoiles en place : dans PixelMath, utilisez la formule d’addition Nebula + stars.

Comparaison des formules d’extraction et de remise en place des étoiles dans l’état linéaire par rapport à l’état non linéaire

Une fois que vous savez clairement dans quel état se trouve votre image et que vous utilisez les formules correspondantes pour extraire et remettre en place les étoiles, vous pouvez éviter le problème des étoiles qui, après avoir été remises en place, s’assombrissent, changent de couleur ou échouent complètement.