v2.0.0beta - September 19, 2024
15 |
16 | - Multiple structures per micrograph can now be requested (structure sets).
17 | - Use the same --structures flag followed by either a single structure or multiple. Supports any number of structure sets, like this:
18 | - virtualice.py -s 1TIM [1PMA, 50882] [my_structure1.mrc, 3DRE, 6TIM]
19 | - The above command will make one set of micrographs with only PDB 1TIM, another set with PDB 1PMA and EMD-50882, and another set with a local file (my_structure1.mrc), PDB 3DRE, and PDB 6TIM.
20 | - Preferred orientation, particle distributions, and overlapping & aggregated particles are fully supported.
21 | - Filtering of edge, overlapping, and obscured particles is fully supported.
22 | - Coordinate files are saved independently in .star, .mod, and/or .coord files (one per structure in a structure set).
23 | - This update is significant because it allows for ground-truth datasets of heterogeneous proteins - e.g. continuous or discrete conformations, compositional heterogeneity, or completely different proteins.
24 |
25 |
26 |
27 | v1.0.0 - September 10, 2024
34 |
35 | - Generates half-synthetic cryoEM micrographs and particles from buffer images and PDB IDs, EMDB IDs, or local files.
36 | - Creates coordinate files (.star, .mod, .coord), not including particles obscured by junk/substrate or too close to the edge.
37 | - Adds Poisson noise and dose-dependent damage to simulated frames and Gaussian noise to particles.
38 | - Applies the Contrast Transfer Function (CTF) to simulate microscope optics.
39 | - Control over overlapping particles and particle aggregation.
40 | - Outputs micrographs in MRC, PNG, and JPEG formats, and optionally cropped particles as MRCs.
41 | - Multi-core and GPU processing.
42 | - Extensive customization options including particle distribution, ice thickness, microscope parameters, and downsampling.
43 |
44 |
45 |
46 | ## Requirements and Installation
47 |
48 | VirtualIce requires Python 3, EMAN2, IMOD, and several dependencies, which can be installed using pip:
49 |
50 | ```bash
51 | pip install cupy gpustat mrcfile numpy opencv-python pandas scipy SimpleITK
52 | ```
53 |
54 | To use VirtualIce, clone the github directory, make virtualice.py executable (`chmod +x virtualice.py`), download the ice_images/ directory from [EMPIAR-12287](https://www.ebi.ac.uk/empiar/EMPIAR-12287/) to the VirtualIce/ice_images/ directory, and ensure virtualice.py is in your environment for use.
55 |
56 | ## Examples
57 |
58 |
59 | ### Example 1 (top-left: PDB 1TIM, 53 kDa, top-right: [1DAT, 442 kDa, 7ZP8, 1385 kDa, and 2HCO, 65 kDa], bottom-left: 1RUZ, 165 kDa, bottom-right: 1PMA, 686 kDa):
60 | 
61 |
62 | ### Example 2 (T20S Proteasome; PDB 1PMA, 686 kDa):
63 | 
64 |
65 | ### Example 3 (Triose Phosphate Isomerase; PDB 1TIM, 53 kDa):
66 | 
67 |
68 | ### Example 4 (TRPV5; EMD 0594, 306 kDa):
69 | 
70 |
71 | ## User Guide
72 |
73 | The script can be run from the command line and takes a number of arguments.
74 |
75 | ### Basic example usage:
76 |
77 | ```
78 | virtualice.py -s 1TIM -n 10
79 | ```
80 |
81 | Generates `-n` _10_ random micrographs of PDB `-s` _1TIM_.
82 |
83 | Arguments:
84 |
85 | - `-s`, `--structures`: Specify PDB ID(s), EMDB ID(s), local files, and/or 'r' for random PDB/EMDB structures.
86 | - `-n`, `--num_images`: Number of micrographs to generate.
87 |
88 | ### Basic example usage:
89 |
90 | ```
91 | virtualice.py -s [1TIM, 11638] 1PMA -n 50
92 | ```
93 |
94 | Generates `-n` _50_ random micrographs for the structure set consisting of `-s` PDB _1TIM_ and EMDB-_11638_ (multi-structure micrographs), and `-n` _50_ random micrographs of `-s` PDB _1PMA_ (single-structure micrographs).
95 |
96 | ### Advanced example usage:
97 |
98 | ```
99 | virtualice.py -s 1TIM r my_structure.mrc 11638 -n 3 -I -P -J -Q 90 -b 4 -D n -ps 2
100 | ```
101 |
102 | Generates `-n` _3_ random micrographs of PDB `-s` _1TIM_, a