ComputationalCryoEM / ASPIRE-Python

Algorithms for Single Particle Reconstruction
http://spr.math.princeton.edu
GNU General Public License v3.0
46 stars 21 forks source link

Relion now uses `rlnOriginX(Y)Angstrom` instead of `rlnOriginX(Y)` #1118

Open j-c-c opened 4 months ago

j-c-c commented 4 months ago

Newer versions of Relion use Angstrom values for image offsets instead of pixels (see docs). The Relion metadata name has also been changed to rlnOriginX(Y)Angstrom. This causes an error if a user saves an ImageSource in ASPIRE and attempts to open the starfile in Relion, as the name rlnOriginX(Y) is not recognized.

garrettwrong commented 4 months ago

I'm sort of suprised they don't admit the old attributes or allow opening an older format file. I would think this would be a pain for them (unable to open their own files from a prior save...?).

Before getting too far, for a quick fix, it would be good to check that this isn't resolved my saving with a format/version attribute (that we are presumably missing).

I say that because while the right thing to do is to move toward >=3.1 attributes, a complication there is this will require pixel size in the base ImageSource class (or manually at save, annoying for devs), and in a way that doesn't clash with things that input/operate with ImageSource (filters etc). This issue probably will require more code reading/planning than it seems superficially.