| Bsoft 1.9 Bernard's software package

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Functions | Variables
img_backproject.cpp File Reference

3D reconstruction by backprojection More...

`#include "img_backproject.h"`
`#include "img_fourier.h"`
`#include "mg_processing.h"`
`#include "rwimg.h"`
`#include "Matrix3.h"`
`#include "Complex.h"`
`#include "utilities.h"`

Go to the source code of this file.

## Functions
Bimage * | project_back_projection (Bproject *project, int num_select, Vector3< int > map_size, Vector3< float > sampling, double scale, double resolution)
| Back projects a set of 2D images into a 3D volume. More...
int | img_back_project_one (Bimage *p, Bimage *pmap)
| Back-projects a 2D image into a 3D volume. More...
int | img_weigh_transform (Bimage *p, double resolution, double threshold)
| Weighs a transform with the FOM. More...
Bimage * | img_backprojection_weigh (Bimage **pacc, int imap, int nmaps, int nthreads, double resolution, double threshold, fft_plan planf, fft_plan planb)
| Accumulates multiple backprojections and weighs the transform with the FOM. More...

## Variables
int | verbose

## Detailed Description

3D reconstruction by backprojection

Author
  Bernard Heymann

Date
  Created: 20010414
  Modified: 20121101

Definition in file img_backproject.cpp.

## Function Documentation

int img_back_project_one | ( | Bimage * | p,
|  | Bimage * | pmap
| ) |  |

Back-projects a 2D image into a 3D volume.

Author
  Bernard Heymann and Peter Leong

Parameters

  *p | a 2D image.
  *pmap | the 3D volume.

Returns
  int 0.

      Requirements:
          The first image must be 2D with the orientation parameters in
              the sub-image structure.
          The orientation parameters are defined as those giving the projection,
              and is reversed for backprojection.
          The second image must be 3D and properly initialized.
      The 2D image is converted to floating point and rescaled to an average
      of zero and a standard deviation of one. The 3D map is traversed and
      the density added from the 2D image projected according to the orientation
      parameters. The origin of the new map is in the center of the volume.

Definition at line 163 of file img_backproject.cpp.

Bimage* img_backprojection_weigh | ( | Bimage ** | pacc,
|  | int | imap,
|  | int | nmaps,
|  | int | nthreads,
|  | double | resolution,
|  | double | threshold,
|  | fft_plan | planf,
|  | fft_plan | planb
| ) |  |

Accumulates multiple backprojections and weighs the transform with the FOM.

Parameters

  **pacc | array of partial maps with linked weight maps.
  imap | which output map to weigh.
  nmaps | number of output maps (1,2,3).
  nthreads | number of threads per map (= number of partial maps).
  resolution | high resolution limit.
  threshold | low weight cutoff.
  planf | forward Fourier transform plan.
  planb | backward Fourier transform plan.

Returns
  int 0.

      Requirements:
          The FOM block contains the weights.

Definition at line 331 of file img_backproject.cpp.

int img_weigh_transform | ( | Bimage * | p,
|  | double | resolution,
|  | double | threshold
| ) |  |

Weighs a transform with the FOM.

Parameters

  *p | a 2D image.
  resolution | high resolution limit.
  threshold | low weight cutoff.

Returns
  int 0.

      Requirements:
          The data must be complex float and the FOM block must be allocated.

Definition at line 256 of file img_backproject.cpp.

Bimage* project_back_projection | ( | Bproject * | project,
|  | int | num_select,
|  | Vector3< int > | map_size,
|  | Vector3< float > | sampling,
|  | double | scale,
|  | double | resolution
| ) |  |

Back projects a set of 2D images into a 3D volume.

Parameters

  *project | image processing parameter structure.
  num_select | selection number from the selection column.
  map_size | 3-valued vector for the new map size.
  sampling | 3-value vector for the voxel size in angstrom.
  scale | reconstruction scale.
  resolution | resolution for low-pass filtering.

Returns
  Bimage* the new 3D reconstruction map.

      All the information needed to do a 3D reconstruction is passed in through
      an image processing structure. The new 3D volume is initialized.
      Each sub-image in each particle file is read individually and
      back-projected within the new volume. The orientation parameters from
      the image processing structure is transferred to the sub-image
      structure in the 2D image before calling the function packing one
      image into the volume. The default origin is the center of the image.

Definition at line 39 of file img_backproject.cpp.

## Variable Documentation

int verbose