### Author Topic: Image Plate Solve Script  (Read 37753 times)

#### Andres.Pozo

• PTeam Member
• Posts: 868
##### Image Plate Solve Script
« on: 2012 February 28 06:04:14 »
Some time ago I a had an idea for implementing a plate solving algorithm using Pixinsight. The idea is quite simple: using StarGenerator we generate a reference image with known coordinates. Then with StarAlignment we align the image which we want to solve against the reference image.

For generating the reference image we need to estimate the coordinates of the center of the image. The coordinates don't need to be very precise, but they must be inside the image. Also, for estimating the resolution of the image the user has to set the focal length and pixel size of the camera. Again, this parameters don't need to be very precise, but they should be within a factor of two of the real values. The algorithm iterates using the results of the last step as inputs of the following step.
The initial values can be initialized from the keywords OBJCTRA, OBJCTDEC, FOCALLEN,  XPIXSZ, YPIXSZ and DATE_OBS if present in the image.

The result of the algorithm is like this:
Code: [Select]
`Image plate-solve v0.1:------------------------Referentiation Matrix (Coords[RA,Dec] = Matrix * Coords[x,y]):[ -0.0002884164925960009 -0.0000058272042116800396 315.23540731195320.0000056731204796174085 -0.0002884526396079686 43.8871948821042250 0 1]Resolution X: 1.0385 arcsec/pixResolution Y: 1.0386 arcsec/pixResolution: 1.0386 arcsec/pixRotation: -1.138191 degFocal: 1469.67 mmImage center:    RA: +20 59 46.066    Dec: +43 36 26.229Image bounds:    TopLeft: RA: +21 00 56.498 Dec: +43 53 13.902    TopRight: RA: +20 58 38.404 Dec: +43 53 54.646    BottomLeft: RA: +21 00 53.729 Dec: +43 18 57.811    BottomRight: RA: +20 58 35.635 Dec: +43 19 38.556`
I have been trying to analyze the precision of the results, but I can only compare with astrometry.net. I don't know the precision of astrometry.net, but my script is usually at 1 or 2 arcseconds of it. Also, I have only tried with my images taken with a 8" SCT with resolutions between 0.6" and 1.2" and LRGB and narrowband filters. It would be very helpful if somebody could test the script using images of different resolutions and signal levels and also compare the results with other programs (PinPoint?).
The precision of the algorithm depends on the precision of the PixInsight's star database and of the precision of StarAlignment.

There is still work to do:
• The dialog should let to set the resolution of the image choosing between focal & pixelsize or arcsec/px.
• There should be a checkbox for activating the writing of the WCS keywords in the image (http://fits.gsfc.nasa.gov/fits_wcs.html).

I hope that this script is useful for someone.

Edited for removing an obsolete version of the script. Please, use the last version.
« Last Edit: 2012 March 01 04:27:29 by Andres.Pozo »

#### georg.viehoever

• PTeam Member
• PixInsight Jedi Master
• Posts: 2124
##### Re: Image Plate Solve Script
« Reply #1 on: 2012 February 28 08:01:56 »
This is really cool  . Thought about doing something like this myself, but never came around to it!

Remark about astrometry.net/BlindSolver: The special thing about this is that it does not necessarily need hints about scale and region. Solves are usually ok, but if you want sub-arc-second accuracy, you need a more accurate plate solver as a second stage. Also, occasionally, astrometry.net gets things very wrong.

Georg
Georg (6 inch Newton, unmodified Canon EOS40D+80D, unguided EQ5 mount)

#### Andres.Pozo

• PTeam Member
• Posts: 868
##### Re: Image Plate Solve Script
« Reply #2 on: 2012 February 28 08:44:53 »
I have a question for Juan: ¿In the matrix returned by StarAlign what coordinate convention is used? ¿What coordinates in pixels has the center of the top-left pixel of the image? ¿(0,0)? ¿0.5,0.5)? ¿(1,1)?

#### Carlos Milovic

• PTeam Member
• PixInsight Jedi Master
• Posts: 2169
• Join the dark side... we have cookies
##### Re: Image Plate Solve Script
« Reply #3 on: 2012 February 28 09:47:56 »
(0.5,0.5)
Regards,

Carlos Milovic F.
--------------------------------
PixInsight Project Developer
http://www.pixinsight.com

#### Andres.Pozo

• PTeam Member
• Posts: 868
##### Re: Image Plate Solve Script
« Reply #4 on: 2012 February 28 09:57:16 »
Thanks Carlos. That is what I assumed when I wrote the script.

I have been reading about FITS WCS and it uses (1,1) for the first pixel. Section 2.1.4 at http://www.aanda.org/index.php?...

#### Andres.Pozo

• PTeam Member
• Posts: 868
##### Re: Image Plate Solve Script
« Reply #5 on: 2012 February 29 01:23:17 »
I have found an error in the v0.1 version of the script. A new fixed version is attached.

Yesterday I analyzed the precision of the algorithm and I found that the center coordinates are ok but not the corners nor the resolution.
I have to understand better the gnomonic projection and how StarGenerator uses it. I will keep working on this.

Edited for removing an obsolete version of the script. Please, use the last version.
« Last Edit: 2012 March 01 04:27:49 by Andres.Pozo »

#### Juan Conejero

• PTeam Member
• PixInsight Jedi Grand Master
• Posts: 6431
##### Re: Image Plate Solve Script
« Reply #6 on: 2012 February 29 10:30:00 »
Nice work, Andrés!

I've played with the script and it has worked well for a wide field shot (105 mm) but I've had to reduce the limit magnitude (otherwise StarGenerator takes ages; I have to improve it) and StarAlignment does not correct for wide field distortions. For long focal lengths this script should work very well if we had a much denser (and precise) star catalog. With PPMX there are too few stars in most cases. We have a lot of work to do here!
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

#### Andres.Pozo

• PTeam Member
• Posts: 868
##### Re: Image Plate Solve Script
« Reply #7 on: 2012 March 01 04:26:13 »
Last night I improved the algorithm and now it gets much better precision. It is also faster since it converges in less iterations. In fact, usually after only 2 iterations the result it is good enough.

The algorithm finds a transformation matrix that transform between pixel coordinates to rectangular coordinates projected with a gnomonic projection. After this, the celestial coordinates (RA,Dec) are calculated using the inverse transformation of the gnomonic projection.

I have made several comparisons with images solved with Pinpoint LE and the results of the script are very similar. The difference in the center of image and the four corners is usually less than 1 arcsecond.

Code: [Select]
`Image plate-solve v0.2:------------------------Referentiation Matrix (Gnomonic = Matrix * Coords[x,y]):    -0.0005499025856485008 0.0012010112162600477 -0.23786918649860667    -0.0012024127660266374 -0.0005506869240066633 1.6027866280764136    0 0 1Resolution..... 4.7582 arcsec/pixRotation....... -114.624791 degFocal.......... 411.82 mmImage center... RA: +05 04 56.325  Dec:-07 15 55.952Image bounds:  TopLeft...... RA: +05 05 54.144 Dec: -08 52 05.014  TopRight..... RA: +05 10 26.512 Dec: -06 23 49.330  BottomLeft... RA: +04 59 24.863 Dec: -08 07 47.598  BottomRight.. RA: +05 03 58.918 Dec: -05 39 46.437`
Now I have all the pieces necessary for constructing the WCS keywords. I hope to have it ready in a few days.

Edited for removing an obsolete version of the script. Please, use the last version.
« Last Edit: 2012 March 05 07:22:43 by Andres.Pozo »

#### Andres.Pozo

• PTeam Member
• Posts: 868
##### Re: Image Plate Solve Script
« Reply #8 on: 2012 March 01 08:56:42 »
I have tested the script with the entries of this month contest. I have been able to solve all but one:

IC 342
------------------------
Referentiation Matrix (Gnomonic = Matrix * Coords[x,y]):
0.0005928055309323613 0.0004721516334621138 -0.3641335937119266
0.0004728565185741555 -0.0005916493493551539 -0.00987076357729913
0 0 1
Resolution..... 2.7274 arcsec/pix
Rotation....... -51.364863 deg
Image center... RA: +03 46 48.761  Dec:+68 05 53.511
Image bounds:
TopLeft...... RA: +03 50 43.399 Dec: +68 06 19.140
TopRight..... RA: +03 45 51.281 Dec: +67 44 41.531
BottomLeft... RA: +03 47 48.030 Dec: +68 27 04.205
BottomRight.. RA: +03 42 54.326 Dec: +68 05 07.112

Abell 21
------------------------
Referentiation Matrix (Gnomonic = Matrix * Coords[x,y]):
-0.00017752461864504115 -0.0003462425984331703 0.33785349020514893
0.0003465636739290167 -0.00017736813001716022 -0.10858073741452492
0 0 1
Resolution..... 1.4011 arcsec/pix
Rotation....... 117.097688 deg
Image center... RA: +07 28 52.881  Dec:+13 18 08.828
Image bounds:
TopLeft...... RA: +07 27 29.488 Dec: +13 24 38.958
TopRight..... RA: +07 28 25.952 Dec: +12 57 52.795
BottomLeft... RA: +07 29 19.885 Dec: +13 38 24.683
BottomRight.. RA: +07 30 16.199 Dec: +13 11 37.000

