|
Bsoft 2.1.4
Bernard's software package
|
Header file for functions to process helical data. More...
Functions | |
| double * | filament_profile (Bfilnode *fnode, Bimage *p, long img_num, int id, double width, long &n) |
| Calculates a filament profile and node profile. More... | |
| double | filaments_center (Bfilament *fillist, Bimage *p, long img_num, int filament_width) |
| Centers filament nodes in a micrograph. More... | |
| double | project_center_filaments (Bproject *project, int filament_width) |
| Centers filament nodes in all micrographs in a project. More... | |
| int | project_filament_powerspectrum (Bproject *project, int pad, int rotated, Bstring &path) |
| Calculates and average power spectrum from filaments. More... | |
| Bimage * | project_filament_density (Bproject *project, int filament_width) |
| Extracts filament images from micrographs defined in a project and estimates their density per length. More... | |
| int | mg_generate_layer_lines (Bmicrograph *mg, int rad_lim) |
| Generates layer lines given the unit cell vectors. More... | |
| int | img_mask_layer_lines (Bimage *p, Blayerline *layer_line, float helix_axis, float width) |
| Masks the image using the list of layer lines. More... | |
| double * | img_extract_layer_line (Bimage *p, Blayerline *line, float helix_axis, int length) |
| Extracts one layer line from an image. More... | |
| int | mg_extract_show_layer_lines (Bmicrograph *mg, int length, int show) |
| Extracts and prints layer lines from an image with corresponding Bessel functions. More... | |
Header file for functions to process helical data.
| double * filament_profile | ( | Bfilnode * | fnode, |
| Bimage * | p, | ||
| long | img_num, | ||
| int | id, | ||
| double | width, | ||
| long & | n | ||
| ) |
Calculates a filament profile and node profile.
| *fnode | node list. |
| *p | image with filament. |
| img_num | sub-image number. |
| id | identifier of selected node. |
| width | width of box around filament. |
| &n | number of elements in the profile. |
A filament image is extracted from the micrograph along a spline through the nodes. The overall profile and the profile around a specified node are calculated and returned in a single array. It only works for 2D images.
Centers filament nodes in a micrograph.
| *fillist | list of filaments. |
| *p | image with filament. |
| img_num | sub-image number. |
| filament_width | width of box around filament. |
The profile for each node is calculated and centered by cross-correlation with the mirrored profile.
| double * img_extract_layer_line | ( | Bimage * | p, |
| Blayerline * | line, | ||
| float | helix_axis, | ||
| int | length | ||
| ) |
Extracts one layer line from an image.
| *p | power spectrum. |
| *line | layer line. |
| helix_axis | helix axis angle. |
| length | length of line. |
| int img_mask_layer_lines | ( | Bimage * | p, |
| Blayerline * | layer_line, | ||
| float | helix_axis, | ||
| float | width | ||
| ) |
Masks the image using the list of layer lines.
| *p | complex image. |
| *layer_line | layer line list. |
| helix_axis | helix axis angle. |
| width | width of mask for a line. |
| int mg_extract_show_layer_lines | ( | Bmicrograph * | mg, |
| int | length, | ||
| int | show | ||
| ) |
Extracts and prints layer lines from an image with corresponding Bessel functions.
| *mg | micrograph. |
| length | length of line. |
| show | show: 1=extracted layer lines, 2=Bessel functions, 3=both |
| int mg_generate_layer_lines | ( | Bmicrograph * | mg, |
| int | rad_lim | ||
| ) |
Generates layer lines given the unit cell vectors.
| *mg | micrograph. |
| rad_lim | layer line radial limit. |
The structure factor location is given by:
x = uh + vk
where u and v are the unit cell vectors,
and h and k are the associated Miller indices.
| double project_center_filaments | ( | Bproject * | project, |
| int | filament_width | ||
| ) |
Centers filament nodes in all micrographs in a project.
| *project | project object. |
| filament_width | width of box around filament. |
The profile for each node is calculated and centered by cross-correlation with the mirrored profile.
Extracts filament images from micrographs defined in a project and estimates their density per length.
| *project | micrograph project. |
| filament_width | extracted filament width. |
Calculates and average power spectrum from filaments.
| *project | project parameter structure. |
| pad | additional padding before transformation. |
| rotated | flag to indicate if particles are already rotated. |
| &path | path to write power spectra. |
Particles derived from picked filaments are extracted and transformed to orient the helical axis along the x-axis. These images are then Fourier transformed and their power spectra averaged. One average per micrograph is calculated. Requirements: The filaments must be picked and converted to particle locations.