Importing particles back to RELION/4.0

I extracted particles from RELION/4.0, and I decided to transfer those particles in CryoSPARC for faster 2D classification clean up. Now, I am trying to send the cleaned particles stack back to RELION/4.0 for further processing.

I used the command below:
csparc2star.py --swapxy /ddn/cryoemCore/process/cryosparc_callisto/Shears/P114/J3144/particles_selected.cs /ddn/cryoemCore/process/cryosparc_callisto/Shears/P114/J3144/P114_J3144_passthrough_particles_selected.cs ~/GZ60_1Flat.star --strip-uid

The star file was successfully created. Unfortunately, the particles path still has the uid for the micrographs. I anticipate that because of this, I won’t be able to re-extract these particles again in Relion/4.0.
000275@J3140/imported/002601468735142943058_20220824_ASP1_GZ60_1_000_0_0.mrcs 24.795918 17.568200 3.02 9000 11499.257812 11359.625977 -85.321602 0.000000 0.000000 81 2

Is my concern valid? If so, how to I address this concern? Thanks!

Yes - you can use sed or similar to remove the UID, or you can apparently do it using csparc2star.py with the --strip-uid flag: Csparc2star error removing path uid - #7 by DanielAsarnow

@kjubutay18 you can’t put some arguments before the positional arguments and others afterwords, they have to all be together on one side or the other. I recommend putting the positional arguments (in.star, out.star) first, they tend to be parsed more robustly that way.

Check if --strip_uid is working after you fix that, and let me know. Thanks. BTW you can give a number after --strip_uid and it will strip only that many sets of UIDs, starting from the left.

Hi Daniel,

I used this command:

csparc2star.py /ddn/cryoemCore/process/cryosparc_callisto/Shears/P114/J3175/particles_selected.cs /ddn/cryoemCore/process/cryosparc_callisto/Shears/P114/J3175/P114_J3175_passthrough_particles_selected.cs ~/GZ60_1Flat_a.star --swapxy --strip-uid

Unfortunately, the uid is still present.

000275@J3140/imported/002601468735142943058_20220824_ASP1_GZ60_1_000_0_0.mrcs 24.795918 17.568200 3.029000 11499.257812 11359.625977 -85.321602 0.000000 0.000000 81 2

I even tried using a command with uid

csparc2star.py /ddn/cryoemCore/process/cryosparc_callisto/Shears/P114/J3175/particles_selected.cs /ddn/cryoemCore/process/cryosparc_callisto/Shears/P114/J3175/P114_J3175_passthrough_particles_selected.cs ~/GZ60_1Flat_a.star --swapxy --strip-uid 002601468735142943058

And still get the same result.

You can either give --strip-uid alone or with an integer number of UIDs to strip, starting from the left.

It wouldn’t make sense to specify one UID as they are all different.

There was a bug with the argument, it’s fixed now. If you update it will work.

1 Like

Thank you, I ran into this problem as well but the latest version of pyem fixed it!

I’m now noticing though that “_particles” has been appended to the filename before the file extension. I’ll remove it with sed but did I miss a step or is this a new addition?

cryoSPARC extracted particle stacks have always had _particles.mrc at the end AFAIK.

1 Like