il mio problema è il seguente:spostamento lineare tra i 2 set di coordinate
Per il mio lavoro ho bisogno di confrontare le immagini di lastre fotografiche scansionate con un catalogo di un campione di stelle conosciute all'interno dell'area generale del cielo piastre copertina (io lo chiamo il catalogo principale). A tal fine estrao informazioni, come la luminosità dell'immagine e la posizione nel cielo, degli oggetti nelle immagini e le salviamo nelle tabelle. Quindi utilizzo python per creare un adattamento polinomiale per la calibrazione della grandezza delle stelle nell'immagine. Che funziona abbastanza bene, ma purtroppo non abbastanza bene, poiché c'è un piccolo spostamento tra le coordinate che l'oggetto ha nelle lastre fotografiche e nel catalogo principale.
Ecco i cerchi verdi indicano le posizioni (centro del cerchio) degli oggetti nel catalogo principale. Come puoi vedere, le stelle reali si trovano sempre nella parte superiore sinistra degli oggetti nel catalogo principale.
Ho visto un po 'il confronto delle immagini (ad esempio How to detect a shift between images) ma ora sono un po' in perdita, perché in realtà non sto confrontando le immagini ma gli array con le coordinate degli oggetti. Un ulteriore problema qui è che (come potete vedere nell'immagine) ci sono oggetti nel catalogo principale che non sono visibili sulle lastre e non tutte le lastre hanno la stessa profondità (nel senso che alcune mostrano più stelle di altre).
Quello che mi piacerebbe sapere è un modo per trovare e correggere lo spostamento lineare tra i 2 array di diverse dimensioni di coordinate in python. Non dovrebbero esserci rotazioni, quindi è solo uno spostamento nelle direzioni xe y. Gli array sono normali ricapitoli numpy.
Il raggio del cerchio è il raggio di ricerca per un algoritmo che esamina il mio catalogo principale per trovare possibili corrispondenze tra catalogo e immagine. Così ho estratto tutte le possibili corrispondenze e ho calcolato le differenze tra loro come suggerito e sembra funzionare. Gli istogrammi non sono perfetti ma dopo averli livellati, ottengo un massimo che posso usare per ottenere la traduzione. Grazie –