The effect of "Flip-Y" on final reconstruction

Dear All,

Recently I found a tutorial of cryosparc about importing raw movie, it mentioned that in some cases we need to “flip Y” when import them, if we didn’t, we can see some white grid line, pls see fig. below:

In my case, I noticed for my K2 dataset, if I didn’t flip Y, I seems also have this issue, pls see figs. below:
1st, didn’t flip Y

2nd, flip Y

Most importantly, for my Krios dataset, I didn’t see the difference between flip Y or not when I import them, will this flip Y impact the quality of my dataset, and the subsequent processing results?
If I found my motioncorrection without “flipping Y” is wrong, need I to reprocess my data de novo, or I can simply re-extract my final good particles from the “flipped” images, and refinement them again?

Many thanks, appreciate!


Just an update,
that I did the Patch motioncorrection again with gain flip Y, and reextracted two particle sets, and run the NU refinement directly, seems no significant difference, one particle set kept the same resolution, 3.48A, and another one increased 0.01A, from 3.52 to 3.51A~
For your reference~



It’s flipping the movies relative to the gain reference, you see all those mirrored camera artifacts when the gain ref is not properly aligned. Some software, like SerialEM, usually output movies flipped relative to the gain refs from Gatan DM. Sounds like gain artifacts weren’t very significant in your second dataset.


Dear Daniel,

@DanielAsarnow Thanks a bunch for your insights! We did use the SerialEM to collect the datasets, but my EM manager told me that our current settings by FEI is that, we do not need to flip Y of gain reference when we do motioncor in Relion with motioncor2 or in cisTEM. I consulted the CS developer, they told me if I do not need to apply “gain reference flip Y” in Relion or cisTEM, thus probably I need to apply “gain reference flip Y” in CS for patch motioncorrection used by CS Live, but I don’t know the reason~

BTW, thank you for developing this so elegant and powerful PYEM for our community! Actually, I do have one more question about this module, I used this module twice to convert my CS particles file to star file, and applied the re-extraction in Relion:
a, I tried the command “ particles.cs particles_passthrough.cs --boxsize a --swapxy” with a previous pyem version.
b, I modified the corresponding motioncorrected images path to Relion produced, and then reextracted by using the CTF estimated results: as input, thus I succeeded with it, and the followed 2D classification looks pretty.

a, Used “ -r2 particles.cs particles_passthrough.cs --boxsize a --swapxy” with the latest pyem version.
b, Modified to corresponded motioncorrected images path, but re-extracted the by using the motioncorrected as input, but not the CTF estimated results, and also bined 4 (480 boxsize to 120 boxsize), but this time the 2D averages are just blurry.

I am not sure whether the input of re-extract job in Relion must be the CTF estimated results or not, and also someone told me to use the “–invert y” instead of “–swapxy” in the convert command, I am a little confused about this, could you pls clarify this for me at your convenience? Appreciate!



You probably don’t want --boxsize, it’s just to correct for using a different refinement volume than the particle box. The second time, since there’s this flipping issue (which is due to different choices of image X/Y convention plus FORTRAN vs. C-style array ordering), you might also need one of the --flip arguments in

PS Thank you very much for your sentiment and for using my program!

Oh, Thanks Daniel for pointing out my negligent!
For my 1st try, I did perform the motioncorrection in Relion3, and import them into CS for the further processing;
For my 2nd try recently, as I moved to take advantage of the CS Live, thus I processed them de novo in CS, and performed the patch motioncorrection in CS Live. But I am a little confused as this “gain reference flip Y” seems only flip the gain reference, thus my understanding is that, no matter I flipped Y of gain or not, the coordinates (x,y) of the same particle on the same motioncorrected image produced by Relion3 motioncor2 or CS patch motioncorrection should be almost the same, am I understand right? Thus why I need to add this “–flip” argument in my convertion command?
As following your suggestions, does this mean I need to use this command: -r2 particles.cs particles_passthrough.cs --swapxy --flip (not flipy?)
Did my understand correctly?



I think I added --flipx and --flipy both, you should figure out the combination of --swapxy, --flipx, and/or --flipy that gives you the right coordinates. You can visualize the coordinates with relion_display so you don’t have to extract and run 2D over and over.

Thanks Daniel, for your kind explanation, and your patience!
I am pretty new in cryoEM, could you pls give me an example about how to use this “relion_display” to visualize the coordinates, thus to figure out this combination of “–swapxy, --flipx, and/or --flipy”, many thanks!



I don’t remember exactly, you’ll have to read the options and the Relion wiki.

Sure, thanks for your kind explaining, Have a great one!



Hi @Zheng.Henry,

You can run an empty manualpick job, then extract the particle coordinates into the corresponding files for each micrograph (refer to any autopick or manualpick job you have run previously), and you can hit the “continue” button of your “empty” manualpick job, then you should be able to see the picked particles.


1 Like

Thanks Hui! Will give it a try!