4

What I'm trying to do is to create a relation between an image which has been taken by a mobile phone and a constellation. Let's suppose I've been given the whole coordinates of each constellations from NASA and I can recognize some specified objects as coordinate points on the image. How can I make a relation between those different coordinates? How can I point geometrical similarities between image and any constellation? What kind of an algorithm could help the situation?

enter image description here

Spektre
  • 49,595
  • 11
  • 110
  • 380
Mustafa Güven
  • 15,526
  • 11
  • 63
  • 83

2 Answers2

4
  1. I think you would be better of with comparing star position,brightness,color

    The outline image and constellation stars are not that similar as you think. Don't know what kind of phone you want to use but the stars visible by human eye and on the photo will not be the same. You will have to consider the loss of data due to different light sensitivity, due to outdoor conditions (clouds,moisture,temperature,dust,light polution) so often many stars will not be visible on the photo

  2. so create list of stars per each constellation

    you will need position,color (BV index),magnitude

  3. comparison

    detect all/bright stars from photo and sort them by brightness descending. Correlate with stored data per each constellation (also sorted) and choose constellation with high enough similarity. If you want more invariant data on rotation,scale then compare distances between bright stars instead of positions

  4. now you know the constellation

    so add image for it ...

[notes]

here some related links:

this is real (with marked the stars)

real image

and rendered image for comparison

rendered image

real image was taken by camera and tripod. You can often expect missing few stars from constellation according to visual conditions. On phones it is usually much much worse.

Here mine Constellations data I created a decade ago ...

    // constellations (-2 means MoveTo, >=0 means LineTo BSC star ID)
    sadd("Ursa minor"       ,420,6777,6311,5893,5553,5725,6106,5893);
    sadd("Andromeda"        ,14,333,600,333,265,222);
    sadd("Triangulum"       ,540,660,618,540);
    sadd("Camelopardalis"   ,1537,1598);            //neni cele !!!
    sadd("Cassiopeia"       ,538,399,260,165,20);
    sadd("Perseus"          ,1198,1215,1117,1013,911,1013,932,875,917,943,932);
    sadd("Auriga"           ,2089,2082,1703,1600,1587,1572,-2,1636,1600,1607);
    sadd("Lynx"             ,3695,3680,3570,3267);
    sadd("Leo minor"        ,4090,4237);            //neni cele !!!
    sadd("Ursa major"       ,5181,5045,4895,4650,4291,4285,4544,4650,4291,3747,3315,-2,4285,3765,3560,3765,3585,-2,4544,4508,4325,4059,4325,4023);
    sadd("Canes venatici"   ,4905,4775);            //neni cele !!!
    sadd("Hercules"         ,6683,6474,6407,6313,6202,6210,6407,6210,6158,6082,6013,5972,-2,6085,6138,6202,6313,6399,6514,6611,6691,6767);
    sadd("Draco"            ,6676,6693,6524,6543,6676,7297,7568,6915,6385,6122,5976,5734,5281,4777,4424);
    sadd("Lyra"             ,6989,7044,7127,7166,7094,7044);
    sadd("Cygnus"           ,7405,7465,7601,7782,7910,-2,8101,7935,7782,7515,7407,7315);
    sadd("Cepheus"          ,7836,7943,8148,8556,8450,-2,8479,8556,8679,8959,8679,8224,8148);
    sadd("Lacerta"          ,8598,8570,8523,8570,8526,8557,8508,8564,8470,8483,-2,8564,8617,8557);

    sadd("Cetus"            ,184,330,73,330,398,535,505,581,-2,535,677,735,775,800,907,800,750,714,809,892);
    sadd("Pisces"           ,348,379,356,347,433,506,592,545,485,430,290,220,9057,8954,8901,8863,8758,8837,8896,8969,8954,8969,9052,2);
    sadd("Eridanus"         ,1661,1515,1458,1320,1476,1491,-2,1320,1293,1226,1131,1079,984,870,915,999,1083,1168,1235,1459,1388,1342,1185,894,790,717,670,562,468);
    sadd("Fornax"           ,959,837);            //neni cele !!!
    sadd("Columba"          ,2290,2100,2034,1950,1856);
    sadd("Taurus"           ,2089,1404,1384,1368,1341,1234,1341,1407,1452,1651,1904,-2,1452,1404,1251,1160);
    sadd("Lepus"            ,2029,1859,1697,1751,-2,1700,1697,1649,1824,1859,1977);
    sadd("Orion"            ,1943,1897,1846,1730,1708,1998,1943,2055,1870,1785,1846);
    sadd("Canis major"      ,2649,2588,2484,2288,2484,2645,2685,2638,2610,2276,-2,2819,2758,2685);
    sadd("Gemini"           ,2982,2965,2883,2844,2689,2466,2280,2337,2415,2642,2769,2977,2982);
    sadd("Monoceros"        ,3180,2962,2706,2350,2221,-2,2706,2498,2293);
    sadd("Cancer"           ,3467,3441,3453,3563,3453,3311,3241);
    sadd("Canis minor"      ,2935,2837);            //neni cele !!!
    sadd("Hydra"            ,3538,3474,3402,3410,3446,3538,3656,3777,3738,3893,3960,3984,4084,4222,4307,4440,4542,4948,5010,5070,5277,-2,3738,3699,3632,3451,3306,3451,3476);
    sadd("Pyxis"            ,3430,3460,3509);
    sadd("Sextans"          ,4183,3971,3899);       //neni cele !!!
    sadd("Antlia"           ,4094,4094);            //neni cele !!!
    sadd("Virgo"            ,4507,4530,4679,4816,4900,4922,-2,4816,4953,5046,4953,5097);
    sadd("Corvus"           ,4776,4620,4652,4747,4776);
    sadd("Crater"           ,4395,4372,4277,4333,4395);
    sadd("Bootes"           ,5225,5330,5496,5671,5592,5425,5419,5330);
    sadd("Corona borealis"  ,5937,5879,5839,5783,5737,5768);
    sadd("Libra"            ,5593,5521,5675,5777);
    sadd("Serpens caput"    ,5923,5857,5869,5857,5779,5844,5882,6046,6065,6165,6367,6442);
    sadd("Serpens cauda"    ,6367,6549,6686,6722,6857,7130);
    sadd("Ophiuchus"        ,6686,6617,6591,6544,6396,6289,6139,6046);
    sadd("Scorpius"         ,6515,6568,6603,6546,6369,6261,6237,6231,6155,6124,6074,5934,-2,5943,6074,5975);
    sadd("Scutum"           ,6961,7051);
    sadd("Sagittarius"      ,6800,6901,7027,7109,7204,7251,7204,7138,-2,7181,7221,7109,-2,6901,6847,6734,6847,6867,6820);
    sadd("Vulpecula"        ,7392,7643);
    sadd("Sagitta"          ,7475,7523,7466,7523,7621);
    sadd("Delphinus"        ,7838,7868,7914,7934,7892,7868);
    sadd("Aquila"           ,7512,7543,7222,7364,7556,7696,7588,7543,7364,7223);
    sadd("Capricrnus"       ,7740,7762,7808,7922,7966,8066,8190,8199,8246,8307,8264,8153,8061,7762);
    sadd("Piscis austrinus" ,8613,8713,8705,8680,8561);
    sadd("Pegasus"          ,8635,8760,8766,8650,8619,8435,8293,8619,-2,8300,8415,8652,8669,8760,14,38,8766);
    sadd("Equuleus"         ,8117,8109,8083);
    sadd("Aquarius"         ,7936,8218,8399,8503,8544,8582,8683,8664,8694,8797);

    sadd("Hydrus"           ,587,1203,95);
    sadd("Phoenix"          ,96,318,436,425,96);
    sadd("Reticulum"        ,1331,1350,1242,1170,1331);
    sadd("Dorado"           ,1916,1460,1333);
    sadd("Pictor"           ,2542,2036,2014);
    sadd("Volans"           ,3606,3339,2795,2728,3016);
    sadd("Carina"           ,2320,3299,3689,3881,3675,4027,4189,4130,4040,3689);
    sadd("Puppis"           ,3177,3094,3037,2941,2779,2765,3157,2870,2545,2445,2765);
    sadd("Vela"             ,3625,3199,3477,3724,3625,3477,-2,3724,3793);
    sadd("Chamaeleon"       ,3310,4164,4224);
    sadd("Musca"            ,4510,4661,4788,4763,4913,4834,4788);
    sadd("Crux"             ,4843,4646,-2,4753,4721);
    sadd("Centaurus"        ,4611,4809,5122,5257,5449,-2,5122,5221,5183,5180,5018,-2,5180,5278,5430,5566);
    sadd("Circinus"         ,5660,5453,5694);
    sadd("Triangulum Australe",6207,5661,5761,5887,6207);
    sadd("Lupus"            ,5938,5766,5685,5695,-2,5459,5561,5685,5766,5698,5639);
    sadd("Norma"            ,6062,6105);
    sadd("Ara"              ,6499,6450,6275,6285,-2,6219,6275,6450,6451,6489);
    sadd("Telescopium"      ,6893,6885);
    sadd("Corona Australis" ,7140,7214,7241,7246,7229,7176);
    sadd("Apus"             ,5460,6011,6092,6153);
    sadd("Octans"           ,5329,8615,8240);
    sadd("Tucana"           ,124,8833,8487);
    sadd("Grus"             ,8660,8621,8541,8410,-2,8541,8471,8396,8338);
    sadd("Pavo"             ,7776,7899,7651,7062,6570,6970,7576,7899);
    sadd("Indus"            ,7776,7972,7906,7855);