IC 434
------------------------
Referentiation Matrix (Gnomonic = Matrix * Coords[x,y]):
0.00011493140954809154 -0.0013640430722459327 1.0403898575396264
0.0013645330330926432 0.00011602831684888024 -0.9141934627080415
0 0 1
Resolution..... 4.9290 arcsec/pix
Rotation....... 85.153468 deg
Image center... RA: +05 38 35.029  Dec:-02 15 29.564
Image bounds:
TopLeft...... RA: +05 34 25.131 Dec: -01 20 34.277
TopRight..... RA: +05 33 51.636 Dec: -02 59 01.900
BottomLeft... RA: +05 43 18.138 Dec: -01 31 53.783
BottomRight.. RA: +05 42 45.241 Dec: -03 10 22.162

IC 410
------------------------
Referentiation Matrix (Gnomonic = Matrix * Coords[x,y]):
0.000004488091200476447 0.0004522264429892269 -0.2470204484846687
-0.0004512441673826314 0.000004807985415067577 0.3053680102246028
0 0 1
Resolution..... 1.6263 arcsec/pix
Rotation....... -89.347971 deg
Image center... RA: +05 22 45.113  Dec:+33 24 57.636
Image bounds:
TopLeft...... RA: +05 23 55.960 Dec: +33 06 36.224
TopRight..... RA: +05 23 54.695 Dec: +33 43 35.274
BottomLeft... RA: +05 21 36.027 Dec: +33 06 17.587
BottomRight.. RA: +05 21 33.765 Dec: +33 43 16.513

IC2935, NGC2660 and Vela SNR
------------------------
Referentiation Matrix (Gnomonic = Matrix * Coords[x,y]):
-0.000002322224546967854 -0.0005849419845754362 0.840461421527047
0.0005845852099993975 -0.000002310131817363132 -1.2506452759052227
0 0 1
Resolution..... 2.1052 arcsec/pix
Rotation....... 90.244416 deg
Image center... RA: +08 39 39.350  Dec:-48 10 14.721
Image bounds:
TopLeft...... RA: +08 34 44.207 Dec: -46 54 49.431
TopRight..... RA: +08 34 33.086 Dec: -49 25 14.750
BottomLeft... RA: +08 44 30.961 Dec: -46 54 26.275
BottomRight.. RA: +08 44 49.243 Dec: -49 24 50.428

NGC 7635
------------------------
Referentiation Matrix (Gnomonic = Matrix * Coords[x,y]):
-0.000012054661364035286 0.0002167142613088296 -0.2028667913942405
-0.0002167986511588695 -0.000012184676337912991 0.22847614359138313
0 0 1
Resolution..... 0.7815 arcsec/pix
Rotation....... -93.210448 deg
Image center... RA: +23 20 45.632  Dec:+61 11 44.619
Image bounds:
TopLeft...... RA: +23 22 25.988 Dec: +60 57 59.086
TopRight..... RA: +23 22 39.451 Dec: +61 23 57.829
BottomLeft... RA: +23 18 53.281 Dec: +60 59 25.520
BottomRight.. RA: +23 19 03.809 Dec: +61 25 25.446

#### Juan Conejero

• PTeam Member
• PixInsight Jedi Grand Master
• Posts: 6431
##### Re: Image Plate Solve Script
« Reply #9 on: 2012 March 01 09:03:44 »
Brilliant work, Andrés!
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

#### Alejandro Tombolini

• PTeam Member
• PixInsight Jedi
• Posts: 1245
##### Re: Image Plate Solve Script
« Reply #10 on: 2012 March 01 18:03:37 »
I have tested the script with the entries of this month contest. I have been able to solve all but one:

Jaja, great script, thank you!

Saludos.
Alejandro.

#### Alejandro Tombolini

• PTeam Member
• PixInsight Jedi
• Posts: 1245
##### Re: Image Plate Solve Script
« Reply #11 on: 2012 March 01 18:20:19 »
Hola Andrés,

Where can I find the Star Database?

Regards, Alejandro.

#### Enzo De Bernardini

• PTeam Member
• Posts: 262
• Resistance is futile.
##### Re: Image Plate Solve Script
« Reply #12 on: 2012 March 01 21:33:41 »
Hola Andrés,

Where can I find the Star Database?

Regards, Alejandro.

Here:

"PPMX Astrometric Catalog"

Greetings,

Enzo.

#### johnrt

• Newcomer
• Posts: 22
##### Re: Image Plate Solve Script
« Reply #13 on: 2012 March 02 01:52:41 »
I'm using a Mac with stuffit expander - it will not open the PPMX.bin file. Any way to open this on Mac?

• PTeam Member