Difference between revisions of "Walkthrough on adaptive bandpass filtering"
Line 1: | Line 1: | ||
+ | The ''adaptive bandpass filtering'' technique encompasses two elements: | ||
+ | * independent refinement of two half sets of the data | ||
+ | * dynamic computation of the low pass filter at each iteration | ||
== Creating a test data set == | == Creating a test data set == | ||
+ | <tt>dtutorial ttest2 -M 50 -noise 0.2 -tight 1 -template ribosome32.em -dshift 0</tt> | ||
− | == Creating | + | We can check the produced images: |
+ | |||
+ | <tt> dslices ttest2/data -jz 0 -labels 1</tt> | ||
+ | |||
+ | [[ File:ABPdata.png |thumb|center|800px| Tutorial data set depicted with <tt>dslice</tt>]] | ||
+ | |||
+ | == Creating an ABP project with the GUI== | ||
+ | |||
+ | The easiest way to create an adaptive bandpass project is to first create an auxiliary single reference project and then deriving the corresponding ABP project. | ||
=== Creation of supporting single reference project=== | === Creation of supporting single reference project=== | ||
− | + | Launch the project editor through: | |
− | + | <tt>dcp;</tt> | |
− | [[ | + | [[ File:ABPmanualCreate.png |thumb|center|800px| {Project creation ]] |
− | + | The different fields will open as we input the required info. We start with the particles. | |
− | [[ File:ABPmanualMasks.png |thumb|center|800px| | + | [[ File:ABPmanualParticles.png |thumb|center|800px| Entering the tutorial data set ]] |
+ | |||
+ | === Seed files === | ||
+ | Table, template and masks don't need special formatting. We will just provide ''Dynamo'' with the default options. The table can be initialized to a ''blank'' table, which just contains the indices of the particles. | ||
+ | |||
+ | [[ File:ABPmanualTable.png |thumb|center|800px| Creation of a blank table]] | ||
+ | |||
+ | Template can be initialized just as an average of particles. This average will be recomputed anyway when we derive the ABP project. | ||
+ | |||
+ | [[ File:ABPmanualTemplate.png |thumb|center|800px| Creation of initial template ]] | ||
+ | |||
+ | Masks are initiated to default values. This means spherical masks for alignment and classification masks, and full cubes for smoothing and fourier mask of template. | ||
+ | |||
+ | [[ File:ABPmanualMasks.png |thumb|center|800px| Default masks ]] | ||
=== Derivation of ABP project === | === Derivation of ABP project === | ||
− | [[ File:ABPmanualABP.png |thumb|center|800px| | + | After the initialization of the support single reference project, you can derive an ABP project, through ''Multireference > Adaptive filtering > derive a project " |
+ | |||
+ | [[ File:ABPmanualABP.png |thumb|center|800px| Derivation of ABP Projects ]] | ||
+ | |||
+ | You need to edit the created new project (by default will have the same name as the base project with the string <tt>_eo</tt> appended) | ||
− | [[ File:ABPmanualABPinput.png |thumb|center|800px| | + | [[ File:ABPmanualABPinput.png |thumb|center|800px| Bring the project to scope inside <tt>dcp</tt> ]] |
− | [[ File:ABPmanualABPTemplate.png |thumb|center|800px| | + | [[ File:ABPmanualABPTemplate.png |thumb|center|800px| Template creation ]] |
[[ File:ABPmanualFSCinitial.png |thumb|center|800px| xxxxx ]] | [[ File:ABPmanualFSCinitial.png |thumb|center|800px| xxxxx ]] | ||
Line 47: | Line 76: | ||
[[ File:ABPmanualFSCInteractiveLastIteration.png |thumb|center|800px| xxxxx ]] | [[ File:ABPmanualFSCInteractiveLastIteration.png |thumb|center|800px| xxxxx ]] | ||
− | [[ |thumb|center|800px| xxxxx ]] | + | == Creating an ABP project from the command line == |
+ | |||
+ | === Create the support project === | ||
+ | <nowiki>dcp.new('ptest02','d','ttest2/data','show',0); | ||
+ | |||
+ | ==== Provide initial files ==== | ||
+ | dvhint_files ptest02 item *; </nowiki> | ||
+ | |||
+ | ==== Change execution parameters==== | ||
+ | <nowiki>dvput ptest02 -cr 360 -cs 45 -ir 360 -is 45 -rff 2 -rf 4 -dst matlab_parfor ... | ||
+ | -cores 2 -mwa 2 -dim 16 </nowiki> | ||
+ | |||
+ | === Derive ABP project === | ||
+ | |||
+ | <tt>dveo ptest02 --abf </tt> | ||
+ | |||
+ | And create the templates: | ||
+ | <tt>dvtemplate ptest02_eo --ro -N 10 </tt> | ||
+ | |||
+ | % check initial references | ||
+ | |||
+ | === Derive ABP project === | ||
+ | <> dpkproject.fsc.plotFSCInitialReferences(dvload('ptest_eo')); | ||
+ | |||
+ | dvput ptest02_eo -abpi 3 -abpt 0.143 -abppb 0 -ite 10 ite_r2 0 -ite_r3 0 -lim 3 -limm 1 | ||
+ | dvhint_files ptest02_eo item masks | ||
+ | dvunfold ptest02_eo | ||
+ | ptest02_eo | ||
+ | |||
+ | % look at the plots | ||
+ | dpkconv.plotConvergenceAll('ptest02_eo') | ||
+ | |||
+ | [[ File:ABPcommandCoarse.png |thumb|center|800px| xxxxx ]] | ||
+ | |||
+ | <tt>ddb ptest02_eo:bandpass_resolution -r t<tt> | ||
+ | |||
+ | <tt>disp(t);</tt> | ||
+ | |||
+ | == Extending an ABP project from the command line == | ||
+ | |||
+ | <tt>dynamo_vpr_branch ptest02_eo refine02 -n 0 -ite 7 -br 1 </tt> | ||
+ | <tt>dvput refine02 -cr 15 -cs 3 -ir 15 -is 3 -rff 2 -rf 2 -ite 10 -abpi 8 -mra 0 -dim 32</tt> | ||
+ | <tt>dvunfold refine02 </tt> | ||
+ | <tt> refine02 </tt> | ||
+ | <tt>dpkconv.plotConvergenceAll('refine02');</tt> | ||
+ | |||
+ | [[ File:ABPfineResult.png |thumb|center|800px| xxxxx ]] | ||
+ | |||
+ | [[ File:ABPfineComparison.png |thumb|center|800px| xxxxx ]] |
Revision as of 17:53, 27 November 2017
The adaptive bandpass filtering technique encompasses two elements:
- independent refinement of two half sets of the data
- dynamic computation of the low pass filter at each iteration
Contents
Creating a test data set
dtutorial ttest2 -M 50 -noise 0.2 -tight 1 -template ribosome32.em -dshift 0
We can check the produced images:
dslices ttest2/data -jz 0 -labels 1
Creating an ABP project with the GUI
The easiest way to create an adaptive bandpass project is to first create an auxiliary single reference project and then deriving the corresponding ABP project.
Creation of supporting single reference project
Launch the project editor through:
dcp;
The different fields will open as we input the required info. We start with the particles.
Seed files
Table, template and masks don't need special formatting. We will just provide Dynamo with the default options. The table can be initialized to a blank table, which just contains the indices of the particles.
Template can be initialized just as an average of particles. This average will be recomputed anyway when we derive the ABP project.
Masks are initiated to default values. This means spherical masks for alignment and classification masks, and full cubes for smoothing and fourier mask of template.
Derivation of ABP project
After the initialization of the support single reference project, you can derive an ABP project, through Multireference > Adaptive filtering > derive a project "
You need to edit the created new project (by default will have the same name as the base project with the string _eo appended)
Creating an ABP project from the command line
Create the support project
dcp.new('ptest02','d','ttest2/data','show',0); ==== Provide initial files ==== dvhint_files ptest02 item *;
Change execution parameters
dvput ptest02 -cr 360 -cs 45 -ir 360 -is 45 -rff 2 -rf 4 -dst matlab_parfor ... -cores 2 -mwa 2 -dim 16
Derive ABP project
dveo ptest02 --abf
And create the templates:
dvtemplate ptest02_eo --ro -N 10 % check initial references
Derive ABP project
<> dpkproject.fsc.plotFSCInitialReferences(dvload('ptest_eo')); dvput ptest02_eo -abpi 3 -abpt 0.143 -abppb 0 -ite 10 ite_r2 0 -ite_r3 0 -lim 3 -limm 1 dvhint_files ptest02_eo item masks dvunfold ptest02_eo ptest02_eo % look at the plots dpkconv.plotConvergenceAll('ptest02_eo')
ddb ptest02_eo:bandpass_resolution -r t
disp(t);
Extending an ABP project from the command line
dynamo_vpr_branch ptest02_eo refine02 -n 0 -ite 7 -br 1 dvput refine02 -cr 15 -cs 3 -ir 15 -is 3 -rff 2 -rf 2 -ite 10 -abpi 8 -mra 0 -dim 32 dvunfold refine02 refine02 dpkconv.plotConvergenceAll('refine02');