CPI-Z

Déconvolution aveugle avec AstroSurface ?

Recommended Posts

Il y a 17 heures, Astrowl a dit :

L'idéal serait de capturer la psf à chaque prise de vue utilisée dans l'empilement, puisque potentiellement la psf change d'une image capturée à l'autre, car elle dépend de la turbulence. Tu pourrais alors deconvoluer chaque image avant stack.

 

Il y a quelques années j'avais fait une déconvolution par PSF générée en interne et ce pour une série d'images planétaires.

Pour ensuite les additionner et traiter comme traditionnellement.

Le résultat était tout simplement affreux !

Alors qu'en comparaison la même PSF interne, elle apportait un petit plus si appliquée après empilement...

Je pense que ce mauvais résultat de la déconvolution sur des images individuelles assez bruitées (comme souvent), c'est contre productif. Et on explose en temps de calcul.

 

Lucien

Edited by Lucien

Share this post


Link to post
Share on other sites
il y a 28 minutes, Lucien a dit :

Alors qu'en comparaison la même PSF interne, elle apportait un petit plus si appliquée après empilement...

Je pense que ce mauvais résultat de la déconvolution sur des images individuelles assez bruitées (comme souvent), c'est contre productif. Et on explose en temps de calcul.

 

Théoriquement si tu peux générer la psf de chaque image, ca ne peut être que mieux, elle prendra en compte toutes les déformations par rapport a l'image ideale. Mais ca c'est la théorie, dans les faits c'est impossible, mieux vaut comme tu le dis appliquer une psf moyenne a l'image empilée.

Share this post


Link to post
Share on other sites

Un exemple concret pour les sceptiques

La brute d'empilement

6-100.tif

6-100.png.de36ed95785cd9278b308b09d5f94fd6.png

 

Test sur la couche verte :

6-100_c2.tif

6-100_c2.png.aaec3010922b09e3a10e306e02d280ae.png

 

Deconv sur masque construit à partir de l'image Sharpen

masque.tifmasque.png.639474deca1557e2241572ace37130ff.png

 

Capt-1.PNG.ff4526fa6b6dc8c9ba7b81370d710993.PNG

 

Capt-2.PNG.17345dc791725572bfb11d989da3be98.PNG

 

psf "nettoyée + crop"

psf_6-100_c2_crop.tif   psf_6-100_c2_crop.png.1dcf5d62c96f0108f0f3c60906264fb9.png

 

Résultat :

Capt-3.PNG.627d70f5483b835e088be7abb868d1de.PNG

 

Capt-4.PNG.7eeb8ba0be91dd782aec0f4228dca442.PNG

 

dec_6-100_c2_67.tif

dec_6-100_c2_67.png.bf1a4b3a94f334ae0aca463ba05b51cf.png

 

et la finale avec FitsWork  FFT courbe 2D + réduction du fond AstroSurface

dec_6-100_c2_67_FW+fond.tif

65884ed2831b8_dec_6-100_c2_67_FWfond.png.5868b37b966f17f4aa1146622675ad29.png

 

Vous pouvez directement produire votre finale avec vos outils à partir de la brute couche verte en tif 16bits

 

Ma version Sharpen avec AstroSurface

6-100_c2_SH.tif

6-100_c2_SH.png.718a384eaca10bd444445d634393985e.png

 

Mon analyse :

- la méthode de déconvolution à partir du masque fonctionne sur une brute d'empilement

Les inconvénients :

- toujours le bruit résiduel

- ne fonctionne pas sur une image unique brute de capture car trop bruitée, cela implique de passer par un empilement d'un nombre minimum d'images

- influencée par la construction du masque

- influencée par les choix du nettoyage de la psf

- apporte peu ou rien par rapport aux autres méthodes avec un excellent télescope si les conditions atmosphérique sont bonnes.

 

CPI-Z

 

Edited by CPI-Z

Share this post


Link to post
Share on other sites

Un second exemple avec la couche bleu qui est forcément plus mauvaise !

Et comme il y a une étoile dans le champ, utilisation de cette psf par crop

6-100_3.tif

6-100_3.png.98f73b61384f0b44c7e002bec14eeee0.png

 

Choix 1 du nettoyage du fond du crop psf

pe_6-100_3.tif    pe_6-100_3.png.2dd289665a074d74d58d274533f77d6e.png

 

bleu-1.PNG.ffb9b558b94b2a0932d004d7982325ae.PNG

 

bleu-2.PNG.e00631444e3b208203042b3e7ed6a365.PNG

 

Choix 2 de nettoyage du fond du crop psf

pe_6-100_3a.tif   pe_6-100_3a.png.ed1737489f8bbcf711fee23d98aea4a8.png

 

bleu2-1.PNG.f41245b2805d4e83b2bdba049e3609f4.PNG

 

bleu2-2.PNG.4936321cad96cb71b05ec86d297b6811.PNG

 

Résultat 1 après FitsWork  FFT courbe 2D + réduction du fond AstroSurface

 

dec_6-100_3_65_FW.tif

dec_6-100_3_65_FW.png.74dfbff705b2006bae7aaad0c5a0de30.png

 

Résultat 2 après FitsWork  FFT courbe 2D + réduction du fond AstroSurface

dec2_6-100_6.tif

dec2_6-100_6.png.c3947aa033d658a649d06862963265b9.png

 

Ma version "classique" :

6-100_3_SH.tif

6-100_3_SH.png.08e954005e547c98d233cb0e199c5614.png

 

Là au moins la déconvolution apporte un plus puisque au moins les 2 taches claires dans la zone du pôle inférieur ressortent :).

 

CPI-Z

 

 

Edited by CPI-Z
  • Haha 1

Share this post


Link to post
Share on other sites

Ce que je ne comprends pas c'est pourquoi la "re"convolution du masque avec la psf trouvée (mais pas encore "nettoyée + crop") ne redonne pas du tout l'image de départ, ce qui devrait être le cas pour une vraie déconvolution.

Quelle est donc l'opération exacte effectuée par la "déconvolution Wiener" d'Astrosurface, quand les curseurs sont pareillement en bout de course  ?

alx.

Share this post


Link to post
Share on other sites
Il y a 5 heures, alx a dit :

Ce que je ne comprends pas c'est pourquoi la "re"convolution du masque avec la psf trouvée (mais pas encore "nettoyée + crop") ne redonne pas du tout l'image de départ, ce qui devrait être le cas pour une vraie déconvolution.

Quelle est donc l'opération exacte effectuée par la "déconvolution Wiener" d'Astrosurface, quand les curseurs sont pareillement en bout de course  ?

alx.

OUI cela devrait fonctionner, ... si nous étions dans le cas de déconvolution / convolution "pures".

Mais dans le cas général, ce type d'algo "pures" ne fonctionnes pas du tout à cause du bruit. Les algos utiles ont toujours un paramètre de régularisation. Coté théorique des FFT je suis pas en mesure de te l'expliquer.

En résumer, selon le type d'algo cela fonctionne plus ou moins bien.

 

Une autre propriété de la déconvolution :

deconv(A) par (B) = (C) alors deconv(A) par (C) = (B)

Un autre algo, en images, qui comme tous a ses limites de calcul :

6588ad2f04eda_cran-1.PNG.145039386523debc2208ea9e3f688511.PNG

 

6588ad333d3ad_cran-2.PNG.f9ee5894eae5c012354b90ca7de5d9e4.PNG

 

6588ad37b3c16_cran-3.PNG.ca96a560e503b9b62457c256bb254cd5.PNG

 

6588ad3c295ee_cran-4.PNG.f499a91e1dc03bbcf29dac46bacc8a9f.PNG

 

Le masque est bien ici retrouvé, mais avec quelques artefacts et imprécisions.

Comme quoi l'algo utilisé a aussi son influence dans tout ce qui est "déconvolution", et ils ne sont pas tous égaux.

 

CPI-Z

 

Share this post


Link to post
Share on other sites
Il y a 11 heures, CPI-Z a dit :

OUI cela devrait fonctionner, ... si nous étions dans le cas de déconvolution / convolution "pures".

Mais dans le cas général, ce type d'algo "pures" ne fonctionnes pas du tout à cause du bruit. Les algos utiles ont toujours un paramètre de régularisation. Coté théorique des FFT je suis pas en mesure de te l'expliquer.

En résumer, selon le type d'algo cela fonctionne plus ou moins bien.

A ma connaissance, une "déconvolution Wiener" est plus simple que les autres types de déconvolutions qui nécessitent un processus itératif de régularisation pour assurer la convergence. Dans la déconvolution Wiener,  le filtre "déconvolueur" (filtre inverse du filtre de convolution) a une expression analytique explicite avec un seul paramètre qui est le SNR.

Ce serait intéressant de connaître la signification  (@Lucien ?) des paramètres "noise factor" et "lightness" dans l'outil de déconvolution Wiener d'Astrosurface.

 

Edited by alx

Share this post


Link to post
Share on other sites

En tous les cas avec ImageJ cela fonctionne, sauf que pour la convolution le format de l'image doit-être d'une puissance de 2 (ici choix 512x512)

 

La déconvolution:

conv(jup) / (masque) = psf          mais ici la psf est excentrée comme quoi la version déconvolution Wiener d'astrosurface est plus agréable de ce coté là.

Capt2.PNG.abd730aa8fcfc6c9738070a8a11ce21a.PNG

 

La convolution Inverse Filtering (pure) dans ImageJ

(psf) ** (masque) = conv(jup)          conv(jup) est retrouvée mais excentrée puisque la psf retrouvée par déconvolution était excentrée

Capt3.PNG.87574ad3e285e8cfafa9cbc9c1047e73.PNG

 

Capt4.PNG.a51d4642e17c94fd7274983be901c30b.PNG

 

Par contre dans astrosurface je n'ai pas trouvé un outil de convolution Wiener similaire à celui de la déconvolution Wiener.

Et l'outil de conv / deconv d'astrosurface ne fonctionne pas ici sur cet exemple ... peut-être le calcul se fait bien en 32 bits mais il n'y a pas de bouton "lightness" facteur de réduction de l'intensité pour que la plage des dynamiques de l'affichage  rentre dans du 16 bits, comme dans l'outil "Déconvolution Wiener" d'astrosurface.

Capt5.PNG.b3e8b29296ca9e6ba167811ff4cab0f5.PNG

 

CPI-Z

 

Edited by CPI-Z

Share this post


Link to post
Share on other sites
Le 25/12/2023 à 10:34, alx a dit :

Dans la déconvolution Wiener,  le filtre "déconvolueur" (filtre inverse du filtre de convolution) a une expression analytique explicite avec un seul paramètre qui est le SNR.

Ce serait intéressant de connaître la signification  (@Lucien ?) des paramètres "noise factor" et "lightness" dans l'outil de déconvolution Wiener d'Astrosurface.

A mon avis SNR (Signal Noise Ratio) et "Noise factor", ça doit être la même chose. L'autre élément qui peut être défini c'est la PSF et sa taille.

Share this post


Link to post
Share on other sites

Bonsoir,

Lightness c'est un simple réglage de luminosité ou de Gain ce qui revient au même.

Pour le Noise Factor le mieux c'est de chercher dans wiki la formulation de la déconvolution Wiener.

 

On voit que en gros ça joue sur la force d'application de la déconvolution.

Lucien

 

