User Tools

Site Tools


downloads:cryolo_1

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
downloads:cryolo_1 [2019/04/23 10:26]
twagner [crYOLO]
downloads:cryolo_1 [2019/07/15 18:01]
twagner [Known issues]
Line 12: Line 12:
 You can find more technical details in our paper: You can find more technical details in our paper:
  
 +Nature Communications Biology:
 +[[https://doi.org/10.1038/s42003-019-0437-z|SPHIRE-crYOLO is a fast and accurate fully automated particle picker for cryo-EM]]
 +
 +Preprint:
 [[https://www.biorxiv.org/content/10.1101/356584v2|SPHIRE-crYOLO: A fast and accurate fully automated particle picker for cryo-EM]] [[https://www.biorxiv.org/content/10.1101/356584v2|SPHIRE-crYOLO: A fast and accurate fully automated particle picker for cryo-EM]]
  
Line 30: Line 34:
  
 ====crYOLO==== ====crYOLO====
-Version: 1.3.4+Version: 1.4.0
  
-Uploaded:  23April 2019+Uploaded:  11July 2019
  
-[[ftp://ftp.gwdg.de/pub/misc/sphire/crYOLO_V1_3_4/cryolo-1.3.4.tar.gz|DOWNLOAD GPU VERSION]]+[[ftp://ftp.gwdg.de/pub/misc/sphire/crYOLO_V1_4_0/cryolo-1.4.0.tar.gz|DOWNLOAD]]
  
-[[ftp://ftp.gwdg.de/pub/misc/sphire/crYOLO_V1_3_4/cryolo-1.3.4.dev0.tar.gz|DOWNLOAD CPU VERSION]]+Please see [[downloads:cryolo_1#installation|install instructions]] how to get it running on the CPU.
  
 ====crYOLO boxmanager==== ====crYOLO boxmanager====
  
-Version: 1.2.1+Version: 1.2.3
  
-Uploaded: 05April 2019+Uploaded: 11July 2019
  
-[[ftp://ftp.gwdg.de/pub/misc/sphire/crYOLO_BM_V1_2_1/cryoloBM-1.2.1.tar.gz|DOWNLOAD]]+[[ftp://ftp.gwdg.de/pub/misc/sphire/crYOLO_BM_V1_2_3/cryoloBM-1.2.3.tar.gz|DOWNLOAD]]
  
 [{{ :downloads:cryolophosaurusdb.jpg?150|**crYOLO Phosauraus**Net's eponym}}] [{{ :downloads:cryolophosaurusdb.jpg?150|**crYOLO Phosauraus**Net's eponym}}]
Line 51: Line 55:
  
  
-=== For cryo images === +=== For cryo images (low-pass filtered) === 
-Number of datasets: 32 real, 10 simulated, 10 particle free datasets on various grids with contaminations+Number of datasets: 38 real, 10 simulated, 10 particle free datasets on various grids with contamination
  
-Uploaded: 14March 2019+Uploaded: 17May 2019
  
-[[ftp://ftp.gwdg.de/pub/misc/sphire/crYOLO-GENERAL-MODELS/gmodel_phosnet_20190314.h5+[[ftp://ftp.gwdg.de/pub/misc/sphire/crYOLO-GENERAL-MODELS/gmodel_phosnet_20190516.h5 
 +|DOWNLOAD]]  
 + 
 +[[pipeline:window:cryolo#picking_particles_-_without_training_using_a_general_model |Valid configuration file]] 
 + 
 +=== For cryo images (neural network denoised with JANNI) === 
 +Number of datasets: 38 real, 10 simulated, 10 particle free datasets on various grids with contamination 
 + 
 +Uploaded: 11. July 2019 
 + 
 +[[ftp://ftp.gwdg.de/pub/misc/sphire/crYOLO-GENERAL-MODELS/gmodel_phosnet_201907_nn_denoise.h5
 |DOWNLOAD]]  |DOWNLOAD]] 
  
 [[pipeline:window:cryolo#cryoem_images |Valid configuration file]] [[pipeline:window:cryolo#cryoem_images |Valid configuration file]]
  
-Info: Trained on cryo images, therefore negative stain will not work.+<note> 
 +The performance of the general model based on JANNI denoised data compared to low-pass filtered data did not improve. The average AUC on the validation data was in both cases the same (0.85). But this might be because of the data selected for the general model. I assume that especially on very noisy micrographs JANNI will improve the results. 
 +</note> 
 + 
  
 === For negative stain images === === For negative stain images ===
Line 78: Line 96:
 ====== Known issues ===== ====== Known issues =====
   * Issue 0: Training on multiple GPUs sometimes lead to worse performance (higher loss). We currently recommend to train on single gpus.   * Issue 0: Training on multiple GPUs sometimes lead to worse performance (higher loss). We currently recommend to train on single gpus.
 +  * Issue 17: On the fly filtering (%%--%%otf) is slower than using it not, as the filtering is not parallelized in this case. 
 +  * Issue 22: Since crYOLO 1.4.0 it sometimes take long until it starts picking. The reason seems to be the tensorflow update.
 +<hidden Closed issues>
   * <del>  Issue 1: crYOLO sometimes not exit properly after training finished. Has to be killed manually.</del>   * <del>  Issue 1: crYOLO sometimes not exit properly after training finished. Has to be killed manually.</del>
   * <del>Issue 2: If you use automatic filtering with .tif files, you get an error like "OSError: cannot identify image file 'filtered_folder/another_folder/my_image.tif'". It will be fixed in the next release.</del>   * <del>Issue 2: If you use automatic filtering with .tif files, you get an error like "OSError: cannot identify image file 'filtered_folder/another_folder/my_image.tif'". It will be fixed in the next release.</del>
Line 94: Line 115:
   * <del>Issue 15: If the %%--%%gpu_fraction is used, crYOLO always uses GPU 0. Will be fixed in 1.3.1.</del>    * <del>Issue 15: If the %%--%%gpu_fraction is used, crYOLO always uses GPU 0. Will be fixed in 1.3.1.</del> 
   * <del>Issue 16: %%--%%gpu_fraction only works for prediction, not for training. Will be fixed in 1.3.2.</del>   * <del>Issue 16: %%--%%gpu_fraction only works for prediction, not for training. Will be fixed in 1.3.2.</del>
-  * Issue 17: On the fly filtering (%%--%%otf) is slower than using it not, as the filtering is not parallelized in this case.  
   * <del>Issue 18: Prediction is broken in 1.3.2. It removes all particles as it claim they are not fully immersed in the image.</del>   * <del>Issue 18: Prediction is broken in 1.3.2. It removes all particles as it claim they are not fully immersed in the image.</del>
   * <del>Issue 19: Filtering does not work if target image directory is absolute path.</del>   * <del>Issue 19: Filtering does not work if target image directory is absolute path.</del>
 +  * <del>Issue 20: crYOLO 1.3.4 has a normalization bug. During training the images are normalized seperately, but during prediction is done batch wise. Workaround: Use -pbs 1 during prediction. It will be fixed in 1.3.5.</del>
 +  * <del>Issue 21: The search range for filament tracing is too low for many datasets. To check if you are affected: Use your trained model and pick without the filament options. Check if your filaments a nicely picked (many consecutive boxes on a filament). In the next version, the search range will be increased and added as an optional parameter.</del>
 +  * <del>Issue 22: If absolute paths are used in the field "train_image" in your configuration file, filtering is skipped.</del>
 +</hidden>
  
  
Line 122: Line 146:
 After that, create a new virtual environment: After that, create a new virtual environment:
 <code> <code>
-conda create -n cryolo -c anaconda python=3.6 pyqt=5 cudnn=7.1.2+conda create -n cryolo -c anaconda python=3.6 pyqt=5 cudnn=7.1.2 cython
 </code> </code>
  
Line 130: Line 154:
 </code> </code>
  
-Install crYOLO:+Install fast numpy from conda: 
 +<code> 
 +conda install numpy==1.15.4 
 +</code> 
 + 
 +In case you run **crYOLO on a GPU** run: 
 +<code> 
 +pip install cryolo-X.Y.Z.tar.gz[gpu]  
 +</code> 
 + 
 +But if you want to run **crYOLO on a CPU** run: 
 +<code> 
 +pip install cryolo-X.Y.Z.tar.gz[cpu]  
 +</code> 
 + 
 +Finally you install the cryolo boxmanager:
 <code> <code>
-conda install numpy==1.14.5 
-pip install cryolo-X.Y.Z.tar.gz  
 pip install cryoloBM-X.Y.Z.tar.gz pip install cryoloBM-X.Y.Z.tar.gz
 </code> </code>
Line 145: Line 182:
 ===== Run it on the CPU ==== ===== Run it on the CPU ====
  
-There is also a way to run crYOLO on CPU. To use it, just install the CPU version as provided in the download section. This is especially usefull when you would like to apply the generalized model and don't have a NVIDIA GPU. +There is also a way to run crYOLO on CPU. To use it, just follow the instruction in the [[downloads:cryolo_1#installation|install section]]. This is especially useful when you would like to apply the generalized model and don't have a NVIDIA GPU. 
  
 Picking with crYOLO is also quite fast on the CPU. On my local machine (Intel i9) it takes roughly 1 second per micrograph and on our low-performance notebooks (Intel i3) 4 seconds.  Picking with crYOLO is also quite fast on the CPU. On my local machine (Intel i9) it takes roughly 1 second per micrograph and on our low-performance notebooks (Intel i3) 4 seconds. 
Line 158: Line 195:
  
 ====crYOLO==== ====crYOLO====
 +
 +**crYOLO 1.4.0:**
 +  * Support Just Another Noise 2 Noise Implemnentation ([[:janni|JANNI]])
 +  * Add --mask_width as optional parameter for the filament mode
 +  * Update tensorflow from 1.10.1 to 1.12.3 to make crYOLO compatible with JANNI
 +  * Update numpy from 1.14.5 to 1.15.4 to make crYOLO compatible with JANNI
 +
 +<hidden **Old crYOLO change logs**>
 +**crYOLO 1.3.6:**
 +  * Changed filament search radius factor from 0.8 to 1.41 (this fixed issue 21)
 +  * Add search radius factor as [[pipeline:window:cryolo#advanced_parameters|advanced parameter]] (-sr) during prediction in filament mode
 +  * Improved error message in case of corrupted config file
 +  * Fixed issue 22: If absolute paths are used in the field “train_image” in your configuration file, filtering is skipped.
 +
 +**crYOLO 1.3.5:**
 +  * Fixed issue 20: During training the images are normalized separately, but during prediction is done batch wise. The lead to confusing results: some micrographs were perfectly picked, some totally unreasonable, even with the same defocus. This bug only affects the picking, already trained models can still be used.
 +  * Remove unnecessary dependencies
 +  * Add %%__%%version%%__%% to %%__%%init%%__%%.py for easy access to package version.
 +
 **crYOLO 1.3.4:** **crYOLO 1.3.4:**
   * Support for SPHIRE 1.2   * Support for SPHIRE 1.2
Line 163: Line 219:
   * Installation now checks if python 3 is used.   * Installation now checks if python 3 is used.
   * Fix issue 19: Filtering does not work if target image directory is absolute path.   * Fix issue 19: Filtering does not work if target image directory is absolute path.
-  * Fix crash when --otf was specified without the filtering in config file+  * Fix crash when %%--%%otf was specified but filtering was not specified in the config file
  
 **crYOLO 1.3.3:** **crYOLO 1.3.3:**
Line 283: Line 339:
   * Unify image augmentation   * Unify image augmentation
  
 +</hidden>
 ====crYOLO Boxmanager==== ====crYOLO Boxmanager====
 +**crYOLO Boxmanager Version 1.2.3:**
 +  * Make it compatible with current new environment
 +
 +<hidden **Old crYOLO Boxmanager change logs**>
 +**crYOLO Boxmanager Version 1.2.2:**
 +  * Makes sure that the correct version of MatplotLib is used.
 +
 **crYOLO Boxmanager Version 1.2.1:** **crYOLO Boxmanager Version 1.2.1:**
    * Press "h" for hiding the boxes    * Press "h" for hiding the boxes
Line 315: Line 379:
   * Fix crash when cancel import boxfiles   * Fix crash when cancel import boxfiles
   * Fix crash with qt4   * Fix crash with qt4
 +</hidden>
 +==== General PhosaurusNet model ====
 +**Version 20190516:**:
 +  * Added four more inhouse datasets
 +  * Added SNRNP (Thanks to Clement Charenton) 
  
-==== General PhosaurusNet model ====+<hidden Old General PhosaurusNet model change logs>
 **Version 20190315:**: **Version 20190315:**:
   * Added KLH   * Added KLH
Line 326: Line 395:
  
 **Version 20181221:** **Version 20181221:**
- +  * Same datasets as the general YOLO network model version 20181120 but with trained with PhosaurusNet. 
-Same datasets as the general YOLO network model version 20181120 but with trained with PhosaurusNet. +</hidden>
 ==== General YOLO network model in patch mode ==== ==== General YOLO network model in patch mode ====
 +<hidden Old general YOLO network model in patch mode>
 **Version 20181120:** **Version 20181120:**
  
Line 380: Line 448:
   * picornavirus (EMPIAR 10033) and    * picornavirus (EMPIAR 10033) and 
   * an internal dataset.    * an internal dataset. 
 +</hidden>
  
downloads/cryolo_1.txt · Last modified: 2021/02/19 09:43 by twagner