scipion-em-xmipp 24.12.2__tar.gz → 25.6.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/CHANGELOG.md +47 -4
- scipion_em_xmipp-25.6.1/PKG-INFO +38 -0
- scipion_em_xmipp-25.6.1/pyproject.toml +33 -0
- scipion_em_xmipp-25.6.1/scipion_em_xmipp.egg-info/PKG-INFO +38 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/scipion_em_xmipp.egg-info/SOURCES.txt +48 -3
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/scipion_em_xmipp.egg-info/entry_points.txt +0 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/__init__.py +105 -72
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/base.py +2 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/convert/convert.py +1 -1
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_angular_resolution_alignment.py +204 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_apply_deformation_zernike3d.py +113 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_classification_gpuCorr.py +821 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_classification_gpuCorr_full.py +1014 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_classification_gpuCorr_semi.py +462 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_classify_kmeans2d.py +285 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_deep_align.py +859 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_deep_denoising.py +425 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_kmeans_clustering.py +122 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_metaprotocol_create_output.py +146 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_metaprotocol_create_subset.py +96 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_metaprotocol_discrete_heterogeneity_scheduler.py +516 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_metaprotocol_golden_highres.py +663 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_mltomo.py +576 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_movie_average.py +202 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_movie_opticalflow.py +416 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_particle_boxsize.py +133 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_reconstruct_heterogeneous.py +1031 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_rotational_spectra.py +212 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_solid_angles.py +632 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_split_volume.py +112 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_split_volume_hierarchical_cluster.py +865 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/protocols/protocol_subtract_projection.py +265 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocol_deep_denoising.py +64 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_angular_resolution_alignment.py +88 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_gpuCorr_classifier.py +141 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_gpuCorr_fullStreaming.py +172 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_gpuCorr_semiStreaming.py +68 -0
- scipion-em-xmipp-24.12.2/xmipp3/tests/test_protocols_highres.py → scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_metaprotocol_golden_highres.py +17 -26
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_metaprotocol_heterogeneity.py +78 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_mixed_movies.py +148 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_solid_angles.py +161 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_subtract_projection.py +595 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/tests/test_protocols_xmipp_movies.py +229 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/viewers/viewer_angular_resolution_alignment.py +148 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/viewers/viewer_deep_align.py +121 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/viewers/viewer_metaprotocol_golden_highres.py +140 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/viewers/viewer_mltomo.py +297 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/viewers/viewer_solid_angles.py +91 -0
- scipion_em_xmipp-25.6.1/xmipp3/legacy/viewers/viewer_split_volume.py +57 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/__init__.py +1 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_align_volume.py +34 -8
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_apply_alignment.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_apply_tilt_to_ctf.py +2 -3
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_apply_zernike3d.py +2 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_assignment_tilt_pair.py +1 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_center_particles.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_cl2d.py +1 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_cl2d_align.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_cl2d_clustering.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_classify_pca.py +25 -9
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_classify_pca_streaming.py +67 -42
- scipion_em_xmipp-25.6.1/xmipp3/protocols/protocol_compute_likelihood.py +368 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_consensus_local_ctf.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_convert_pdb.py +9 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_create_gallery.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_ctf_consensus.py +14 -8
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_ctf_correct_wiener2d.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_ctf_micrographs.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_deep_center_predict.py +10 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_deep_hand.py +19 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_deep_micrograph_screen.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_extract_asymmetric_unit.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_extract_particles.py +22 -10
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_extract_particles_movies.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_extract_particles_pairs.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_flexalign.py +3 -4
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_helical_parameters.py +1 -4
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_movie_alignment_consensus.py +122 -40
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_movie_dose_analysis.py +79 -82
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_movie_max_shift.py +6 -2
- scipion_em_xmipp-25.6.1/xmipp3/protocols/protocol_movie_split_frames.py +265 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_particle_pick_automatic.py +1 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_particle_pick_consensus.py +7 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_particle_pick_pairs.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_phantom_create.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_pick_noise.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_postProcessing_deepPostProcessing.py +5 -5
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_crop_resize.py +3 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_filter.py +2 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_image_operate.py +2 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_mask.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_preprocess.py +6 -4
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_process.py +20 -7
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess_micrographs.py +3 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_projmatch/projmatch_steps.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_projmatch/protocol_projmatch.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_random_conical_tilt.py +1 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_ransac.py +41 -37
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_reconstruct_fourier.py +5 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_reconstruct_highres.py +13 -7
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_reconstruct_significant.py +14 -21
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_resolution3d.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_resolution_deepres.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_resolution_directional.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_resolution_fso.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_resolution_monogenic_signal.py +19 -4
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_rotate_volume.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_screen_deepConsensus.py +25 -5
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_shift_volume.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_simulate_ctf.py +5 -3
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_structure_map.py +9 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_subtract_projection.py +25 -10
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_tilt_analysis.py +3 -3
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_validate_fscq.py +2 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_validate_nontilt.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_volume_adjust_sub.py +8 -4
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_volume_deform_zernike3d.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_volume_local_sharpening.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_volume_strain.py +1 -1
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols.conf +1 -3
- scipion_em_xmipp-25.6.1/xmipp3/tests/test_protocol_likelihood.py +240 -0
- scipion_em_xmipp-25.6.1/xmipp3/tests/test_protocol_split_frames.py +136 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_validate_fscq.py +2 -2
- scipion_em_xmipp-25.6.1/xmipp3/tests/test_protocols_highres.py +144 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_xmipp_2d.py +1 -48
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_xmipp_mics.py +20 -16
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_xmipp_movies.py +4 -4
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/version.py +5 -5
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/__init__.py +1 -1
- scipion_em_xmipp-25.6.1/xmipp3/viewers/viewer_LL_matrix.py +273 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_deep_consensus.py +1 -7
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_dose_analysis.py +18 -2
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_resolution_fso.py +18 -6
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_structure_map.py +53 -11
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/wizards.py +3 -2
- scipion_em_xmipp-25.6.1/xmipp3/xmipp_logo_devel.png +0 -0
- scipion-em-xmipp-24.12.2/PKG-INFO +0 -26
- scipion-em-xmipp-24.12.2/scipion_em_xmipp.egg-info/PKG-INFO +0 -26
- scipion-em-xmipp-24.12.2/setup.py +0 -173
- scipion-em-xmipp-24.12.2/xmipp3/protocols/protocol_movie_split_frames.py +0 -188
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/LICENSE +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/MANIFEST.in +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/README.md +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/requirements.txt +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/scipion_em_xmipp.egg-info/dependency_links.txt +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/scipion_em_xmipp.egg-info/requires.txt +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/scipion_em_xmipp.egg-info/top_level.txt +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/setup.cfg +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/bibtex.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/checkProtocolsConf.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/constants.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/convert/__init__.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/convert/dataimport.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/convert/io_coordinates.py +0 -0
- {scipion-em-xmipp-24.12.2/xmipp3 → scipion_em_xmipp-25.6.1/xmipp3/legacy}/protocols/protocol_enrich.py +0 -0
- {scipion-em-xmipp-24.12.2/xmipp3 → scipion_em_xmipp-25.6.1/xmipp3/legacy}/protocols/protocol_screen_deeplearning.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/programs.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_align_volume_and_particles.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_analyze_local_ctf.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_angular_graph_consistency.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_apply_transformation_matrix.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_break_symmetry.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_classes_2d_mapping.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_compare_angles.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_compare_reprojections.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_consensus_classes.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_core_analysis.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_ctf_defocus_group.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_deep_center.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_denoise_particles.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_eliminate_empty_images.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_generate_reprojections.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_kerdensom.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_local_ctf.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_mics_defocus_balancer.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_ml2d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_movie_gain.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_multiple_fscs.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_multireference_alignability.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_normalize_strain.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_particle_pick.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_particle_pick_remove_duplicates.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/__init__.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/geometrical_mask.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_add_noise.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_create_mask2d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_create_mask3d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_preprocess/protocol_movie_resize.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_projmatch/__init__.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_projmatch/projmatch_form.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_projmatch/projmatch_initialize.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_reconstruct_swarm.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_resolution_bfactor.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_rotational_symmetry.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_screen_particles.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_shift_particles.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_structure_map_zernike3d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_trigger_data.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_validate_overfitting.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_volume_consensus.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_volume_local_adjust.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_write_testC.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/protocols/protocol_write_testP.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/__init__.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_convert_xmipp.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_angular_graph_consistency.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_apply_transformation_matrix.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_compare_angles.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_consensus_classes3D.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_ctf_consensus.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_extract_asymmetric_unit.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_monodir.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_multiple_fsc.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_multireference_alignability.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_reconstruct_fourier.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_screen_deepConsensus.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_simulate_ctf.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocol_validate_overfitting.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_add_noise.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_continuousflex.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_deepVolPostprocessing.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_deepcenter_predict.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_deepres.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_fso.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_local_defocus.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_localdeblur.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_monores.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_realignment_classes.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_xmipp_3d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_xmipp_movie_resize.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/tests/test_protocols_zernike3d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/utils.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/plotter.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_analyze_local_ctf.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_apply_tilt_to_ctf.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_cl2d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_cl2d_clustering.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_consensus_classes.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_ctf_consensus.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_deepEMHancer.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_deep_micrograph_cleaner.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_eliminate_empty_images.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_extract_asymmetric_unit.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_local_sharpening.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_ml2d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_movie_alignment.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_normalize_strain.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_pdb_deform_zernike3d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_projmatch.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_ransac.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_reconstruct_highres.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_resolution3d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_resolution_bfactor.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_resolution_deepres.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_resolution_directional.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_resolution_monogenic_signal.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_subtract_projection.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_swarm.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_validate_fscq.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_validate_nontilt.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_validate_overfitting.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_volume_consensus.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_volume_deform_zernike3d.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_volume_strain.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/viewers/viewer_volume_subtraction.py +0 -0
- {scipion-em-xmipp-24.12.2 → scipion_em_xmipp-25.6.1}/xmipp3/xmipp_logo.png +0 -0
|
@@ -1,7 +1,50 @@
|
|
|
1
|
-
## Release 3.
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
## Release 3.25.06.1 - Rhea
|
|
2
|
+
- Disabling the default installation of dependencies to prevent breaking the scipion environment
|
|
3
|
+
|
|
4
|
+
## Release 3.25.06.0 - Rhea
|
|
5
|
+
- New protocols
|
|
6
|
+
- compute_likelihood: This protocol computes the likelihood of a set of particles with assigned angles when compared to a set of maps or atomic modelS
|
|
7
|
+
|
|
8
|
+
- Protocols updated
|
|
9
|
+
- Max shift: tolerate movies without micrographs associated
|
|
10
|
+
- substract_projection: update command to boost and subtract to generate only one output stack
|
|
11
|
+
- Movie alignment consensus protocol: enables irregular input sets. Changes in functionality; comparisons between ons between shifts trajectories, and a additional change related to the minimum consensus or threshold for shifts correlation.
|
|
12
|
+
- volume_adjust_sub: better label for volume 1 vs 2
|
|
13
|
+
- convert_pdb: aDD binThreads
|
|
14
|
+
- align_volume: add possible
|
|
15
|
+
- particle_pick_consensus: Fixed ID mismatch when combining coordinate sets; now supports asymmetrical sets without indexing errors.
|
|
16
|
+
- movie_split_frames: now allows testing sum_frames, includes a summary, improved layout, and updated test.
|
|
17
|
+
- deep_Consensus: GPU handling
|
|
18
|
+
- Deep_hand: handling env to avoid system CUDA settings, erasing cuda things from env['LD_LIBRARY_PATH']
|
|
19
|
+
- Extract particles protocol: force output boxsize
|
|
20
|
+
- reconstruct_fourier: correctEnvelope False by default
|
|
21
|
+
- reconstruct_highres: test updated, correctEnvelope False by default
|
|
22
|
+
- Structure map: Adding a dendrogram and removing some intermediate files
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
- Protocols fixed
|
|
26
|
+
- simulate ctf: fix pre-CTF noise np.numpy, init generator for pre and post ctf noise
|
|
27
|
+
- validate FSCQ: test fixed
|
|
28
|
+
- resolution_monogenic_signal: fixing header in MonoRes
|
|
29
|
+
- protocol_process: CropResize halves fix
|
|
30
|
+
- Extract particles test fixed
|
|
31
|
+
- FSO viewer: the fso was failing when the fso did not cross some thresholds
|
|
32
|
+
- reconstruct_significant: fix gpu usage
|
|
33
|
+
- ransac: fix gpu usage
|
|
34
|
+
|
|
35
|
+
- Protocols deprecated (For more details visit [this](https://github.com/I2PC/xmipp/wiki/Deprecating-programs-and-protocols](https://i2pc.github.io/docs/Utils/Deprecated-programs/index.html)))
|
|
36
|
+
- XmippProtScreenDeepLearning
|
|
37
|
+
|
|
38
|
+
- More scipion-em-xmipp
|
|
39
|
+
- Most of the Xmipp dependencies installed on Scipion env
|
|
40
|
+
- Updating version for pypi requirements
|
|
41
|
+
- Bug cloning tag
|
|
42
|
+
- Use toml for installation
|
|
43
|
+
- Bug fixed related to the WriteSetOfParticles and the Missing ExtraLabels (The Oier and Fede Adventures)
|
|
44
|
+
- Handling nvidia drivers error message
|
|
45
|
+
- improving deps installation
|
|
46
|
+
- Improved the help message of more than 60 protocols
|
|
47
|
+
|
|
5
48
|
## Release 3.24.12 - Poseidon
|
|
6
49
|
- New protocols
|
|
7
50
|
- apply_tilt_to_ctf: Apply a local deviation to the CTF based on the micrograph's tilt
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: scipion-em-xmipp
|
|
3
|
+
Version: 25.6.1
|
|
4
|
+
Summary: Plugin to use Xmipp programs within the Scipion framework.
|
|
5
|
+
Author-email: Oier Lauzirika Zarrabeitia <oierlauzi@bizkaia.eu>, Alberto Garcia Mena <alberto.garcia@cnb.csic.es>, Carlos Oscar Sanchez Sorzano <coss@cnb.csic.es>
|
|
6
|
+
License: GNU General Public License v3 (GPLv3)
|
|
7
|
+
Project-URL: Homepage, https://github.com/I2PC/scipion-em-xmipp
|
|
8
|
+
Project-URL: Issues, https://github.com/I2PC/scipion-em-xmipp/issues
|
|
9
|
+
Keywords: scipion electron-microscopy cryo-em structural-biology image-processing scipion-3.0
|
|
10
|
+
Requires-Python: >=3.8
|
|
11
|
+
Description-Content-Type: text/markdown
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Requires-Dist: scipion-pyworkflow>=3.0.31
|
|
14
|
+
Requires-Dist: scikit-learn>=1.2
|
|
15
|
+
Requires-Dist: scikit-image
|
|
16
|
+
Requires-Dist: scipion-em
|
|
17
|
+
Requires-Dist: scipion-app
|
|
18
|
+
Requires-Dist: scipy<=1.10.0
|
|
19
|
+
Requires-Dist: joblib
|
|
20
|
+
Requires-Dist: peppercorn
|
|
21
|
+
Requires-Dist: plotter
|
|
22
|
+
Requires-Dist: PyWavelets
|
|
23
|
+
|
|
24
|
+
[](https://github.com/I2PC/scipion-em-xmipp/actions/workflows/build.yml)
|
|
25
|
+
|
|
26
|
+
# scipion-em-xmipp
|
|
27
|
+
|
|
28
|
+
Plugin to use Xmipp programs within the Scipion framework.
|
|
29
|
+
|
|
30
|
+
You can install it either, using the Scipion software following
|
|
31
|
+
the [Scipion's installation guide](https://scipion-em.github.io/docs/release-3.0.0/docs/scipion-modes/how-to-install.html)
|
|
32
|
+
, (remember to install the scipion-em-xmipp plugin or remove the -noXmipp flag in the Scipion installation)**strongly recommended for non-developers** or cloning it on your own and
|
|
33
|
+
[linking it to Scipion](https://github.com/I2PC/xmipp#linking-standalone-version-to-scipion).
|
|
34
|
+
The latter is only for those who intended to develop the Xmipp plugin.
|
|
35
|
+
|
|
36
|
+
For **developers**, we strongly recommend to follow the guide on
|
|
37
|
+
[how to install xmipp-bundle](https://github.com/i2pc/xmipp#xmipp-as-a-standalone-bundle-for-developers)
|
|
38
|
+
in order to get a complet Xmipp's development ecosystem.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "scipion-em-xmipp"
|
|
7
|
+
dynamic = ["version", "dependencies"]
|
|
8
|
+
|
|
9
|
+
authors = [
|
|
10
|
+
{name = "Oier Lauzirika Zarrabeitia", email = "oierlauzi@bizkaia.eu"},
|
|
11
|
+
{name = "Alberto Garcia Mena", email = "alberto.garcia@cnb.csic.es"},
|
|
12
|
+
{name = "Carlos Oscar Sanchez Sorzano", email = "coss@cnb.csic.es"},
|
|
13
|
+
]
|
|
14
|
+
|
|
15
|
+
description = "Plugin to use Xmipp programs within the Scipion framework."
|
|
16
|
+
readme = "README.md"
|
|
17
|
+
requires-python = ">=3.8"
|
|
18
|
+
keywords = ["scipion electron-microscopy cryo-em structural-biology image-processing scipion-3.0"]
|
|
19
|
+
license = {text = "GNU General Public License v3 (GPLv3)"}
|
|
20
|
+
|
|
21
|
+
[project.urls]
|
|
22
|
+
Homepage = "https://github.com/I2PC/scipion-em-xmipp"
|
|
23
|
+
Issues = "https://github.com/I2PC/scipion-em-xmipp/issues"
|
|
24
|
+
|
|
25
|
+
[tool.setuptools.dynamic]
|
|
26
|
+
version = {attr = "xmipp3.version.__version__"}
|
|
27
|
+
dependencies = {file = ["requirements.txt"]}
|
|
28
|
+
|
|
29
|
+
[project.entry-points."pyworkflow.plugin"]
|
|
30
|
+
xmipp3 = "xmipp3"
|
|
31
|
+
|
|
32
|
+
[tool.setuptools.package-data]
|
|
33
|
+
xmipp3 = ["protocols.conf", "xmipp_logo_devel.png"]
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: scipion-em-xmipp
|
|
3
|
+
Version: 25.6.1
|
|
4
|
+
Summary: Plugin to use Xmipp programs within the Scipion framework.
|
|
5
|
+
Author-email: Oier Lauzirika Zarrabeitia <oierlauzi@bizkaia.eu>, Alberto Garcia Mena <alberto.garcia@cnb.csic.es>, Carlos Oscar Sanchez Sorzano <coss@cnb.csic.es>
|
|
6
|
+
License: GNU General Public License v3 (GPLv3)
|
|
7
|
+
Project-URL: Homepage, https://github.com/I2PC/scipion-em-xmipp
|
|
8
|
+
Project-URL: Issues, https://github.com/I2PC/scipion-em-xmipp/issues
|
|
9
|
+
Keywords: scipion electron-microscopy cryo-em structural-biology image-processing scipion-3.0
|
|
10
|
+
Requires-Python: >=3.8
|
|
11
|
+
Description-Content-Type: text/markdown
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Requires-Dist: scipion-pyworkflow>=3.0.31
|
|
14
|
+
Requires-Dist: scikit-learn>=1.2
|
|
15
|
+
Requires-Dist: scikit-image
|
|
16
|
+
Requires-Dist: scipion-em
|
|
17
|
+
Requires-Dist: scipion-app
|
|
18
|
+
Requires-Dist: scipy<=1.10.0
|
|
19
|
+
Requires-Dist: joblib
|
|
20
|
+
Requires-Dist: peppercorn
|
|
21
|
+
Requires-Dist: plotter
|
|
22
|
+
Requires-Dist: PyWavelets
|
|
23
|
+
|
|
24
|
+
[](https://github.com/I2PC/scipion-em-xmipp/actions/workflows/build.yml)
|
|
25
|
+
|
|
26
|
+
# scipion-em-xmipp
|
|
27
|
+
|
|
28
|
+
Plugin to use Xmipp programs within the Scipion framework.
|
|
29
|
+
|
|
30
|
+
You can install it either, using the Scipion software following
|
|
31
|
+
the [Scipion's installation guide](https://scipion-em.github.io/docs/release-3.0.0/docs/scipion-modes/how-to-install.html)
|
|
32
|
+
, (remember to install the scipion-em-xmipp plugin or remove the -noXmipp flag in the Scipion installation)**strongly recommended for non-developers** or cloning it on your own and
|
|
33
|
+
[linking it to Scipion](https://github.com/I2PC/xmipp#linking-standalone-version-to-scipion).
|
|
34
|
+
The latter is only for those who intended to develop the Xmipp plugin.
|
|
35
|
+
|
|
36
|
+
For **developers**, we strongly recommend to follow the guide on
|
|
37
|
+
[how to install xmipp-bundle](https://github.com/i2pc/xmipp#xmipp-as-a-standalone-bundle-for-developers)
|
|
38
|
+
in order to get a complet Xmipp's development ecosystem.
|
|
@@ -2,8 +2,8 @@ CHANGELOG.md
|
|
|
2
2
|
LICENSE
|
|
3
3
|
MANIFEST.in
|
|
4
4
|
README.md
|
|
5
|
+
pyproject.toml
|
|
5
6
|
requirements.txt
|
|
6
|
-
setup.py
|
|
7
7
|
scipion_em_xmipp.egg-info/PKG-INFO
|
|
8
8
|
scipion_em_xmipp.egg-info/SOURCES.txt
|
|
9
9
|
scipion_em_xmipp.egg-info/dependency_links.txt
|
|
@@ -21,10 +21,53 @@ xmipp3/utils.py
|
|
|
21
21
|
xmipp3/version.py
|
|
22
22
|
xmipp3/wizards.py
|
|
23
23
|
xmipp3/xmipp_logo.png
|
|
24
|
+
xmipp3/xmipp_logo_devel.png
|
|
24
25
|
xmipp3/convert/__init__.py
|
|
25
26
|
xmipp3/convert/convert.py
|
|
26
27
|
xmipp3/convert/dataimport.py
|
|
27
28
|
xmipp3/convert/io_coordinates.py
|
|
29
|
+
xmipp3/legacy/protocols/protocol_angular_resolution_alignment.py
|
|
30
|
+
xmipp3/legacy/protocols/protocol_apply_deformation_zernike3d.py
|
|
31
|
+
xmipp3/legacy/protocols/protocol_classification_gpuCorr.py
|
|
32
|
+
xmipp3/legacy/protocols/protocol_classification_gpuCorr_full.py
|
|
33
|
+
xmipp3/legacy/protocols/protocol_classification_gpuCorr_semi.py
|
|
34
|
+
xmipp3/legacy/protocols/protocol_classify_kmeans2d.py
|
|
35
|
+
xmipp3/legacy/protocols/protocol_deep_align.py
|
|
36
|
+
xmipp3/legacy/protocols/protocol_deep_denoising.py
|
|
37
|
+
xmipp3/legacy/protocols/protocol_enrich.py
|
|
38
|
+
xmipp3/legacy/protocols/protocol_kmeans_clustering.py
|
|
39
|
+
xmipp3/legacy/protocols/protocol_metaprotocol_create_output.py
|
|
40
|
+
xmipp3/legacy/protocols/protocol_metaprotocol_create_subset.py
|
|
41
|
+
xmipp3/legacy/protocols/protocol_metaprotocol_discrete_heterogeneity_scheduler.py
|
|
42
|
+
xmipp3/legacy/protocols/protocol_metaprotocol_golden_highres.py
|
|
43
|
+
xmipp3/legacy/protocols/protocol_mltomo.py
|
|
44
|
+
xmipp3/legacy/protocols/protocol_movie_average.py
|
|
45
|
+
xmipp3/legacy/protocols/protocol_movie_opticalflow.py
|
|
46
|
+
xmipp3/legacy/protocols/protocol_particle_boxsize.py
|
|
47
|
+
xmipp3/legacy/protocols/protocol_reconstruct_heterogeneous.py
|
|
48
|
+
xmipp3/legacy/protocols/protocol_rotational_spectra.py
|
|
49
|
+
xmipp3/legacy/protocols/protocol_screen_deeplearning.py
|
|
50
|
+
xmipp3/legacy/protocols/protocol_solid_angles.py
|
|
51
|
+
xmipp3/legacy/protocols/protocol_split_volume.py
|
|
52
|
+
xmipp3/legacy/protocols/protocol_split_volume_hierarchical_cluster.py
|
|
53
|
+
xmipp3/legacy/protocols/protocol_subtract_projection.py
|
|
54
|
+
xmipp3/legacy/tests/test_protocol_deep_denoising.py
|
|
55
|
+
xmipp3/legacy/tests/test_protocols_angular_resolution_alignment.py
|
|
56
|
+
xmipp3/legacy/tests/test_protocols_gpuCorr_classifier.py
|
|
57
|
+
xmipp3/legacy/tests/test_protocols_gpuCorr_fullStreaming.py
|
|
58
|
+
xmipp3/legacy/tests/test_protocols_gpuCorr_semiStreaming.py
|
|
59
|
+
xmipp3/legacy/tests/test_protocols_metaprotocol_golden_highres.py
|
|
60
|
+
xmipp3/legacy/tests/test_protocols_metaprotocol_heterogeneity.py
|
|
61
|
+
xmipp3/legacy/tests/test_protocols_mixed_movies.py
|
|
62
|
+
xmipp3/legacy/tests/test_protocols_solid_angles.py
|
|
63
|
+
xmipp3/legacy/tests/test_protocols_subtract_projection.py
|
|
64
|
+
xmipp3/legacy/tests/test_protocols_xmipp_movies.py
|
|
65
|
+
xmipp3/legacy/viewers/viewer_angular_resolution_alignment.py
|
|
66
|
+
xmipp3/legacy/viewers/viewer_deep_align.py
|
|
67
|
+
xmipp3/legacy/viewers/viewer_metaprotocol_golden_highres.py
|
|
68
|
+
xmipp3/legacy/viewers/viewer_mltomo.py
|
|
69
|
+
xmipp3/legacy/viewers/viewer_solid_angles.py
|
|
70
|
+
xmipp3/legacy/viewers/viewer_split_volume.py
|
|
28
71
|
xmipp3/protocols/__init__.py
|
|
29
72
|
xmipp3/protocols/protocol_align_volume.py
|
|
30
73
|
xmipp3/protocols/protocol_align_volume_and_particles.py
|
|
@@ -45,6 +88,7 @@ xmipp3/protocols/protocol_classify_pca.py
|
|
|
45
88
|
xmipp3/protocols/protocol_classify_pca_streaming.py
|
|
46
89
|
xmipp3/protocols/protocol_compare_angles.py
|
|
47
90
|
xmipp3/protocols/protocol_compare_reprojections.py
|
|
91
|
+
xmipp3/protocols/protocol_compute_likelihood.py
|
|
48
92
|
xmipp3/protocols/protocol_consensus_classes.py
|
|
49
93
|
xmipp3/protocols/protocol_consensus_local_ctf.py
|
|
50
94
|
xmipp3/protocols/protocol_convert_pdb.py
|
|
@@ -60,7 +104,6 @@ xmipp3/protocols/protocol_deep_hand.py
|
|
|
60
104
|
xmipp3/protocols/protocol_deep_micrograph_screen.py
|
|
61
105
|
xmipp3/protocols/protocol_denoise_particles.py
|
|
62
106
|
xmipp3/protocols/protocol_eliminate_empty_images.py
|
|
63
|
-
xmipp3/protocols/protocol_enrich.py
|
|
64
107
|
xmipp3/protocols/protocol_extract_asymmetric_unit.py
|
|
65
108
|
xmipp3/protocols/protocol_extract_particles.py
|
|
66
109
|
xmipp3/protocols/protocol_extract_particles_movies.py
|
|
@@ -104,7 +147,6 @@ xmipp3/protocols/protocol_resolution_monogenic_signal.py
|
|
|
104
147
|
xmipp3/protocols/protocol_rotate_volume.py
|
|
105
148
|
xmipp3/protocols/protocol_rotational_symmetry.py
|
|
106
149
|
xmipp3/protocols/protocol_screen_deepConsensus.py
|
|
107
|
-
xmipp3/protocols/protocol_screen_deeplearning.py
|
|
108
150
|
xmipp3/protocols/protocol_screen_particles.py
|
|
109
151
|
xmipp3/protocols/protocol_shift_particles.py
|
|
110
152
|
xmipp3/protocols/protocol_shift_volume.py
|
|
@@ -150,12 +192,14 @@ xmipp3/tests/test_protocol_compare_angles.py
|
|
|
150
192
|
xmipp3/tests/test_protocol_consensus_classes3D.py
|
|
151
193
|
xmipp3/tests/test_protocol_ctf_consensus.py
|
|
152
194
|
xmipp3/tests/test_protocol_extract_asymmetric_unit.py
|
|
195
|
+
xmipp3/tests/test_protocol_likelihood.py
|
|
153
196
|
xmipp3/tests/test_protocol_monodir.py
|
|
154
197
|
xmipp3/tests/test_protocol_multiple_fsc.py
|
|
155
198
|
xmipp3/tests/test_protocol_multireference_alignability.py
|
|
156
199
|
xmipp3/tests/test_protocol_reconstruct_fourier.py
|
|
157
200
|
xmipp3/tests/test_protocol_screen_deepConsensus.py
|
|
158
201
|
xmipp3/tests/test_protocol_simulate_ctf.py
|
|
202
|
+
xmipp3/tests/test_protocol_split_frames.py
|
|
159
203
|
xmipp3/tests/test_protocol_validate_fscq.py
|
|
160
204
|
xmipp3/tests/test_protocol_validate_overfitting.py
|
|
161
205
|
xmipp3/tests/test_protocols_add_noise.py
|
|
@@ -178,6 +222,7 @@ xmipp3/tests/test_protocols_zernike3d.py
|
|
|
178
222
|
xmipp3/viewers/__init__.py
|
|
179
223
|
xmipp3/viewers/plotter.py
|
|
180
224
|
xmipp3/viewers/viewer.py
|
|
225
|
+
xmipp3/viewers/viewer_LL_matrix.py
|
|
181
226
|
xmipp3/viewers/viewer_analyze_local_ctf.py
|
|
182
227
|
xmipp3/viewers/viewer_apply_tilt_to_ctf.py
|
|
183
228
|
xmipp3/viewers/viewer_cl2d.py
|
|
@@ -27,13 +27,12 @@
|
|
|
27
27
|
# **************************************************************************
|
|
28
28
|
|
|
29
29
|
import json
|
|
30
|
+
import re
|
|
30
31
|
from datetime import datetime
|
|
31
32
|
import pwem
|
|
32
33
|
from pyworkflow import Config
|
|
33
34
|
import pyworkflow.utils as pwutils
|
|
34
|
-
from scipion.install.funcs import
|
|
35
|
-
from scipion import __version__ as scipionAppVersion
|
|
36
|
-
from packaging.version import Version
|
|
35
|
+
from scipion.install.funcs import CondaCommandDef
|
|
37
36
|
from .base import *
|
|
38
37
|
from .version import *
|
|
39
38
|
from .constants import XMIPP_HOME, XMIPP_URL, XMIPP_DLTK_NAME, XMIPP_CUDA_BIN, XMIPP_CUDA_LIB, XMIPP_GIT_URL
|
|
@@ -152,21 +151,24 @@ class Plugin(pwem.Plugin):
|
|
|
152
151
|
|
|
153
152
|
# When changing dependencies, increment _currentDepVersion
|
|
154
153
|
CONDA_DEPENDENCIES = [
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
'libjpeg-turbo'
|
|
154
|
+
"'cmake>=3.18,<4'", #cmake-4 is not compatible with Relion compilation
|
|
155
|
+
"hdf5>=1.18",
|
|
156
|
+
"sqlite>=3",
|
|
157
|
+
"fftw>=3",
|
|
158
|
+
"make",
|
|
159
|
+
"zlib",
|
|
160
|
+
"openjdk",
|
|
161
|
+
"libtiff",
|
|
162
|
+
"libstdcxx-ng",
|
|
163
|
+
"libjpeg-turbo",
|
|
166
164
|
]
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
165
|
+
if Config.isCondaInstallation():
|
|
166
|
+
condaEnvPath = os.environ['CONDA_PREFIX']
|
|
167
|
+
scipionEnv=os.path.basename(condaEnvPath) # TODO: use pyworkflow method when released: Config.getEnvName()
|
|
168
|
+
|
|
169
|
+
commands = CondaCommandDef(scipionEnv, cls.getCondaActivationCmd())
|
|
170
|
+
commands.condaInstall('-c conda-forge --yes ' + ' '.join(CONDA_DEPENDENCIES))
|
|
171
|
+
commands.touch("deps_installed.txt")
|
|
170
172
|
env.addPackage(
|
|
171
173
|
'xmippDep', version=_currentDepVersion,
|
|
172
174
|
tar='void.tgz',
|
|
@@ -176,32 +178,41 @@ class Plugin(pwem.Plugin):
|
|
|
176
178
|
)
|
|
177
179
|
|
|
178
180
|
if develMode:
|
|
181
|
+
xmippSrc = 'xmippDev'
|
|
182
|
+
installCommands = [
|
|
183
|
+
(f'cd {pwem.Config.EM_ROOT} && rm -rf {xmippSrc} && '
|
|
184
|
+
f'git clone {XMIPP_GIT_URL} {xmippSrc} && '
|
|
185
|
+
f'cd {xmippSrc} && '
|
|
186
|
+
#f'git checkout {branchTest} && '
|
|
187
|
+
f'./xmipp ', COMPILE_TARGETS)
|
|
188
|
+
]
|
|
189
|
+
|
|
179
190
|
env.addPackage(
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
191
|
+
'xmippDev',
|
|
192
|
+
tar='void.tgz',
|
|
193
|
+
commands=installCommands,
|
|
194
|
+
neededProgs=['git', 'gcc', 'g++', 'cmake', 'make'],
|
|
195
|
+
updateCuda=True,
|
|
196
|
+
default=False
|
|
197
|
+
)
|
|
198
|
+
else:
|
|
199
|
+
xmippSrc = f'xmippSrc-{version._binTagVersion}'
|
|
200
|
+
installCommands = [
|
|
201
|
+
(f'cd .. && rm -rf {xmippSrc} && '
|
|
202
|
+
f'git clone {XMIPP_GIT_URL} {xmippSrc} && '
|
|
203
|
+
f'cd {xmippSrc} && '
|
|
204
|
+
f'git checkout {version._binTagVersion} && '
|
|
205
|
+
f'./xmipp --production True ', COMPILE_TARGETS)
|
|
206
|
+
]
|
|
207
|
+
env.addPackage(
|
|
208
|
+
'xmippSrc', version=version._binTagVersion,
|
|
209
|
+
tar='void.tgz',
|
|
210
|
+
commands=installCommands,
|
|
211
|
+
neededProgs=['git', 'gcc', 'g++', 'cmake', 'make'],
|
|
212
|
+
updateCuda=True,
|
|
213
|
+
default=not develMode
|
|
214
|
+
)
|
|
215
|
+
|
|
205
216
|
## EXTRA PACKAGES ##
|
|
206
217
|
installDeepLearningToolkit(cls, env)
|
|
207
218
|
|
|
@@ -216,45 +227,67 @@ class Plugin(pwem.Plugin):
|
|
|
216
227
|
os.path.isfile(os.path.join(bundleDir, 'xmipp')))
|
|
217
228
|
|
|
218
229
|
return bundleDir if isBundle else None
|
|
219
|
-
|
|
230
|
+
|
|
231
|
+
def getNvidiaDriverVersion(plugin):
|
|
232
|
+
"""Attempt to retrieve the NVIDIA driver version using different methods.
|
|
233
|
+
Only returns if a valid version string is found.
|
|
234
|
+
"""
|
|
235
|
+
commands = [
|
|
236
|
+
["nvidia-smi", "--query-gpu=driver_version", "--format=csv,noheader"],
|
|
237
|
+
["cat", "/sys/module/nvidia/version"]
|
|
238
|
+
]
|
|
239
|
+
|
|
240
|
+
for cmd in commands:
|
|
241
|
+
try:
|
|
242
|
+
output = subprocess.Popen(
|
|
243
|
+
cmd,
|
|
244
|
+
env=plugin.getEnviron(),
|
|
245
|
+
stdout=subprocess.PIPE,
|
|
246
|
+
stderr=subprocess.PIPE
|
|
247
|
+
).communicate()[0].decode('utf-8').strip()
|
|
248
|
+
|
|
249
|
+
# Check if the output matches a version pattern like 530.30 or 470
|
|
250
|
+
match = re.match(r'^(\d+)', output)
|
|
251
|
+
if match:
|
|
252
|
+
return match.group(1) # Return just the major version (e.g., "530")
|
|
253
|
+
|
|
254
|
+
except (ValueError, TypeError, FileNotFoundError, subprocess.SubprocessError):
|
|
255
|
+
continue # Try next method
|
|
256
|
+
|
|
257
|
+
return None # No valid version found
|
|
258
|
+
|
|
220
259
|
def installDeepLearningToolkit(plugin, env):
|
|
221
260
|
|
|
222
261
|
preMsgs = []
|
|
223
262
|
cudaMsgs = []
|
|
224
263
|
nvidiaDriverVer = None
|
|
225
264
|
if os.environ.get('CUDA', 'True') == 'True':
|
|
226
|
-
|
|
227
|
-
nvidiaDriverVer = subprocess.Popen(["nvidia-smi",
|
|
228
|
-
"--query-gpu=driver_version",
|
|
229
|
-
"--format=csv,noheader"],
|
|
230
|
-
env=plugin.getEnviron(),
|
|
231
|
-
stdout=subprocess.PIPE
|
|
232
|
-
).stdout.read().decode('utf-8').split(".")[0]
|
|
233
|
-
if int(nvidiaDriverVer) < NVIDIA_DRIVERS_MINIMUM_VERSION:
|
|
234
|
-
preMsgs.append("Incompatible driver %s" % nvidiaDriverVer)
|
|
235
|
-
cudaMsgs.append(f"Your NVIDIA drivers are too old (<{NVIDIA_DRIVERS_MINIMUM_VERSION}). "
|
|
236
|
-
"Tensorflow was installed without GPU support. "
|
|
237
|
-
"Just CPU computations enabled (slow computations)."
|
|
238
|
-
f"To enable CUDA (drivers>{NVIDIA_DRIVERS_MINIMUM_VERSION} needed), "
|
|
239
|
-
"set CUDA=True in 'scipion.conf' file")
|
|
240
|
-
nvidiaDriverVer = None
|
|
241
|
-
except (ValueError, TypeError, FileNotFoundError):
|
|
242
|
-
nvidiaDriverVer = None
|
|
243
|
-
preMsgs.append("Not nvidia driver found. Type: "
|
|
244
|
-
" nvidia-smi --query-gpu=driver_version --format=csv,noheader")
|
|
245
|
-
preMsgs.append(
|
|
246
|
-
"CUDA will NOT be USED. (not found or incompatible)")
|
|
247
|
-
msg = ("Tensorflow installed without GPU. Just CPU computations "
|
|
248
|
-
"enabled (slow computations).")
|
|
249
|
-
cudaMsgs.append(msg)
|
|
250
|
-
useGpu = False
|
|
265
|
+
nvidiaDriverVer = getNvidiaDriverVersion(plugin)
|
|
251
266
|
|
|
252
|
-
if nvidiaDriverVer is
|
|
253
|
-
preMsgs.append("
|
|
254
|
-
|
|
267
|
+
if nvidiaDriverVer is None:
|
|
268
|
+
preMsgs.append("Not nvidia driver found. Type: "
|
|
269
|
+
" nvidia-smi --query-gpu=driver_version --format=csv,noheader")
|
|
270
|
+
preMsgs.append(
|
|
271
|
+
"CUDA will NOT be USED. (not found or incompatible)")
|
|
272
|
+
msg = ("Tensorflow installed without GPU. Just CPU computations "
|
|
273
|
+
"enabled (slow computations).")
|
|
255
274
|
cudaMsgs.append(msg)
|
|
256
|
-
useGpu =
|
|
275
|
+
useGpu = False
|
|
257
276
|
|
|
277
|
+
else:
|
|
278
|
+
if int(nvidiaDriverVer) < NVIDIA_DRIVERS_MINIMUM_VERSION:
|
|
279
|
+
preMsgs.append("Incompatible driver %s" % nvidiaDriverVer)
|
|
280
|
+
cudaMsgs.append(f"Your NVIDIA drivers are too old (<{NVIDIA_DRIVERS_MINIMUM_VERSION}). "
|
|
281
|
+
"Tensorflow was installed without GPU support. "
|
|
282
|
+
"Just CPU computations enabled (slow computations)."
|
|
283
|
+
f"To enable CUDA (drivers>{NVIDIA_DRIVERS_MINIMUM_VERSION} needed), "
|
|
284
|
+
"set CUDA=True in 'scipion.conf' file")
|
|
285
|
+
useGpu = False
|
|
286
|
+
else:
|
|
287
|
+
preMsgs.append("CUDA support found. Driver version: %s" % nvidiaDriverVer)
|
|
288
|
+
msg = "Tensorflow will be installed with CUDA SUPPORT."
|
|
289
|
+
cudaMsgs.append(msg)
|
|
290
|
+
useGpu = True
|
|
258
291
|
|
|
259
292
|
# commands = [(command, target), (cmd, tgt), ...]
|
|
260
293
|
cmdsInstall = list(CondaEnvManager.yieldInstallAllCmds(useGpu=useGpu))
|
|
@@ -155,9 +155,10 @@ class XmippProtocol:
|
|
|
155
155
|
# Looking for the installation target for that conda environment.
|
|
156
156
|
kerasError = False
|
|
157
157
|
envName = CondaEnvManager.getCondaName(self, **kwargs)
|
|
158
|
+
targetName = CondaEnvManager.getCondaEnvTargetFilename(self, envName)
|
|
158
159
|
if not os.path.isfile(os.path.join(pwem.Config.EM_ROOT,
|
|
159
160
|
XMIPP_DLTK_NAME,
|
|
160
|
-
|
|
161
|
+
targetName)):
|
|
161
162
|
errors.append("*%s environment not found*. "
|
|
162
163
|
"Required to run this protocol." % envName)
|
|
163
164
|
kerasError = True
|
|
@@ -477,7 +477,7 @@ def imageToRow(img, imgRow, imgLabel, **kwargs):
|
|
|
477
477
|
acquisitionToRow(img.getAcquisition(), imgRow)
|
|
478
478
|
|
|
479
479
|
# Write all extra labels to the row
|
|
480
|
-
objectToRow(img, imgRow, {}, extraLabels=IMAGE_EXTRA_LABELS)
|
|
480
|
+
objectToRow(img, imgRow, {}, extraLabels=IMAGE_EXTRA_LABELS + kwargs.get('extraLabels', []))
|
|
481
481
|
|
|
482
482
|
# Provide a hook to be used if something is needed to be
|
|
483
483
|
# done for special cases before converting image to row
|