As your star database you can easily use BSC (Yale Bright Stars Catalog). Constellations above are just poly-lines connecting stars from BSC to form the image. There are many constellation representations so if you do not like some rewrite them to your liking. neni cele !!! comment means it is unfinished.

Spektre
  • 49,595
  • 11
  • 110
  • 380
  • Im not going to take photos of stars. I'll shoot something and filter some objects inside of it and finally try to find a constellation that has similar line pattern with it. You have shared some polylines above are they x points on the surface? – Mustafa Güven Mar 10 '15 at 21:58
  • @MustafaGüven in that case you should add input images examples, the polylines are just connected stars not positions you have to take their positions from BSC catalog each number is an index of star (line from catalog) so you need to take `Ra,Dec` of selected star project it on sphere and take the x,y,z .... – Spektre Mar 11 '15 at 08:05
0

Why don't you use the excellent astrometry.net software to solve the astrometry of your photograph? That way you'll immediately know the exact pointing and field-of-view of your pictures, and hence in which constellation they are.

HBouy
  • 245
  • 3
  • 14
  • I heard it for the first time, do you know how to use it? – Mustafa Güven Apr 20 '15 at 08:46
  • Yes, it is fairly easy and works very well! Try to install and run it on a sample image. The manual is good, if I remember well, else I can send you an example! – HBouy Apr 20 '15 at 13:50
  • I'm gonna check it out but it could be perfect if you could send me an example :) – Mustafa Güven Apr 20 '15 at 14:44
  • Here it goes: solve-field image.jpg :-) You can speed up very much the process if you know (even very very approximately) the pixel scale (in arcsec), size of the field of view and the pointing direction. Check the help! – HBouy Apr 21 '15 at 07:48