Invité

Optique adaptative (Home Made) Part : 1

Messages recommandés

Invité
De toutes facon, c'est bien ca le but
me faire plaisir. on vera bien. le souci seras de toute facon, les resources du pc....

mais bon de toutes facon c'est pas transportable mon insatllations !
Donc ci il faut 10 Pc pour i arriver. pourquoi pas.

Mais quoi que il arrive Meme ci ca donne que 5% de meiux que l'images c'est deja super.

vaut mieux une images avec des manque que ile images pouris par la turbulence.


merci encore a tous le monde

[Ce message a été modifié par Anonymous (Édité le 26-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
On a d’un coté l’image « brute » et de l’autre le catalogue des correctifs et si l’on passe ça dans une moulinette qui échantillonne correctement la correction par rapport au temps de cohérence on remonte à l’image parfaite. En supposant que l’échantillonnage par rapport a la surface du capteur (le nombe de pièces du puzzle) soit assez élevé on peut supposer à reconstruire une image. J’ai toujours bon ?
---------------------------------------------------------------------------
C'est pas tout à fait comme ça.
Prenons un exemple :
Tu travailles à 1000ips et la manip sur Jupiter dure 30s (30.000 images).
Tu démarres avec une portion d'image brute de Jupiter.
Nous supposons que Jupiter varie très peu en 30s.
Un apprentissage précédent te permet de retrouver dans les 30.000 images, un nombre limité de motifs (patterns) discriminants.
Ces motifs vont te permettre de corriger la portion d'image brute par petites touches comme un impressionniste qui réaliserait un tableau ou un individu qui assemble les pièces d'un puzzle.
Les motifs sont les sources de connaissance de la turbulence.
L'idée d'utiliser des réseaux de neurones pour leur reconnaissance est intéressante.
Par contre, pour réaliser l'assemblage des pièces du puzzle, le modèle du tableau noir me semble plus indiqué.
Cette approche qui est très orientée IA est en fait un traitement batch d'images acquisent en temps réel.
L'avantage de ce modèle c'est qu'il se limite à l'utilisation d'une seule camera CCD ultra-rapide (pas de laser et pas de miroir déformant) et qu'il peut travailler en une passe si l'apprentissage a déjà été réalisé.
L'inconvénient de ce modèle c'est que si les conditions de turbulence sont extrêmes alors il y aura beaucoup de déchets.

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Ms: dans l'aproche que tu donne pour une foix je dit que c'est vraiment 100% ce que je sugerer il ya 6 mois. mais en utilisant un super point de references qui ne change pas (le laser) permetant de gagner des fps

par contres des cameras a 1000ips . ca j'ai pas

mais pour moi alors a 1000ips. je vous mais au defit de me pouver le contraire de cette theorie. (les pro de l'optique) !!!

avec un super calculateur. et tous correctemnt etudier.
alors la, plus de laser ! et plus miroir !. mais un ordinateur de la taille de la baraque. Certes peut-etres et surement moin bien que L'OA du VLT et des autres.
mais une base de donnéee en TERA !!

Alors le resultats a mon avie seras enormes !!!!
Et je veut pas facher les opticien en disant ca mais je sais que il sont entrain de bouillir, j'ai aussi bouillit pendant 2 jour a me justifier. Mais a mon avie

ca deviendrait la solution Logique a la turbu, vu par un informaticien et pas par un opticien.

(Pas me frapper merci....)


mais cela implique que le resaux soit enormes vu les mutiples informations et que il puissent ce modifier lui aussi pour ameliorer l'ensembles. deplus il devrait pouvoir determiner ou dumoind demander ci c'est bon ou pas

Domage que thierry est pas la c'est ca specialiter, sur de jolie super calculateur. il en a pondu des reseaus (surtout des physiques)

+++

ps: il ya meme pas 10 heures j'ai voulut abendonner cette solution, Merci MS. de toutes facon thierry c'est sont mettier ca. Et il a dit ca marcheras

[Ce message a été modifié par Anonymous (Édité le 26-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
..........

Et peut etres bien avec un peut de chance Ca donnerait aussi bien voir peut etres meme mieux (qui c'est ???) que une Oa a miroir.

Et que avec un peut de chances ca tiendrait dans la main dans 10 ans.

et que mon idéee d'origine a 10 balle seras effectivment une solution dans quelque temps. (Et la encore une foix certain sont entrain de bouillir)

et en reflichisant a cela, je commence a comprendre l'ebulition de certain et des ecrassment que j'ai subit en 2 jour par mail privé


Et la je suis gonflé a bloc ! MERCI MS !!!!!!!!!!!!!!

...

[Ce message a été modifié par Anonymous (Édité le 26-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Je cloture ce post (virtuellment) mais je le laisserez ouvert ci toutefoix des perssones veulent signer ce post ou ecrire ce que bon leurs semble et egallment je vous invitent (les pro de l'optique) a nous prouver que cette theorie est fause sachant tres bien que on peut pas prouver ce que il n'esxiste pas. (Nece pas


JE PREFERAIT toute foix que nous laissions tous le post dans cette atats sans critiquer l'un ou l'autre (leur idée)

Et que nous signons tous ce post uniquent ! qui est un poste CULTE. Pour nous permmetres Thierry et Moi de vous donner La suite de cette aventure tres longues.

Finisons donc:


..... Et avec l'electronique qui ne cese de miniaturser. ca ne metonerait pas que dans quelque annéee ca tient dans une boite a cigarette.

meme ci c'est pas moi et thierry qui le feront manque de moyen technique. il est fort probable. que notre idéee soit la voit du futur

L'optique quand a elle ne pouras jamais etres raptiser a ce point la un diamettres doit rester un diammetre et une focale une focale

Nous remercions tous les participants a ce forum et eggalment l'hebergeur de celui ci et les administrateurs qui ont participer a ce post


Anonymous et Thierry D

Vision de l'optique adaptative du futur concue par oridinateur Brevet non deposer le 26 Juin 2009.

Prototype en cours de realisations 11 Novembres 2008.

[Ce message a été modifié par Anonymous (Édité le 26-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
... ce que veut faire Emmanuel commence a être un peu plus clair... par ou
commencer ....

1) ton projet : effectivement tu te lances un peu les yeux fermes dans un
projet pour te faire plaisir .... mais sans savoir vraiment a quoi tu vas
te heurter ... c'est pour cela que je te demandais un peu tes recherches et
connaissances dans le domaine... pour l'instant tu es en train de fabriquer
un Laser et tu as des idées pour l'appliquer a la correction d'images
obtenues... je ne parlerais pas encore d'AO (pour "Adaptive Optics"
ce sont les initiales réservées en astro).

Je respecte profondément, ton travail, tes idées et ta motivation ... "un
pro" te dirait tout de suite que cela ne va pas marcher car tu ne fais pas
comme 'les systèmes qui marchent', que tu pars vraiment a l'aveuglette dans
un domaine complexe, d'ailleurs tu ne sais pas vraiment ou tu veux arriver.
.... mais bon, c'est comme cela que l'on découvre l'Amérique, que l'on
dira : "Il ne savait pas que c'était impossible, c'est pour cela qu'il l'a
fait et réussi." ... donc toutes les idées sont bonnes ... et de toutes
façons tu apprendras plein de chose et te fera plaisir (je l'espère).

2) Comment l'AO est faite chez les pros, en simplifie :
2.1-définition des specs : savoir le but, la couverture et qualité des
corrections recherchées, les caractéristiques du télescope et aussi les
caractéristiques du site ou se trouve le télescope.

2.2-ces specs et caractéristiques permettent de définir les sous systèmes
qui, chez les pros, consistent en :
-un système de mesure du front d'onde (Shack Hartmann ou courbure par
exemple), de la lumière d'une étoile : combien de sous pupille d'analyse,
vitesse d'acquisition, ...
-un système d'analyse rapide qui applique les corrections 'en temps réel':
choix de l'algorithme, rapidité, ...
-un miroir déformable situe dans le chemin optique en amont de l'analyseur
de front d'ondes et du détecteur principal et sur lequel sont appliquées
les corrections : nombre d'actuateurs, linéarité, rapidité etc ...
-l'étoile 'Laser' est un accessoire de l'AO. Vu les rapidités des mesures
(poses de quelques ms imposées par l'atmosphère) le problème majeur de l'AO
est le signal....et il est 'toujours trop faible' pour les étoiles que l'on
veut utiliser. Ceci se traduit par du bruit dans les mesures du front
d'onde. Au premier ordre, ce manque de signal est lie a la qualité du site,
au 'ro' (voir le lien vers le site de Cyril Cavadore donne plus haut) moyen
pour lequel est conçu le système, il ne dépend donc pas de la taille du
télescope.
L'étoile guide Laser permet de s'affranchir de ce problème physique, en en
provoquant d'autres mais d'ordre techniques cette fois-ci donc a priori
'soluble' .

2.3 principe de l'étoile laser :
Les lasers utilisées sont des lasers a longueur d'onde de la raie
jaune-orange du Sodium, ont une puissance de 5 a 10W (en continus)et sont
destines a exciter, la couche de sodium de l'atmosphère située entre 80 et
100km de distance. Les atomes de Na, sont excitées par cette fréquence
(normal puisque la longueur d'onde correspond a celle d'un laser sodium),
changent de niveau d'énergie et retrouvent leur niveau initial en
re-émettant la lumière a cette même longueur d'onde dans toutes les
directions, on crée ainsi une étoile artificielle entre 40 et 80 km
d'altitude. Ce n'est pas une étoile obtenue par 'rétro diffusion' sur de
l'humidité ou qqchose comme cela comme ce que je pense que tu observes avec
ton Laser.

Comme le soulignait Serge, une étoile Laser doit être associée a une étoile
naturelle pour la correction de deux modes très importants :
-le 'focus' : l'étoile Laser n'est pas a l'infini vous allez me dire, c'est
vrai, mais cela se corrige par un décalage de foyer ... le problème majeur
est la stabilité de la couche de sodium dans l'atmosphère, elle peut varier
entre 80 et 100 km d'altitude pendant les observations en fonction des
vents etc ... donc on mesure des variations de focus dues a la hauteur de
cette couche, et non pas dues seulement a la turbulence du reste de
l'atmosphère sur le trajet.

-le "tip-tilt", qui se traduit par un mouvement rapide du 'centroïde' de
l'étoile sur le détecteur. Une étoile laser ne permet pas de mesurer ce
mouvement par principe du retour inverse de la lumière : le faisceau venant
de l'étoile repasse par le même trajet que le faisceau envoyé... l'étoile
Laser 'ne voit pas le tip-tilt atmosphérique'.
Comme le soulignait Serge, on pourrait le faire avec des lasers de
différentes couleurs en observant les différentiels de chemins optiques
entre les différentes couleurs et de la revenir a la valeur de tip/tilt
... c'est plus complique a faire encore que ma phrase ...mais des
équipes travaillent la dessus.

2.4 autres 'problèmes' de l'AO :
On s'apercevra aussi, simplement en faisant un petit dessin, que les
trajets des faisceaux lumineux provenant d'étoiles distinctes ne sont pas
les mêmes dans l'atmosphère, et que par conséquent ces faisceaux voient des
couches turbulentes différentes et donc nécessiteront des corrections
différentes. Avec correction par un seul miroir déformable, la zone de
correction 'bonne' est petite , elle s'appelle le champs
'd'anisoplanétisme' comme déjà cite par Erick il me semble. C'est a dire
que l'on saura corriger a peu près la turbulence aux alentours de l'étoile
d'analyse, mais que la qualité de correction baisse (vite) des que l'on
s'en éloigne ... on dégradera même la qualité des images loin du centre du
champs en y appliquant des corrections complètement décorélées de la
turbulence réelle a cet endroit la.

Pour améliorer cela, et ne pas être limite par ce champs d'anisoplanétisme
trop petit, Les 'pros' commencent a travailler sur des systèmes a plusieurs
miroirs conjugués a différentes altitudes de l'atmosphère, et associes a
plusieurs systèmes d'analyse qui mesurent plusieurs étoiles dans le champs
.... le premier système essaye sur le ciel est un prototype de l'ESO teste
avec succès sur le VLT il y a quelques mois : chercher 'MAD' sur le site de
l'ESO (www.eso.org)... il a permis de sortir les meilleures images du ciel
jusqu'à présent, elles sont la : www.astrosurf.com/sguisard ).

... voila donc 'rapidement' .... pour planter le décor.

3)autres remarques et conseils suite a ma lecture des différentes
interventions lues plus haut :

A quelle hauteur tape ton laser ...?

...a l'infini ... je suis pratiquement
sûr que quelques photons sortiront du système solaire .... le problème est
plutôt de savoir combien reviennent vers nous après avoir été réfléchis/
rétro diffuses par quelques chose quelques part entre nous et X km ....
donc peut-être que tu vas récupérer suffisamment de photons pour les voir
... mais il sera difficile de savoir si la 'turbulence' que tu vas voir et
'corriger' est vraiment celle que subit la lumière de ton étoile .... tu
peux très bien dégrader plutôt que de corriger.... pour vérifier cela, je
te recommanderai de pointer ton laser très près d'un étoile brillante,
enregistrer tes images (avec ton laser et l'étoile dessus) et regarder si
les déformations on 'la même tête' ... si ce n'est pas le cas...il faudra
revoir ta copie.

Correction des images après coup par algorithme ... euh ..oui ... pourquoi
pas ? ...comme également déjà souligne, a ce stade, au niveau de l'image tu
as déjà perdu de l'information. Ce type de correction se fait, cela
s'appelle de la déconvolution ... mais suppose de connaitre la PSF de ton
étoile... et c'est ce que tu penses faire avec ton Laser ... un problème a voir ici est que ta PSF va varier dans le champs (a cause de l'isoplanétisme d'une part et avec les aberrations de champs de ton télescope ...

Il y a certainement encore des choses a raconter, mais ça sera tout pour aujourd'hui

Stéphane

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Merci Stephane

De toutes facon ce sers bien long mais tous ce que tu m'explique me serviras dans mon test et j'apprecie la reponse que tu vient de poster .(LE meme mots de thierry)
je naivai meme pas penser que mon laser avez une telle puissance pour que des proton puise sortir du syetem solaire. tu a raison c'est l'humidieter de l'air que je doit analyser dans mes experinces ton explication du haut

Mais pour les petite perssones que nous sommes nous voulons juste enlever un petit peut de turbulence que nos voisins les toit de mulhouse mal hisoler nous créer. sans vouloir faire une analyse des trous noir ou de tous ces phenomene.

du moments que nous gagnons un tout petit peut de qualiter nous nous en sufirons. Sinon Si nous voulons voir des exoplanettes ou des trou noir nous irons voir les magnifiques images raporter par le VLT et tous les autres professionel de l'astronomie sur la planette.

JE comprend maintenant mieux pour quoi orange.

Emmanuel et Thierry

[Ce message a été modifié par Anonymous (Édité le 26-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Salut,
je vais peut être dire des bêtises car tout cela est vraiment compliqué...

Est-ce que tu es obligé de corriger l'image "en live" ?
Est-ce que tu ne pourrais pas faire un avi de jupiter ET un avi de l'image du laser simultanément, puis de passer ton soft "correctif" après l'acquisition ?

En tout cas c'est impressionnant tout ça.
Fred.

Partager ce message


Lien à poster
Partager sur d’autres sites
Arretez de poster et laissez bosser notre ami, il doit passer son temps devant son écran au lieu de réfléchir. Je plaisante bien sûr. J'aime beaucoup ce genre d'essai et l'opiniatreté qui y est associée. Maintenant il faut aller au bout alors je te souhaite bon courage et je te dis M...e.

Partager ce message


Lien à poster
Partager sur d’autres sites
L'AO, mais c'est très simple ! mais pas si facile à mettre en oeuvre

Après ce magistral exposé de Stéphane aux pauvres Ignotus que sont la plupart d'entre nous, je me demande s'il n'y aurait pas une idée à exploiter à court terme par notre superchampion des tirs laser, basée sur les illustrations de simulation que j'ai publiées sur la page précédente :

En utilisant le laser comme source de lumière à la manière d'un projecteur de diapositives (que tous ceux qui ignorent ce qu'est cet engin préhistorique descendant de l'antédiluvienne lanterne magique qui fonctionnait à la chandelle veuillent bien m'excuser) on pourrait imaginer de projeter sur tout ce qui traîne dans l'atmosphère sur l'axe optique du télescope dirigé vers l'objet céleste à imager, une image par exemple celle d'une grille, disons d'un diamètre apparent de l'ordre de la minute d'arc.
La récupération de cette image par le scope donnerait peut-être des indications utiles sur les effets de la turbulence locale, à laquelle fait allusion Emmanuel.

L'enregistrement simultané (ou presque) de l'image laser et de celle de l'objet dans le scope permettrait peut-être par un traitement ultérieur idoine d'améliorer l'image de l'objet céleste.

Un certain nombre de paramètres de faisabilité sont bien sûr à évaluer, en particulier les temps d'acquisition des images fonction de la fréquence des variations de la turbulence locale et de leur luminosité pour des rapports S/B acceptables, les spécifications minimales des filtres et l'influence des réflexions parasites en cas d'acquisition simultanée (sinon pourrait-on envisager un très bref tir laser très puissant suivi de l'acquisition de l'objet céleste?)

Si ces paramètres sont considérés comme réalistes par les scientifiques ici présents, alors l'ami Emmanuel pourrait se lancer dans l'aventure de l'AO d'amateur avec des moyens à la portée de l'amateur motivé

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

Partager ce message


Lien à poster
Partager sur d’autres sites
Les anciens... vous vous souvenez de "Système D" ? Je trouve qu'il y a une certaine analogie... (Hi, Hi)

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Salut Fred

Je tient absolument a faire du live. sinon je peut utiliser registax
par contre du differer ca marcherait aussi.


camopi31 , Merci (Il a raison emplus je passe mon temps que sur le net )

[Ce message a été modifié par Anonymous (Édité le 27-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Stephane

Merci encore pour tes info, mais je savait exactement ou je voulait arriver. C'est vrait que le terme optique adaptative n'est pas le bon pour ce que je veut faire. mais ton explication a combler mes lacune

Sinon un test de 1h hier soir. (en remplisant une poubelles de 200 Littres avec de l'eau mon permis de laisser le laser allumer pendant 1h00

Bon comem d'habitude pas de system d'enregistrement donc c'est que ma parole pour le moment.

Donc effectivment a coté d'une etoiles bien brillante et entre 2 nuages
j'ai constatter que j'ameliorait le 3/4 de l'etoile brillante avec mon laser. Mais que une partie de l'etoile qui me semblait correct ce mis a ce deformer.

Je dirait d'apres l'ensemble du cliché que ca a ameliorer enormement l'image mais certaine partie qui etait nete (Surtout a coté de l'etoile puissante) c'est deformer.

Donc Yes il faut traiter l'etoile brillante et le (Trait du laser) avec une moulinette . j'ai travailler de 4h00 du matin jus'au 20h00 ce soir
pour trafiquer ma moulinette et egallment mettres en oeuvre l'idéee du cadraillage dans le ciel. je vous ferait part de cela dans quelque heures

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Nebulium

t u a pris du temps pour desiner ce que j'expliquer , il en va que j'ai faut de meme pour toi. j'ai concretiser ta vision, en bricolant un laser dpss vert. (Le bleu je peut pas couper rapidement le faisceau)

j'ai adapter un system de piezo et vite fait un support et tous le bordel avec. bon ne vous arreter pas sur la plaquette a trous des composnats. c'es tdu vite fait.

JE fait un essais d'alumage quelque photos et tu me diras ci c'es tca que tu pensait que je doit envoyer dans le ciel

Ps: Ne pas oublier c'est vert mais ca seras plus tard de L'uv.

Vu leurs que il ets se seras surtment pour 4h00 du mat et apres ce seras lundi

++

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
(Pour info le projecteur certain qui me connaise l'avait deja vu mais j'avait arreter la fabrications au niveaux de son interface
donc il etait rester dans ca boite sans l'electronique de control fonctionelle

(Pour les connaiseur c'est une patern Ilda convertie sur des 16F878, demultiplier et separee)
1 canal Rouge sur 2 vois (3 cables en tout)
1 canal Vert sur 2 voix (3 cable en tout)
1 canal X sur 2 voix (3 cable en tout)
1 canal Y sur 2 voix (3 cable en tout)


Bon voila. Donc j'ai bricoller un petit projecteur qui a 2 jolie laser
vert et un rouge equipper de 2 system de balayage piezo d'un control de laser fait avec des ampli Op
d'une grose carte de control a base de pic16fxx reprogrammer pour ce que on appele faire des dessin


les photos d'assemblage





un petit test de patern



Alros c'est ca que tu me disait ??



Bon je doit te dire immediatement , Meme ci je controle les piezo a son minimum soit 5mrad a 10 mettres il fait 1m carré a 100m donc tu oublie
c'est juste bon pour dessiner au mur.

La photos ci desssous c'est un petit peut ce que je voit dans la camera de control avec l'argon mais a la place des ligne il ya un spot ca fait de la neige et des anneaux bleu

J eme contenteris de ma premier idée vu que encore une foix ca me convient largement. j'aurait suffisament de detail avec le laser


Bon bin voila , Pour informations l'algorithme a gagner 8% de consommation cpu malgres le fait de tarvailler aussi sur une 2eme etoiles
Et ca c'est thierry qui a bricoler un peut les code de base en utilisant un resaux sur une station solaris etant rendu compatible avec mon system videos sky

je pense que il i auras une petite surprise pour vous lundi soir ou mardi soir

j'en dit pas plus mais vous avez compris

apres cela je prend des vacances je suis OUT. (des vacances avec ma machien a perchlo et mon fer a souder, Oui je sais c'est pas des vacances , lol)


[Ce message a été modifié par Anonymous (Édité le 28-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Ci quelq'un est interesser par les schemas et photos pour ce fabriquer
ce projecteur (On c'est jamais). demander le moi, Il ya pour 120Mo de photos et les plant detailler.)

Je zipperait le tout et ca seras sur mon serveur.

a++

Partager ce message


Lien à poster
Partager sur d’autres sites
Turbulence et déconvolution MCS :

Avec la petite animation suivante que je trouve très intéressante :
http://10.141.0.5/wela.astro.ulg.ac.bee/themes/dataproc/deconv/dec/images/pks.gif

Pour rester dans l'approche déconvolution, est-ce que des astrams utilisent le package AIDA/Priithon pour traiter leurs images planétaires par exemple ? [URL=http://msg.ucsf.edu/AIDA/]http://msg.ucsf.edu/AIDA/

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

Partager ce message


Lien à poster
Partager sur d’autres sites
=> Emmanuel

Pour la grille, ça pourrait ressembler à ce que tu montres, mais dans mon idée, la grille de dimensions 2 à 4 mm de côté serait dessinée sur un film (ou lame de verre) transparent placé au foyer d'un scope en conditions de prise de vue planétaire, disons f/50 comme ordre de grandeur, éclairé avec un système de condenseur par un laser monochromatique aussi puissant que possible.

Dans un premier temps, il serait intéressant de voir ce que l'on récupère de cette image projetée dans le ciel avec un scope de montage analogue situé juste à côté.

Ca c'était mon idée, je crois que la tienne est finalement assez différente et j'attends avec intérêt et curiosité tes prochains résultats

=> ms

Merci pour les liens, c'est super intéressant, j'ai regardé avec intérêt les images de l'article du JOSAA, mais l'installation d'AIDA me semble une usine à gaz.
Et des liens sont cassés (dnl windows ),
Si en plus ça marche en ligne de commande ???

Je l'essaierais bien, mais avec un petit GUI comme on en trouve dans Fitswork ou Image Analyzer qui sont des freewares de traitement proposant des filtrages par déconvolution

PS L'animation ne s'ouvre pas

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

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Salut nebulium

il faut que le film fasse 1mm de coté. trop petit pour moi


Aida. s'installe facile d'ailleurs s'integre direct dans videosksy. faut juste avoir ma dll SDK . sinon je l'ai etudier il ya 6 moi aida.

[Ce message a été modifié par Anonymous (Édité le 28-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
AIDA est une boite à outils "Déconvolution" écrite en langage Python.

Votre environnement de travail (Linux, Windows, Mac, ...) est de la forme :
a) Python 2.6.2
b) Priithon 2.5
c) AIDA 1.2.1

Ce n'est pas une usine à gaz mais un environnement de développement très puissant permettant d'écrire votre propre application en langage Python.

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
PAreil que Ms, c'est pas une usine a gaz.

Alors dans ce cars la vidéoes sky c'est une usine a gaz, et je le pense pas vu que on ne me la jamais dit

Mais Ms, ceux que veut dire Nebulium, c'etsq ue la programmation c'es tpas son truc,
il est vrait que l'instalaltion peut s'averer complexe et l'utilsation aussi

Je pesne meme que le Genre de truc comme ca ca doit le defriser :

/***********************************************************************************************/
/********************* Vidéos Sky (C) Anonymous 2009. *********************/
/********************* *********************/
/********************* Modules de conversion d'images RAW(BMP) *********************/
/********************* Niveaux de Gris et Couleurs en structure FITS *********************/
/********************* *********************/
/********************* Version 2.7.8.9 pour Win 2000, Xp, Vista *********************/
/********************* VSFitsIo.c => VSFitsIo.dll *********************/
/********************* *********************/
/********************* 04 Juin 2009 *********************/
/********************* *********************/
/********************* *********************/
/********************* Note : Version 3.0.9.0 de CFitsio.dll, Fitsio.h *********************/
/********************* *********************/
/***********************************************************************************************/
/* */
/* Pour traiter l'image, le Buffer reçu de ces fonctions doit être de format BMP 256 niveaux */
/* */
/* WriteImageNBEX = Conversion Niveaux de Gris avec Allocation mémoire pour le tableau reçu */
/* WriteImageNB = Conversion Niveaux de Gris sans Allocation mémoire pour le tableau reçu */
/* */
/***********************************************************************************************/
/***********************************************************************************************/
/* */
/* Pour traiter l'image, le Buffer reçu de ces fonctions doit être converti en 3 paquets */
/* le paquet complet Bleu, le paquet complet Vert,le paquet complet Rouge */
/* Ex : pour 5 Pixels */
/* B,B,B,B,B,V,V,V,V,V,R,R,R,R,R */
/* */
/* WriteImageRVBEX = Conversion Couleurs avec Allocation mémoire pour le tableau reçu */
/* WriteImageRVB = Conversion Couleurs sans Allocation mémoire pour le tableau reçu */
/* */
/***********************************************************************************************/
/***********************************************************************************************/
/* */
/* Pour traiter l'image, le Buffer reçu de ces fonctions doit être de format BMP RGB niveaux */
/* La structure interne convertira la structure images */
/* Ex : pour 5 Pixels */
/* B,V,R,B,V,R,B,V,R,B,V,R,B,V,R */
/* */
/* WriteImageRVBconvStructBMPEX = Conversion Coul avec Allocation mémoire pour le tableau reçu */
/* WriteImageRVBconvStructBMP = Conversion Coul sans Allocation mémoire pour le tableau reçu */
/* */
/***********************************************************************************************/


/*

Ci-dessous la déclaration pour Visual Basic :

Public Declare Function WriteImageNBEX Lib "VSFitsIo.dll" (ByVal TailleXFits As Long, ByVal TailleYFits As Long, ByVal ExpoFits As Long, ByVal FilenameFits As String, ByVal UserFits As String, ByVal CameraFits As String, ByVal BlackFits As Long, ByVal WhiteFits As Long, ByVal PedestFits As Long, ByRef ImagesFits As Byte) As Long
Public Declare Function WriteImageNB Lib "VSFitsIo.dll" (ByVal TailleXFits As Long, ByVal TailleYFits As Long, ByVal ExpoFits As Long, ByVal FilenameFits As String, ByVal UserFits As String, ByVal CameraFits As String, ByVal BlackFits As Long, ByVal WhiteFits As Long, ByVal PedestFits As Long, ByRef ImagesFits As Byte) As Long
Public Declare Function WriteImageRVBEX Lib "VSFitsIo.dll" (ByVal TailleXFits As Long, ByVal TailleYFits As Long, ByVal ExpoFits As Long, ByVal FilenameFits As String, ByVal UserFits As String, ByVal CameraFits As String, ByVal BlackFits As Long, ByVal WhiteFits As Long, ByVal PedestFits As Long, ByRef ImagesFits As Byte) As Long
Public Declare Function WriteImageRVB Lib "VSFitsIo.dll" (ByVal TailleXFits As Long, ByVal TailleYFits As Long, ByVal ExpoFits As Long, ByVal FilenameFits As String, ByVal UserFits As String, ByVal CameraFits As String, ByVal BlackFits As Long, ByVal WhiteFits As Long, ByVal PedestFits As Long, ByRef ImagesFits As Byte) As Long
Public Declare Function WriteImageRVBconvStructBMPEX Lib "VSFitsIo.dll" (ByVal TailleXFits As Long, ByVal TailleYFits As Long, ByVal ExpoFits As Long, ByVal FilenameFits As String, ByVal UserFits As String, ByVal CameraFits As String, ByVal BlackFits As Long, ByVal WhiteFits As Long, ByVal PedestFits As Long, ByRef ImagesFits As Byte) As Long
Public Declare Function WriteImageRVBconvStructBMP Lib "VSFitsIo.dll" (ByVal TailleXFits As Long, ByVal TailleYFits As Long, ByVal ExpoFits As Long, ByVal FilenameFits As String, ByVal UserFits As String, ByVal CameraFits As String, ByVal BlackFits As Long, ByVal WhiteFits As Long, ByVal PedestFits As Long, ByRef ImagesFits As Byte) As Long
Public Declare Function VersionOfVSFitsIo Lib "VSFitsIo.dll" () As Boolean

Ci-dessous la structure d'une conversion d'ume Image de 4096*4096 BMP RAW Couleurs (SUPER LENT)

Dim BufferRVB(0 To CLng(4096) * CLng(4096) * 3) As Byte
Dim Buffer(0 To CLng(4096) * CLng(4096) * 3) As Byte
b = 0
For a = 0 To (CLng(4096) * CLng(4096) * CLng(3)) - 1 Step 3
Buffer(b + (CLng(4096) * CLng(4096) * 0)) = BufferRVB(a + 2)
Buffer(b + (CLng(4096) * CLng(4093) * 1)) = BufferRVB(a + 1)
Buffer(b + (CLng(4096) * CLng(4096) * 2)) = BufferRVB(a + 0)
b = b + 1
Next
VersionOfVSFitsIo
*/

#include <string.h>
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include "fitsio.h"
#pragma comment(lib,"user32.lib")

#define EXPORT __declspec(dllexport)

EXPORT long __stdcall WriteImageNBEX(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[]);
EXPORT long __stdcall WriteImageNB(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[]);
EXPORT long __stdcall WriteImageRVBEX(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[]);
EXPORT long __stdcall WriteImageRVB(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[]);
EXPORT long __stdcall WriteImageRVBconvStructBMPEX(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[]);
EXPORT long __stdcall WriteImageRVBconvStructBMP(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[]);
EXPORT void __stdcall VersionOfVSFitsIo(void );

/*--------------------------------------------------------------------------*/

long __stdcall WriteImageNBEX(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[])

/*****************************************/
/* Création d'une structure pour le FTIS */
/*****************************************/
{
fitsfile *fptr; /* Pointeur vers FITS, définit dans fitsio.h */
int status;
long fpixel, nelements, exposureex;

/* Initialisation des paramètres images du FITS */
int bitpix = USHORT_IMG; /* 16-bit valeurs pixels de 0 à 65535 */
long naxis = 2; /* Images en 256 niveaux de gris */
long naxes[2] = { taillex, tailley }; /* Taille de l'image */

unsigned char *arrayex = (unsigned char*) malloc(sizeof(unsigned char)* (taillex * tailley));

status = 0; /* Initialise le status à 0 pour les routines fitsio */

if (!arrayex) { /* Erreur d'allocation */
status = 65530;
return(status);
}

if (tailley > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

if (taillex > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

CopyMemory(arrayex, array, (naxes[0] * naxes[1]));

remove(filename); /* Efface l'ancienne image si elle existe */

if (fits_create_file(&fptr, filename, &status)) /* Conception du nouveau fichier FITS */
return(status); /* Si une Erreur on Stoppe et on renvoit le code d'erreur */

if (fits_create_img(fptr, bitpix, naxis, naxes, &status))
return(status);

exposureex = exposure / 1000;
fpixel = 1; /* 1er pixel à écrire */
nelements = naxes[0] * naxes[1]; /* Nombre de pixels à écrire */

/* Ecrit le contenu du Fits (Images) */
if (fits_write_img(fptr, TBYTE, fpixel, nelements, arrayex, &status))
return(status);

free(arrayex); /* Efface la mémoire */

/* Ecrit les options du Fits */
if (fits_update_key(fptr, TLONG, "EXPOSURE", &exposureex,
"Exposure time in seconds", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "SWOWNER", swowner,
"Licensed owner of software", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "INSTRUME", camera,
"Instrument or camera used", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CBLACK", &cblack,
"Initial display black level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CWHITE", &cwhite,
"Initial display white level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "PEDESTAL", &cpedestral,
"Correction to add for zero-based ADU", &status))
return(status);

if (fits_close_file(fptr, &status)) /* Ferme le Fichier FITS */
return(status);

return(0); /* Si on se trouve ici, c'est que tout s'est passé correctement et on retourne 0 */
}
/*--------------------------------------------------------------------------*/

long __stdcall WriteImageNB(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[])

/*****************************************/
/* Création d'une structure pour le FTIS */
/*****************************************/
{
fitsfile *fptr; /* Pointeur vers FITS, définit dans fitsio.h */
int status;
long fpixel, nelements, exposureex;

/* Initialisation des paramètres images du FITS */
int bitpix = USHORT_IMG; /* 16-bit valeurs pixels de 0 à 65535 */
long naxis = 2; /* Images en 256 niveaux de gris */
long naxes[2] = { taillex, tailley }; /* Taille de l'image */

status = 0; /* Initialise le status à 0 pour les routines fitsio */

if (tailley > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

if (taillex > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

remove(filename); /* Efface l'ancienne image si elle existe */

if (fits_create_file(&fptr, filename, &status)) /* Conception du nouveau fichier FITS */
return(status); /* Si une Erreur on Stoppe et on renvoit le code d'erreur */

if (fits_create_img(fptr, bitpix, naxis, naxes, &status))
return(status);

exposureex = exposure / 1000;
fpixel = 1; /* 1er pixel à écrire */
nelements = naxes[0] * naxes[1]; /* Nombre de pixels à écrire */

/* Ecrit le contenu du Fits (Images) */
if (fits_write_img(fptr, TBYTE, fpixel, nelements, array, &status))
return(status);

/* Ecrit les options du Fits */
if (fits_update_key(fptr, TLONG, "EXPOSURE", &exposureex,
"Exposure time in seconds", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "SWOWNER", swowner,
"Licensed owner of software", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "INSTRUME", camera,
"Instrument or camera used", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CBLACK", &cblack,
"Initial display black level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CWHITE", &cwhite,
"Initial display white level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "PEDESTAL", &cpedestral,
"Correction to add for zero-based ADU", &status))
return(status);

if (fits_close_file(fptr, &status)) /* Ferme le Fichier FITS */
return(status);

return(0); /* Si on se trouve ici, c'est que tout s'est passé correctement et on retourne 0 */
}
/*--------------------------------------------------------------------------*/

long __stdcall WriteImageRVBEX(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[])

/*****************************************/
/* Création d'une structure pour le FTIS */
/*****************************************/
{
fitsfile *fptr; /* Pointeur vers FITS, définit dans fitsio.h */
int status;
long fpixel, nelements, exposureex;

/* Initialisation des paramètres images du FITS */
int bitpix = USHORT_IMG; /* 16-bit valeurs pixels de 0 à 65535 */
long naxis = 3; /* Images en mode RVB */
long rvb = 3;
long naxes[3] = { taillex, tailley, rvb }; /* Taille de l'image */

unsigned char *arrayex = (unsigned char*) malloc(sizeof(unsigned char)* (taillex * tailley * 3));

status = 0; /* Initialise le status à 0 pour les routines fitsio */

if (!arrayex) { /* Erreur d'allocation */
status = 65530;
return(status);
}

if (tailley > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

if (taillex > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

CopyMemory(arrayex, array, (naxes[0] * naxes[1] * naxes[2]));

remove(filename); /* Efface l'ancienne image si elle existe */

if (fits_create_file(&fptr, filename, &status)) /* Conception du nouveau fichier FITS */
return(status); /* Si une Erreur on Stoppe et on renvoit le code d'erreur */

if (fits_create_img(fptr, bitpix, naxis, naxes, &status))
return(status);

exposureex = exposure / 1000;
fpixel = 1; /* 1er pixel à écrire */
nelements = naxes[0] * naxes[1] * naxes[2]; /* Nombre de pixels à écrire */

/* Ecrit le contenu du Fits (Images) */
if (fits_write_img(fptr, TBYTE, fpixel, nelements, arrayex, &status))
return(status);

free(arrayex); /* Efface la mémoire */

/* Ecrit les options du Fits */
if (fits_update_key(fptr, TLONG, "EXPOSURE", &exposureex,
"Exposure time in seconds", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "SWOWNER", swowner,
"Licensed owner of software", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "INSTRUME", camera,
"Instrument or camera used", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CBLACK", &cblack,
"Initial display black level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CWHITE", &cwhite,
"Initial display white level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "PEDESTAL", &cpedestral,
"Correction to add for zero-based ADU", &status))
return(status);

if (fits_close_file(fptr, &status)) /* Ferme le Fichier FITS */
return(status);

return(0); /* Si on se trouve ici, c'est que tout s'est passé correctement et on retourne 0 */
}
/*--------------------------------------------------------------------------*/

long __stdcall WriteImageRVB(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[])

/*****************************************/
/* Création d'une structure pour le FTIS */
/*****************************************/
{
fitsfile *fptr; /* Pointeur vers FITS, définit dans fitsio.h */
int status;
long fpixel, nelements, exposureex;

/* Initialisation des paramètres images du FITS */
int bitpix = USHORT_IMG; /* 16-bit valeurs pixels de 0 à 65535 */
long naxis = 3; /* Images en mode RVB */
long rvb = 3;
long naxes[3] = { taillex, tailley, rvb }; /* Taille de l'image */

status = 0; /* Initialise le status à 0 pour les routines fitsio */

if (tailley > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

if (taillex > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

remove(filename); /* Efface l'ancienne image si elle existe */

if (fits_create_file(&fptr, filename, &status)) /* Conception du nouveau fichier FITS */
return(status); /* Si une Erreur on Stoppe et on renvoit le code d'erreur */

if (fits_create_img(fptr, bitpix, naxis, naxes, &status))
return(status);

exposureex = exposure / 1000;
fpixel = 1; /* 1er pixel à écrire */
nelements = naxes[0] * naxes[1] * naxes[2]; /* Nombre de pixels à écrire */

/* Ecrit le contenu du Fits (Images) */
if (fits_write_img(fptr, TBYTE, fpixel, nelements, array, &status))
return(status);

/* Ecrit les options du Fits */
if (fits_update_key(fptr, TLONG, "EXPOSURE", &exposureex,
"Exposure time in seconds", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "SWOWNER", swowner,
"Licensed owner of software", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "INSTRUME", camera,
"Instrument or camera used", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CBLACK", &cblack,
"Initial display black level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CWHITE", &cwhite,
"Initial display white level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "PEDESTAL", &cpedestral,
"Correction to add for zero-based ADU", &status))
return(status);

if (fits_close_file(fptr, &status)) /* Ferme le Fichier FITS */
return(status);

return(0); /* Si on se trouve ici, c'est que tout s'est passé correctement et on retourne 0 */
}
/*--------------------------------------------------------------------------*/

long __stdcall WriteImageRVBconvStructBMPEX(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[])

/*****************************************/
/* Création d'une structure pour le FTIS */
/*****************************************/
{
fitsfile *fptr; /* Pointeur vers FITS, définit dans fitsio.h */
int status, ii, jj;
long fpixel, nelements, exposureex;

/* Initialisation des paramètres images du FITS */
int bitpix = USHORT_IMG; /* 16-bit valeurs pixels de 0 à 65535 */
long naxis = 3; /* Images en mode RVB */
long rvb = 3;
long naxes[3] = { taillex, tailley, rvb }; /* Taille de l'image */

unsigned char *arrayex = (unsigned char*) malloc(sizeof(unsigned char)* (taillex * tailley * 3));
unsigned char *arrayexconv = (unsigned char*) malloc(sizeof(unsigned char)* (taillex * tailley * 3));

status = 0; /* Initialise le status à 0 pour les routines fitsio */

if (!arrayex) { /* Erreur d'allocation */
status = 65530;
return(status);
}

if (!arrayexconv) { /* Erreur d'allocation */
status = 65530;
return(status);
}

if (tailley > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

if (taillex > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

CopyMemory(arrayex, array, (naxes[0] * naxes[1] * naxes[2]));

jj = 0;
for (ii = 0; ii < ((naxes[0] * naxes[1] * naxes[2]) - 1); ii = ii + 3){
arrayexconv[jj + (naxes[0] * naxes[1] * 0)] = arrayex[ii + 2];
arrayexconv[jj + (naxes[0] * naxes[1] * 1)] = arrayex[ii + 1];
arrayexconv[jj + (naxes[0] * naxes[1] * 2)] = arrayex[ii + 0];
jj = jj + 1;
}

remove(filename); /* Efface l'ancienne image si elle existe */

if (fits_create_file(&fptr, filename, &status)) /* Conception du nouveau fichier FITS */
return(status); /* Si une Erreur on Stoppe et on renvoit le code d'erreur */

if (fits_create_img(fptr, bitpix, naxis, naxes, &status))
return(status);

exposureex = exposure / 1000;
fpixel = 1; /* 1er pixel à écrire */
nelements = naxes[0] * naxes[1] * naxes[2]; /* Nombre de pixels à écrire */

/* Ecrit le contenu du Fits (Images) */
if (fits_write_img(fptr, TBYTE, fpixel, nelements, arrayexconv, &status))
return(status);

free(arrayex); /* Efface la mémoire */
free(arrayexconv); /* Efface la mémoire */

/* Ecrit les options du Fits */
if (fits_update_key(fptr, TLONG, "EXPOSURE", &exposureex,
"Exposure time in seconds", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "SWOWNER", swowner,
"Licensed owner of software", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "INSTRUME", camera,
"Instrument or camera used", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CBLACK", &cblack,
"Initial display black level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CWHITE", &cwhite,
"Initial display white level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "PEDESTAL", &cpedestral,
"Correction to add for zero-based ADU", &status))
return(status);

if (fits_close_file(fptr, &status)) /* Ferme le Fichier FITS */
return(status);

return(0); /* Si on se trouve ici, c'est que tout s'est passé correctement et on retourne 0 */
}
/*--------------------------------------------------------------------------*/

long __stdcall WriteImageRVBconvStructBMP(long taillex, long tailley, long exposure, char filename[], char swowner[], char camera[], long cblack, long cwhite, long cpedestral, unsigned char array[])

/*****************************************/
/* Création d'une structure pour le FTIS */
/*****************************************/
{
fitsfile *fptr; /* Pointeur vers FITS, définit dans fitsio.h */
int status, ii, jj;
long fpixel, nelements, exposureex;

/* Initialisation des paramètres images du FITS */
int bitpix = USHORT_IMG; /* 16-bit valeurs pixels de 0 à 65535 */
long naxis = 3; /* Images en mode RVB */
long rvb = 3;
long naxes[3] = { taillex, tailley, rvb }; /* Taille de l'image */

unsigned char *arrayexconv = (unsigned char*) malloc(sizeof(unsigned char)* (taillex * tailley * 3));

status = 0; /* Initialise le status à 0 pour les routines fitsio */

if (!arrayexconv) { /* Erreur d'allocation */
status = 65530;
return(status);
}

if (tailley > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

if (taillex > 4096) { /* Erreur de taille */
status = 65535;
return(status);
}

jj = 0;
for (ii = 0; ii < ((naxes[0] * naxes[1] * naxes[2]) - 1); ii = ii + 3){
arrayexconv[jj + (naxes[0] * naxes[1] * 0)] = array[ii + 2];
arrayexconv[jj + (naxes[0] * naxes[1] * 1)] = array[ii + 1];
arrayexconv[jj + (naxes[0] * naxes[1] * 2)] = array[ii + 0];
jj = jj + 1;
}

remove(filename); /* Efface l'ancienne image si elle existe */

if (fits_create_file(&fptr, filename, &status)) /* Conception du nouveau fichier FITS */
return(status); /* Si une Erreur on Stoppe et on renvoit le code d'erreur */

if (fits_create_img(fptr, bitpix, naxis, naxes, &status))
return(status);

exposureex = exposure / 1000;
fpixel = 1; /* 1er pixel à écrire */
nelements = naxes[0] * naxes[1] * naxes[2]; /* Nombre de pixels à écrire */

/* Ecrit le contenu du Fits (Images) */
if (fits_write_img(fptr, TBYTE, fpixel, nelements, arrayexconv, &status))
return(status);

free(arrayexconv); /* Efface la mémoire */

/* Ecrit les options du Fits */
if (fits_update_key(fptr, TLONG, "EXPOSURE", &exposureex,
"Exposure time in seconds", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "SWOWNER", swowner,
"Licensed owner of software", &status))
return(status);

if (fits_update_key(fptr, TSTRING, "INSTRUME", camera,
"Instrument or camera used", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CBLACK", &cblack,
"Initial display black level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "CWHITE", &cwhite,
"Initial display white level in ADUs", &status))
return(status);

if (fits_update_key(fptr, TLONG, "PEDESTAL", &cpedestral,
"Correction to add for zero-based ADU", &status))
return(status);

if (fits_close_file(fptr, &status)) /* Ferme le Fichier FITS */
return(status);

return(0); /* Si on se trouve ici, c'est que tout s'est passé correctement et on retourne 0 */
}

void __stdcall VersionOfVSFitsIo(void )

{
MessageBox(0,"Version 2.7.8.9 de VSFitsIo.dll pour Win 2000, Xp, Vista. © Anonymous 2008-2009.","Version de la Dll VSFitsIo",0);
MessageBox(0,"Version 3.0.9.0 de CFitsio.dll pour Win 2000, Xp, Vista. © Astrophysic Science Archive Research Center (HEASARC).","Version de la Dll CFitsio",0);

}
/*--------------------------------------------------------------

[Ce message a été modifié par Anonymous (Édité le 28-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Merci pour vos réponses, je retire le terme d'usine à gaz
Pour moi, j'appelle ainsi tout ce qui ne marche pas avec un (double ?) clic sur l'exe, avec un interface pour utilisateur béotien qui apparaît aussitôt

Emmanuel, 1 mm c'est le diamètre de ton faisceau laser au départ?
Et de toute façon, il faudrait peut-être aussi recolllimater le faisceau pour qu'il couvre tout l'objectif du scope.
Même de cette taille, la grille pourrait être faite sur du film photo argentique, il y aurait bien quelqu'un qui en fait encore, par ici?

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Ok pour l'usine a gaz

LE faisceau au depart fait 5 mm mais Meme 5 mm je pourait jamais faire une grille sur du verre aussi petite

CI ta le moyen de le fabriquer Je le test

Oui je voit un peut, Decolimater pour l'avoir plus large en le remetant coherants. puit le recolimater. en le reredant coherants

ya un paquets de lentille (4)


[Ce message a été modifié par Anonymous (Édité le 28-06-2009).]

[Ce message a été modifié par Anonymous (Édité le 28-06-2009).]

Partager ce message


Lien à poster
Partager sur d’autres sites
Mais si ton laser fait 5mm de diam avec une divergence de 10" et la grille 4x4 mm, il suffirait de tirer le laser simplement à travers la grille, sans lentilles ni scope, non ?

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Oui dacord avec toi
mais ci je prend uen pelicule 24x36 en suposant que c'est une diapo
LA definition de la grille serait t'elle presnete en 5x5 ????
et surtout Sufisament opaque ??

en 24x36 L'opactiter d'une diapo et la definition es fesables

et techniqument l'aproche avec 4 lentille je peut la faire dans une boite de 10 cm de large 10 cm de hauteur et 20 cm de long c'es tacrochables sur un telescope

Juste aussi une info pour toi
Avec le laser regler a 2W, En sortie direct soit sur un faisceau de 5mm . Adios la pelicule photos et meme le carton. Ca prend feu alors a 4W c'est beaucoup trop chaux

uend iapo en 24x36 equiper de la meme grille je peut le faire. emplus on pourait la glisser dans le montage comme un projecteur de diapo facillmment

a++

[Ce message a été modifié par Anonymous (Édité le 28-06-2009).]

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