Edited by Lucien

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



  • Similar Content

    • By Bohns
      Bonsoir à toutes et tous 
       
      J’ai perdu un partie de la mobilité de mes cervicales et la micromotricité fine de ma main droite suite à mon AVC survenu il y a 3 ans.
      J’ai acquis d’occasion un Mewlon 210 en novembre 2023, que j’utilise en lunaire et planétaire visuel et photo. Lorsque les cibles sont hautes dans le ciel (ce fut le cas pour Juju l’hiver dernier), toute contorsion m’est impossible et je ne peux pas utiliser son superbe chercheur-poignée.
      Je me suis d’abord rabattu sur un Telrad avec son miroir d’angle. C’est bien, c’est économique, ça fait globalement le taf, mais c’est très loin de la qualité que peut délivrer le chercheur-poignée, et surtout, ça n’évite pas certaines positions devenues pénibles pour moi.
       
      J’ai un renvoi coudé photo pour la macro que je n’utilise plus car j’ai vendu le boîtier sur lequel il se montait. Il grossit 1,25x ou 2,5x et permet d’ajuster très finement la mise au point par rotation hélicoïdale de l’oculaire.
       
      J’ai donc demandé à Vincent, d’Azur 3D Print, d’imprimer un adaptateur qui permet de loger l’éclairage du réticule, qui autorise la mise au point du chercheur (rotation de la molette et glissement du support avec l’allongement qui en découle), et qui soutient le porte-à-faux du renvoi coudé macro.
      Le principe et le visuel 3D furent assez vite posés. Après quelques échanges et un dernier ajustement suite à une première impression perfectible, la deuxième (et dernière) impression fut la bonne.
       
      Et voilà ce que ça donne :
       


      J’ai pu très finement aligner mon chercheur avec le tube sur un poteau électrique; le grossissement x2,5 a d’ailleurs été très bénéfique. La mise au point du chercheur reste très fluide, et le réglage fin par la rotation de l’oeilleton du renvoi apporte un vrai plus.
       
      Je suis très content et tiens à partager avec le forum cette satisfaction qui est due à l’écoute attentive, au professionnalisme et à l’efficacité de Vincent. Je pense que désormais, mon Telrad restera sur mes lunettes qui n’ont pas un bon chercheur comme celui des Mewlons 
       
      Merci à lui.
       
      Cordialement,
      Stef.
    • By Christophe H
      Bonjour,
       
      Pour le CP, j'ai acquis une Caméra Apollo-M MAX PRO (IMX432) Monochome pour son capteur CMOS à gros photosites (9x9 µm).
      Au début, je n'ai pas compris pourquoi il y avait un chauffage antibuée. Chauffer et refroidir en même temps, ça semblait bizarre.
      En fait, non, quand on la met en refroidissement, ça fait de la buée. Du coup, il faut mettre le chauffage à fond pour faire partir la buée, on peut ensuite réduire la puissance de chauffe une fois la buée partie. Ca se voit comme le nez au milieu de la figure, en particulier quand je fais des flats.
       
      Pour illustrer :

       
      Bonne journée
       
    • By aeropic
      Hello les astram,

      Je précise tout de suite, l'idée n'est pas de moi, je l'ai trouvée sur une video Youtube, mais voici une façon très simple de fabriquer un masque de Bahtinov adaptable à tout diamètre depuis les gros Dobson jusqu'aux objectifs d'APN.
      Il suffit de deux bouts de toile de moustiquaire cousus à 45°, d'un seau en plastique ou tout autre système de fixation.
      L'avantage c'est que la trame est très fine et qu'en conséquence le masque génère des aigrettes de diffraction impressionnantes de netteté. Par ailleurs, pour les APN, pas beaucoup d'occultation donc ça reste assez lumineux.

      Tout est ici, bonne couture !
       
    • By Bricoleur
      Bonjour,
      J'ai souvenir d'un site ou l'on "voyait" quel était le meilleur moment de l'année pour viser un objet.
      On pouvait également préparer son cadrage, sous réserve d'avoir entré les paramètres focal/capteur.
      Peut-être un filtrage par magnitude ou taille des objets était possible.
      C'était en anglais, fond sombre.
      Une idée de ce fameux site ?
      Merci

    • By Bricoleur
      Désolé pour le doublon, le Astrosurf me retournait une page "Bad gateway".
      A effacer...
       
       

  • Upcoming Events