esa / tetra3

A fast lost-in-space plate solver for star trackers.
https://tetra3.readthedocs.io/en/latest/
Apache License 2.0
102 stars 24 forks source link

star_catalog_IDs issue #9

Closed astropatel closed 1 year ago

astropatel commented 1 year ago

Dear Gustav,

I'm trying to generate my own database using a fake star catalog. I pulled a version of tetra3 about a month ago, and I was able to generate a database using my list of stars (though finding a solution has been NaNs thus far). In any case, I pulled the latest version with the new star_catalog_IDs property and when I try to load the new database into a new instatition of tetra3, I run into a ValueError concerning pickle files. I've changed the code a bit to include my new test catalog and tried to incorporate the star_catalog_IDs as best as possible -- but am wondering if that property is necessary to the overall function of the calculation?

image

gustavmpettersson commented 1 year ago

Hi,

Could you upload this database somewhere for me to look at? (Or a small one with the same behaviour)

To be clear

It's possible that this is from an old bug where we would store a None in the star_catalog_IDs, making them unable to be unpacked without pickle, but that should not be there anymore.

astropatel commented 1 year ago

I'm uploading the database as well as the version of the code I'm using (with the changes i've made) and a test image..

The database was built and loaded using the latest version. In the new one, it's having issues with the pickle error. In the old and new one, I get a bunch of nan's when trying to use solve_from_image.

rahul_tetra3.zip st version.

gustavmpettersson commented 1 year ago

Without looking in detail, it appears that you are using 'str' type for the star catalogue ID. This cannot be used in a np archive without pickling. You need to make the ID a native np type, e.g. U16 for a 16 byte char array

astropatel commented 1 year ago

That fixed it! Thank you. I am still having a problem with obtaining solutions from my test images.

gustavmpettersson commented 1 year ago

Great.

I don't know what you are trying to do, but at least these things need to be true for it to work: