This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
pipeline:window:cryolo [2019/08/29 16:27] twagner [Training] |
pipeline:window:cryolo [2019/09/13 19:24] twagner |
||
---|---|---|---|
Line 36: | Line 36: | ||
You can find the download and installation instructions here: [[howto: | You can find the download and installation instructions here: [[howto: | ||
- | ===== Picking particles - Using a model trained for your data ===== | + | ===== Tutorials |
+ | Depending what you want to do, you can follow one of these Tutorials: | ||
- | ==== Data preparation ==== | + | - I would like to train a model from scratch for picking my particles |
- | CrYOLO supports MRC, TIF and JPG files. It can work with 32 bit data, 8 bit data and 16 bit data. | + | - I would like to train a model from scratch for picking filaments. |
- | It will work on original MRC files, but it will probably improve when the data are denoised. Therefore you should low-pass filter them to a reasonable level. Since Version 1.2 crYOLO can automatically do that for you. You just have to add | + | - I would like to refine |
- | < | + | |
- | " | + | |
- | </ | + | |
- | to the model section in your config file to filter your images down to an absolute frequency of 0.1. The filtered images are saved in folder '' | + | The **first and the second tutorial** are the most common use cases and well tested. The **third tutorial** is still experimental but might give you better results |
- | crYOLO will automatically check if an image in full_data is available in the '' | ||
- | <hidden **Alternative: | ||
- | < | ||
- | Since crYOLO 1.4 you can also use neural network denoising with [[: | ||
- | To use JANNI' | + | ===== Picking particles - Using a model trained for your data ===== |
- | < | ||
- | " | ||
- | </ | ||
- | |||
- | I recommend to use denoising with JANNI only together with a GPU as it is rather slow (~ 1-2 seconds per micrograph on the GPU and 10 seconds per micrograph on the CPU) | ||
- | |||
- | < | ||
- | </ | ||
- | < | ||
+ | ==== Data preparation ==== | ||
If you followed the installation instructions, | If you followed the installation instructions, | ||
Line 78: | Line 64: | ||
* A very heterogenous background could make it necessary to pick more micrographs. | * A very heterogenous background could make it necessary to pick more micrographs. | ||
* If your micrograph is only sparsely decorated, you may need to pick more micrographs. | * If your micrograph is only sparsely decorated, you may need to pick more micrographs. | ||
- | We recommend that you start with 10 micrographs, | + | We recommend that you start with 10 micrographs, |
{{: | {{: | ||
Line 95: | Line 80: | ||
* CONTROL + LEFT MOUSE BUTTON: Remove a box | * CONTROL + LEFT MOUSE BUTTON: Remove a box | ||
- | You can change the box size in the main window, by changing the number in the text field labeled //Box size://. Press //Set// to apply it to all picked particles. | + | You can change the box size in the main window, by changing the number in the text field labeled //Box size://. Press //Set// to apply it to all picked particles. |
If you finished picking from your micrographs, | If you finished picking from your micrographs, | ||
Line 101: | Line 86: | ||
Now create a third folder with the name '' | Now create a third folder with the name '' | ||
+ | |||
+ | ==== Start crYOLO ==== | ||
+ | You can use crYOLO either by command line or by using the GUI. The GUI should be easier for most users. You can start it with: | ||
+ | < | ||
+ | cryoloo.py | ||
+ | </ | ||
+ | |||
+ | SCREENSHOT HERE | ||
+ | |||
+ | The crYOLO GUI is basically a visualization of the commandline interface. On left side, you find all possible " | ||
+ | * **conifg**: With this action you create the configuration file that you need to run crYOLO. | ||
+ | * **train**: This action let you train crYOLO from scratch or refine an existing model. | ||
+ | * **predict**: | ||
+ | * **evaluation**: | ||
+ | |||
+ | Each action has several parameters which are organized in tabs. Once you chosen your settings you can press " | ||
+ | |||
+ | SCREENSHOT HERE | ||
+ | |||
+ | It will tell you when something went wrong. Pressing " | ||
==== Configuration ==== | ==== Configuration ==== | ||
- | You now have to create a config | + | You now have to create a configuration |
+ | |||
+ | You can either use the commandline to create the configuration file or the GUI. | ||
+ | |||
+ | **Using the command line:** | ||
+ | |||
+ | To create an empty file do: | ||
< | < | ||
touch config.json | touch config.json | ||
Line 149: | Line 160: | ||
// | // | ||
- | Please set the value in the //" | + | Please set the value in the //" |
< | < | ||
" | " | ||
Line 158: | Line 169: | ||
**Alternative: | **Alternative: | ||
- | Since crYOLO 1.4 you can also use neural network denoising with [[: | + | Since crYOLO 1.4 you can also use neural network denoising with [[: |
To use JANNI' | To use JANNI' | ||
Line 172: | Line 183: | ||
Please note the wiki entry about the [[: | Please note the wiki entry about the [[: | ||
+ | **Using the GUI:** | ||
==== Training ==== | ==== Training ==== | ||
Line 420: | Line 431: | ||
In principle, there is not much difference in training crYOLO for filament picking and particle picking. For project with roughly 20 filaments per image we successfully trained on 40 images (=> 800 filaments). However, in our experience the warm-up phase and training need a little bit more time: | In principle, there is not much difference in training crYOLO for filament picking and particle picking. For project with roughly 20 filaments per image we successfully trained on 40 images (=> 800 filaments). However, in our experience the warm-up phase and training need a little bit more time: | ||
- | **1. Warm up your network** | + | **Train your network |
- | + | ||
- | < | + | |
- | cryolo_train.py -c config.json -w 10 -g 0 | + | |
- | </ | + | |
- | + | ||
- | **2. Train your network** | + | |
< | < | ||
- | cryolo_train.py -c config.json -w 0 -g 0 -e 10 | + | cryolo_train.py -c config.json -w 10 -g 0 -e 10 |
</ | </ | ||