cryodrgn icon indicating copy to clipboard operation
cryodrgn copied to clipboard

The reconstruction using tomodrgn backproject_voxel is incorrect

Open xinsheng44 opened this issue 10 months ago • 3 comments

when I use tomodrgn backproject_voxel with the EMPIAR-10499, the output is just a blurry, spherical shape. I’ve tried multiple variations of the command, but none produce the correct result.

tomodrgn backproject_voxel \ input_v1/bin1_2d_tomodrgn_optimisation_set.star \ --output output/01_backproject_v1/backproject_70S_doseweight.mrc \ --datadir ../particleseries \ --uninvert-data \ --flip \ --recon-dose-weight \ --recon-tilt-weight

tomodrgn backproject_voxel \ input_v1/bin1_2d_tomodrgn_optimisation_set.star \ --output output/01_backproject_v1/backproject_70S_doseweight.mrc \ --datadir ../particleseries \ --flip \ --recon-dose-weight \ --recon-tilt-weight

tomodrgn backproject_voxel \ input_v1/bin1_2d_tomodrgn_optimisation_set.star \ --output output/01_backproject_v1/backproject_70S_doseweight.mrc \ --datadir ../particleseries \ --recon-dose-weight \ --recon-tilt-weight

The figures also show these incorrect results.

Image

Image

The particle extraction commands were

WarpTools ts_export_particles \ --settings warp_tiltseries.settings \ --input_directory relion/Refine3D/job004 \ --input_pattern "particle.star" \ --output_star relion/bin1_2d_tomodrgn.star \ --output_processing warp_tiltseries/particleseries_tomodrgn \ --coords_angpix 3.401 \ --output_angpix 1.7005 \ --box 190 \ --diameter 220 \ --relative_output_paths \ --2d \ --device_list 0 \ --perdevice 6 and WarpTools ts_export_particles \ --settings warp_tiltseries.settings \ --input_directory relion/Refine3D/job002 \ --input_pattern "particle.star" \ --output_star relion/bin1_3d_tomodrgn.star \ --output_processing warp_tiltseries/subtomo_tomodrgn \ --coords_angpix 3.401 \ --output_angpix 1.7005 \ --box 190 \ --diameter 220 \ --relative_output_paths \ --3d \ --device_list 3 \ --perdevice 6 respectively.

However, I used the following command (same particle dataset) to generate the desired result: mpirun -n NUM_MPI_PROCESSES relion_reconstruct_mpi --i particleseries.star --o reconstruct_relion.mrc --ctf As shown in the attached figures, one reconstruction is the raw result and the other is a smoothed version.

Image

Image

xinsheng44 avatar Mar 04 '25 14:03 xinsheng44

Thank you for the detailed post! Please file an issue on the tomodrgn github repo. I believe they adapted our backproject_voxel script, but I can't speak to what changes they made.

The cryoDRGN repo supports heterogeneous STA (see our cryoDRGN-ET paper for more info). I would recommend trying out cryodrgn backproject_voxel with the --tilt option, and we're happy to help diagnose any problems you run into!

Here's an example usage from cryodrgn backproject_voxel -h:

# `--tilt` is required for subtomogram datasets; you can further control how many tilts
# are used per particle using `--ntilts`
# `--datadir` is generally required when using .star or .cs particle inputs

$ cryodrgn backproject_voxel particles_from_M.star --datadir subtilts/128/ \
                             --ctf ctf.pkl --poses pose.pkl \
                             -o backproject-tilt/ --lazy --tilt --ntilts 5

zhonge avatar Mar 04 '25 14:03 zhonge

Thank you for the detailed post! Please file an issue on the tomodrgn github repo. I believe they adapted our backproject_voxel script, but I can't speak to what changes they made.

The cryoDRGN repo supports heterogeneous STA (see our cryoDRGN-ET paper for more info). I would recommend trying out cryodrgn backproject_voxel with the --tilt option, and we're happy to help diagnose any problems you run into!

Here's an example usage from cryodrgn backproject_voxel -h:

# `--tilt` is required for subtomogram datasets; you can further control how many tilts
# are used per particle using `--ntilts`
# `--datadir` is generally required when using .star or .cs particle inputs

$ cryodrgn backproject_voxel particles_from_M.star --datadir subtilts/128/ \
                             --ctf ctf.pkl --poses pose.pkl \
                             -o backproject-tilt/ --lazy --tilt --ntilts 5

I'm really grateful for your help!

Initially, I planned to test cryoDRGN-ET, but unfortunately, it doesn't support CTF-multiplied images.

It only works with datasets from Warp/M (Windows) and doesn't support datasets generated by WarpTools.

What a pity!

#429

xinsheng44 avatar Mar 04 '25 14:03 xinsheng44

Gotcha, we can certainly prioritize this feature. It might be super helpful to get some example files, and we can reach out to you if needed!

zhonge avatar Mar 04 '25 16:03 zhonge