Nebulium

Le Clavius de Wilexpel revisité.

Messages recommandés

Merci VL

"Fonction FFTD ?"

C'est cette phase bien utile pour un joli lissage du rendu après accentuation (par rabotage de la bosse, comme montré à Claude dans le fil précédent) qui me fabriquait les rayures, à cause des bords de l'image bourrés d'oscillations par la phase précédente de déconvolution.
En lunaire, les bords de l'image foutent la m...e à chaque passage chez Fourier, il faut donc les rogner à chaque phase.
L'idéal serait de les "gausser", y compris dans les angles, il faudrait que je trouve un moyen simple en 16 bits, ça doit bien exister tout fait ailleurs que chez toshop !

Partager ce message


Lien à poster
Partager sur d’autres sites
Polo : "william ,c'est pas paul,c'est jean!"
quel étourdi je suis, merci Jean, non cette fois-ci merci Polo !

Partager ce message


Lien à poster
Partager sur d’autres sites
quote:
Au fait je crois me souvenir que tu nous avais annoncé pour ce mois de janvier des avancées en matière de traitement.

J'ai ouvert le site srapplis.org le 26 janvier et je vais l'alimenter à raison d'un article par semaine. Dans quelques temps, je rédigerai un article sur les artefacts (dans l'image, en bord d'image et dans les coins) et ceux qui souhaitent tester leurs images brutes (.avi, .ser, .mat, .png) pourront les joindre à l'article (ou les retraiter eux-mêmes via les algorithmes accessibles dans l'environnement Linux/Julia/Juno). Je commence par la "turbulence" sous-marine parce que ça me permet de traiter des images très déformées mais les turbulences terrestre et céleste suivront avec le même type d'algorithmes.

quote:
En lunaire, les bords de l'image foutent la m...e à chaque passage chez Fourier, il faut donc les rogner à chaque phase.
L'idéal serait de les "gausser", y compris dans les angles, il faudrait que je trouve un moyen simple en 16 bits, ça doit bien exister tout fait ailleurs que chez toshop !

C'est compliqué de vouloir faire cela à partir d'une seule image et en bout de chaîne. La figure 2 du lien suivant est une approche (parmi d'autres) qui permet d'obtenir une image sans artefact. Les outils mis en œuvre (modèle variationnel, analyse de composantes principales, ...) feront aussi l'objet d'articles et seront traduits en algorithmes (voir Algorithm 1 et Algorithm 2 dans le lien suivant) : http://arxiv.org/pdf/1401.4221.pdf

[Ce message a été modifié par ms (Édité le 03-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Hello

=> ms Merci pour toutes ces informations

Je vais suivre avec le plus grand intérêt mais dans le cadre de mes modestes capacités, l'évolution de ton site "srapplis"
(être un peu patient pour l'accès - pour l'instant-) dont la présentation est remarquable.
J'espère arriver à approcher Julia avec Win7 et quelques lignes de commandes...
D'ores et déjà, après une lecture attentive (euh, des images, le reste ???) de la communication des Chinois, j'ai cru comprendre
que d'ici peu, en tenant à main levée un (bon!) smartphone derrière un oculaire, avec une connexion wifi + net vers "srapplis",
on verra s'afficher sur l'écran une image nickel de la Lune et des planètes. Super ! Un grand merci

=> Jp
Gogo ne m'a rien signalé de correspondant à ma préoccupation du moment avec "D Station".
Il faudrait m'en dire un peu plus, merci


J'ai refait quelques passes en respectant les règles évoquées plus haut, et ce sera en principe ma dernière image avec ce logiciel.

Pour simplifier, je donne un lien vers une nouvelle 120%, élaborée un peu laborieusement pour gérer les bords, à comparer avec celle indiquée au début pour que ceux que ce sujet intéresse encore me donnent leur avis.

DERNIERE MINUTE :
Je viens de trouver l' outil à limer les bords.
GENIAL !


Alors avec les mêmes traitements et paramètres, mais directement depuis l'original avec les bords limés on line

LA 120% finale

A noter que les rebonds sauvages en bas à droite visibles en particulier sur Clavius E, Clavius G, Maginus H
ne sont que l'accentuation de ceux déjà présents dans l'image empilée.
D'autres transitions aussi raides sont restées relativement propres, Deluc D par exemple.

Pour des tests de définition, on peut s'intéresser à "l'escalier" sur le versant intérieur ensoleillé de Maginus C.

A gauche, la QuickMap par la LROC, à droite un extrait de la dernière 120% estimée à 200 m/pixel en horizontal, avec des cratères de 400 m détectables :
.
.

Et maintenant, avec une réduction à 30% Lanczos3 de la QM :
.

[Ce message a été modifié par Nebulium (Édité le 04-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
quote:
A noter que les rebonds sauvages en bas à droite visibles en particulier sur Clavius E, Clavius G, Maginus H ne sont que l'accentuation de ceux déjà présents dans l'image empilée.
D'autres transitions aussi raides sont restées relativement propres, Deluc D par exemple.

Une image HR c'est comme un labyrinthe à une entrée (les images BR) et à plusieurs sorties (image HR avec et sans artefact) et pour compliquer le tout, il y a pleins de chemins possibles (problème inverse mal posé). La condition nécessaire (mais pas suffisante) pour atteindre une bonne sortie c'est de démarrer de l'entrée du labyrinthe (et non d'une de ses sorties comme tu le fais).

Partager ce message


Lien à poster
Partager sur d’autres sites
Hello

=> ms
Tu parles d'or !
Disons que cette recherche sert à essayer de sauver les meubles quand l'histoire est écrite.
Il est certain qu'avec les progrès en sensibilité des caméras, on pourra envisager d'améliorer individuellement les images sur plusieurs points avant de les empiler.
Je pense aussi qu'Emil (AS2!) va vite intégrer tes bienfaits, ce jeune garçon est plein de qualités

=> Will
"image brute stackée de Purbach" Où ?

Dis, Will, au fait, tu n'es pas très causant sur mes divers derniers essais !
Faudrait aussi que tu tires un peu la charrette !

Chuis pas rancunier, voici, avant de passer à la Juju de Polo (si mes yeux veulent suivre ) la der des der,
en 120% et découpée en 800x800. Voir en particulier le rendu général et les détails vers Maginus C :
.

Partager ce message


Lien à poster
Partager sur d’autres sites
Oups, je me viens de m'apercevoir que j'ai oublié de t'envoyer la pièce-jointe de PURBACH, c'est réparé !

Partager ce message


Lien à poster
Partager sur d’autres sites
quote:
Je pense aussi qu'Emil (AS2!) va vite intégrer tes bienfaits, ce jeune garçon est plein de qualités

AS2 est très bon quand la turbu est faible (image de référence = moyenne des trames) mais dès que les distorsions deviennent importantes (turbu plus forte) son image de référence (basée sur la moyenne) n'est plus adaptée. J'ai un petit article en cours à ce sujet sur la base du jeu d'essais suivant appliqué à AS-2.3 et RegiStax-6.1 :
http://srapplis.org/applications/underwater/underwater-seeing.gif

[Ce message a été modifié par ms (Édité le 05-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Chapeau, ms, si tu arrives à calmer ces agitées !
Ça me fait penser au filtre "Deshaker" de VDub qui calme bien les mouvements de caméra.
Tiens, je voulais voir avec le damier ce qu'il donne sur ton GIF, mais avec si peu d'images, ce n'est pas concluant

[Ce message a été modifié par Nebulium (Édité le 05-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
quote:
Tiens, je voulais voir avec le damier ce qu'il donne sur ton GIF, mais avec si peu d'images, ce n'est pas concluant

Les images brutes PNG sont dans le lien suivant : http://srapplis.org/applications/underwater/checkboard/png
idem pour brickwall, large, middle, small et tiny.

Ceux qui ont installés Julia/Juno pourront extraire les images à partir des fichiers .mat (Matlab) avec les programmes checkboard.jl, brickwall.jl, ... A terme les images brutes seront fournies aux formats : AVI, SER, MAT et PNG.

Ceux qui observent la Corse à longue distance ou le Soleil récupèrent la plupart du temps des images brutes avec des régions très déformées et floues. Les algorithmes utilisés dans l'application "underwater" corrigent tous ces problèmes et permettront aux amateurs de sortir quelque soit les conditions de turbu.

Si tu utilises AS2 ou RegiStax sur les 61 images brutes "checkbox" ou autres, tu t'apercevras que ces 2 logiciels ne sont pas très adaptés aux conditions de turbulence que l'on rencontre souvent en France. Par contre quand la turbu est faible (c'est à dire pas souvent), ils font bien le boulot aux problèmes d'artefacts près.

Voir par exemple les résultats obtenus par Omar Oreifej : http://srapplis.org/applications/underwater/checkboard/checkboard.wmv

En gros, tu mets cote à cote "Original" et "Stage 2" est tu as le logiciel de traitement vidéo de la turbu en temps réel que je prépare sur carte Jetson TK1 pour fin 2015.

[Ce message a été modifié par ms (Édité le 06-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Wow !

Hello ms

La vidéo d'Omar est impressionnante !
Je vais -avec ta permission- montrer ça à Emil

Je suis vite allé visiter le site d'Omar dommage que les vidéos soient privées, mais j'en extrais les GIFs de cet article:
.

.

.

Je viens de récupérer le pack Julia+Juno pour Win 64 bits (j'utilise win 7), "checkboard.mat" et "checkboard.jl" mis dans le dossier dézippé.
- Lancé "juno.exe"
- File > open file > checkboard.jl

J'obtiens :
.

En copier-coller =>

code:
# For reading .mat files
using MAT

# For writing .png files
using Images

# Application path (user ms)
cd("/home/ms/applications/underwater/checkboard")

# Make directory "png"
mkdir("png")

# PNG images under png directory
images = matread("checkboard.mat")
for i=1:1:61
imwrite((images["frames"][:, :, i]), @sprintf("png/%02d.png", i))


J'ai crée un "PNG.bat" avec ce code, dans le dossier.
Clic-clic, je trouve dans le dossier un répertoire "(png)" : vide

Bon, alors, je fais quoi, pour avoir vite les PNG sans me taper les tutos ?

Merci


-------------------------------------
"A terme les images brutes seront fournies aux formats : AVI, SER, MAT et PNG"
Pourrait-on avoir un "PNG.zip" ?
Sans accès FTP, c'est assez fastidieux de les récupérer une par une

Partager ce message


Lien à poster
Partager sur d’autres sites
La méthode utilisée par Omar Oreifej s'appelle "Two Stage" (2 étapes), elle est intéressante mais extrêmement lente en particulier la 1er étape "Robust Registration" (recalage robuste).
Je n'utilise pas cette méthode qui en plus génère quelques artefacts mais j'utilise les 6 vidéos de 61 images brutes chacune pour pouvoir comparer mon travail avec le sien.

Je n'utilise pas Windows pour 2 raisons :
- ce n'est pas un OS libre,
- le support Julia de la mémoire partagée et de la mémoire répartie, n'est pas testé sous Windows.

Sous Linux Mint 17.1 64bits, j'utilise Wine pour faire tourner (sans problème) les applications Windows 32bits comme AS2 ou RegiStax.

Le site srapplis.org c'est Linux+Julia+Juno et je n'envisage pas de l'étendre à des OS non libres comme Windows et Mac OS X.

L'utilisation de CUDA ne se fera qu'à partir de l'application n°3 sur carte Nvidia Jetson TK1 supportant la mémoire unifiée (CPU+GPU) sous Linux Ubuntu ou Linux Mint.

En attendant que mon programme de conversion MAT/AVI/SER/PNG soit terminé, je zippe les répertoires "png".

Sous Linux Mint, mon code figure sous :
/home/ms/applications/underwater
/home/ms/applications/turbulence
ms étant mes initiales

Sur internet, mon code figure sous :
srapplis.org/applications/underwater
srapplis.org/applications/turbulence

Le site srapplis.org est dédié à la super-résolution et à la programmation // sous Julia/Juno/Linux.

Partager ce message


Lien à poster
Partager sur d’autres sites
Merci ms , j'ai les PNG, c'est juste ce dont j'avais besoin dans l'immédiat.
Pour le futur, je lirai les tutos et verrai aussi avec Cygwin pour l'émulation Linux.
Et puis ma carte graphique n'est pas une Nvidia, donc pas de CUDA, j'ai déjà vu le truc avec le logiciel de déconvolution aveugle utilisé en page précédente qui est passé en mode de calcul CPU, avec une durée raisonnable.

[Ce message a été modifié par Nebulium (Édité le 06-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Trop technique pour moi tout ça! De toutes façons cette photo de Clavius a été prise en orbite lunaire pour être aussi nette! On dirait qu'aucune atmosphère a été traversée! Hihihi!!! Bravo

Partager ce message


Lien à poster
Partager sur d’autres sites
Hello

Merci Guy

Comme je le pressentais, le "Deshaker" n'est d'aucune utilité pour ce genre d'image où l'agitation n'est pas globale.
----

Notre affaire ne passionne pas (encore) les foules, il faudrait déjà ouvrir un autre fil, néanmoins, je m'accroche et livre mon expérience avec WinDaube :

- Tout d'abord, il faut d'abord commencer par télécharger le Julia en ligne de commande. le bundle Julia+Juno ensuite. (sous toutes réserves..., ça m'a l'air pas très propre ainsi ???)
- On récupère un .exe (autoextractible) qui demande dans quel dossier installer Julia.
- Ceci fait, on trouve dans ce dossier un raccourci "julia".
J'ai aussi mis dans ce dossier "checkboard.jl" et "checkboard.mat"
- Clic-clic sur le raccourci, attendre un peu, on se croit revenu au bon vieux temps du DOS ... ou ?, avec " julia>" en vert
Pour les courageux :
Doc...

Voir aussi

Et encore, par exemple

Pour les nuls (dont je suis) :

Il faut être connecté au net
- Copier- coller (sans les "..." extrêmes): "Pkg.add("MAT")"
Patienter, c'est plus fûté que le DOS : au bout d'un moment, le bazar bosse tout seul, avec plein de trucs qui s'affichent en bleu.
C'est à faire une fois, on peut maintenant sortir de Julia et y revenir.

Donc ensuite, copier-coller le code issu du bundle Juno, modifié ainsi :

code:

# For reading .mat files
using MAT
# For writing .png files
using Images

# Application path (user ms)
("checkboard")

# Make directory "png"
mkdir("png")

# PNG images under png directory
images = matread("checkboard.mat")
for i=1:1:61
imwrite((images["frames"][:, :, i]), @sprintf("png/%02d.png", i))
end


On sent que ça voudrait marcher, mais hélas, ça se termine ainsi :

code:

julia> for i=1:1:61
imwrite((images["frames"][:, :, i]), @sprintf("png/%02d.png", i))
end
ERROR: imwrite not defined
in anonymous at no file:143

julia>



[Ce message a été modifié par Nebulium (Édité le 09-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
quote:
Notre affaire ne passionne pas (encore) les foules, ...

Ce sera intéressant de voir les réactions aux premiers articles (pour l'instant il n'y a que les premières pages statiques qui vont s'étoffer grâce aux articles).
Par contre ta démarche qui consiste à emprunter un autre chemin avec Windows dans le labyrinthe est intéressante (d'autres peuvent faire de même avec Mac OS X). Enfin, mon but n'est pas de passionner les foules mais de comprendre les traitements que j'effectue sur des images brutes.

quote:
... je m'accroche et livre mon expérience avec WinDaube

Sous Julia, les packages comme MAT ou Images sont fabriqués sous GitHub. Tu peut les utiliser ensuite dans ton programme avec "using" mais avant il faut les installer dans le fichier ".julia" par la commande Pkg.add("MAT").
Je vais ajouter la commande Pkg.add("nom_package") dans mon programme comme dans le tutoriel fourni par Juno (je ne l'avais pas fait parce que les packages existaient déjà dans mon environnement).

Avant d'utiliser Juno, j'installais les packages Julia de la façon suivante :
$ julia (lancer Julia)
julia> Pkg.add("MAT")
julia> Pkg.add("Images")
julia> Pkg.status()

$ julia (relancer Julia)
julia> using MAT
julia> using Images

Aujourd'hui, je fais un clic droit sur le package dans Juno puis Evaluate ... c'est plus simple.

quote:
... il faudrait déjà ouvrir un autre fil,

Les forums c'est en attendant l'ouverture des premiers articles car je ne crois pas que l'on puisse étudier certains phénomènes comme la turbulence via un forum.

[Ce message a été modifié par ms (Édité le 08-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
OK, ms, on va rester discrets pour l'instant

Bon, grâce à tes tuyaux, je récupère les PNG sous WinDaube.

Une fois :
1 Julia initialisée avec Pkg.add("MAT") et Pkg.add("Images") (c'est ce dernier qui me manquait), pour cela :

Il faut être connecté au net
- Copier- coller (sans les "..." extrêmes): "Pkg.add("MAT")", Enter
Patienter, c'est plus fûté que le DOS : au bout d'un moment, le bazar bosse tout seul, avec plein de trucs qui s'affichent en bleu.
Quand on a la main, idem avec "Pkg.add("Images")"

C'est à faire une fois, il faut maintenant sortir de Julia et y revenir.

2. et "checkboard.mat" mis dans le répertoire d'installation, voici un code qui marche en relançant Julia par son raccourci, puis en faisant un copier-coller en bloc (ce code est dérivé du contenu du fichier "checkboard.jl", modifié pour tourner en local:

code:

# For reading .mat files
using MAT

# For writing .png files
using Images

# Make directory "png"
mkdir("png")

# PNG images under png directory
images = matread("checkboard.mat")
for i=1:1:61
imwrite((images["frames"][:, :, i]), @sprintf("png/%02d.png", i))

end



.

.

Plutôt que de mettre en local "checkboard.mat" et "checkboard.jl", j'ai essayé de remettre avant le # Make dir..., à la place de :

code:

# Application path (user ms)
cd("/home/ms/applications/underwater/checkboard")

code:

# Application path (user ms)
cd("http://srapplis.org/applications/underwater/checkboard")

J'ai reçu une erreur de syntaxe, je regarderai plus tard, peut-être juste mettre le lien complet après "matread"

Bon, le mieux étant l'ennemi du bien, je me sens maintenant paré pour flirter avec Julia


------------------------------------------
J'ai réessayé avec et sans espace après "matread" et vérification que le lien http fonctionne :

code:

# Make directory "png"
mkdir("png")

# For reading .mat files
using MAT

# For writing .png files
using Images

# PNG images under png directory
images = matread ("http://srapplis.org/applications/underwater/checkboard/checkboard.mat")
for i=1:1:61
imwrite((images["frames"][:, :, i]), @sprintf("png/%02d.png", i))

end


Il revient :

code:

julia> images = matread ("http://srapplis.org/applications/underwater/checkboard
/checkboard.mat")
ERROR: File "http://srapplis.org/applications/underwater/checkboard/checkboard.m
at" does not exist and create was not specified
in matopen at C:\Users\Jean\.julia\v0.3\MAT\src\MAT.jl:39
in matopen at C:\Users\Jean\.julia\v0.3\MAT\src\MAT.jl:57
in matread at C:\Users\Jean\.julia\v0.3\MAT\src\MAT.jl:79

Il apparaît que le fichier checkboard.mat n'a pas été chargé dans le sous-dossier MAT, il doit falloir ajouter quelque chose dans le code (où j'avais déjà déplacé le "mkdir PNG" au début, avant le "cd" par précaution)

Donc pour l'instant, il me faut télécharger auparavant le fichier *.mat dans le Julia d'installation.

Quant au fichier "checkboard.jl", si on n'utilise pas Juno, dans un premier temps ne pas s'encombrer avec, il est à ouvrir dans un éditeur de texte comme "NotePad" pour le corriger comme indiqué ci-dessus dans le code qui marche en local.

[Ce message a été modifié par Nebulium (Édité le 09-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Je commence aujourd'hui, la rédaction du premier article (Environnement Linux/Julia/Juno). Les articles (une trentaine jusqu'à fin août 2015) seront très détaillés pour permettre au plus grand nombre de suivre la construction des 2 premières applications.

Je ferai tous les tests avec une machine à base de Core i5 et 4GB de mémoire :

julia> versioninfo()
Julia Version 0.3.5
Commit a05f87b* (2015-01-08 22:33 UTC)
Platform Info:
System: Linux (x86_64-linux-gnu)
CPU: Intel(R) Core(TM) i5-2430M CPU @ 2.40GHz
WORD_SIZE: 64
BLAS: libblas.so.3
LAPACK: liblapack.so.3
LIBM: libopenlibm
LLVM: libLLVM-3.3

Les 2 premières applications utilisent uniquement la programmation // à mémoire partagée (et à mémoire distribuée pour ceux qui ont des machines en réseau), de ce fait une carte graphique (programmation par GPU) n'est pas nécessaire.

La troisième application (à partir de septembre 2015) utilisera la programmation // à mémoire unifiée (CPU+GPU) et sera embarquée pour cela sur une carte nVidia Jetson TK1 (ou similaire).

Dans la quatrième application, les cartes Jetson TK1 (ou similaire) sont empilées pour donner un supercalculateur (guère plus coûteux au final qu'une station de travail ou de gamer mais bien plus puissant) supportant la programmation // hybride.

Partager ce message


Lien à poster
Partager sur d’autres sites
Et j'ajoute :

Tous ceux et celles qui auront :

- assidûment fréquenté le site srapplis

- lus (je ne dis pas compris, -ça c'est pour moi - ) TOUS les articles

- fait avec application tous les exercices proposés

disposeront d'une clé non copiable (ben oui, quoi !) qui leur permettra de lancer un petit (hum ?) exécutable qu'ils trouveront dans leur soulier pour Noël 2015.

Cet exécutable ouvrira une fenêtre dans laquelle on fera glisser ses films AVI, SER et autres conteneurs "astronomiques" ou encore la première image d'une séquence d'images aux formats graphiques habituels ainsi que les 16 bits et autres flottants courants en astronomie.
On pressera un bouton "Stabiliser", un thermomètre s'affichera avec indication du "Temps restant" en clair et un bouton "Annuler"

Dans les dossiers d'origine, on trouvera au fur et à mesure les versions stabilisées avec le nom rallongé par "_ms" (comme merveilleusement - ou magnifiquement - stabilisé)

Un grand merci, ms, tu es un BIENFAITEUR de l'astrhumanité !

Dorénavant, la suite de ce sujet se trouvera sur srapplis

[Ce message a été modifié par Nebulium (Édité le 09-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Bon au final ça donne quoi ces histoires sur un disque planétaire ? Où le niveau de contraste ne correspond pas aux tests ci-dessus...
Ms et Neb, je vous mets un film kek part et vous me mnontrez ce que ça donne ?

Partager ce message


Lien à poster
Partager sur d’autres sites
Hé, Christophe, tu lis trop vite (comme moi, d'ailleurs...)
C'est pour Noël, qu'on a dit !

Mais je suis preneur de ton film (RGB, court, 3 x 60 i.), j'ai une petite idée...

[Ce message a été modifié par Nebulium (Édité le 09-02-2015).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Au final, ça donne une image bien résolue, contrastée et sans artefacts mais avant de sortir du labyrinthe, il faut prendre le temps d'y entrer et de le parcourir step by step.

quote:
je vous mets un film kek part et vous me montrez ce que ça donne ?

J'avais récupéré à l'époque ta vidéo (JLRGB20120919-042455911.ser) de 3000 images brutes 640x480 de jupiter prises dans des conditions de turbu pas trop top. Je l'utiliserai dans un article mais avant je dois installer quelques algorithmes dans le labyrinthe.

Neb, as-tu vu ce que donne le traitement du damier, du mur de brique et des caractères avec AS2 ou RegiStax ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant