Medical Imaging Interaction Toolkit  2018.4.99-12ad79a3
Medical Imaging Interaction Toolkit
mitk::BeamformingSettings Class Reference

Class holding the configuration data for the beamforming filters mitk::BeamformingFilter and mitk::PhotoacousticOCLBeamformingFilter. More...

#include <mitkBeamformingSettings.h>

Inheritance diagram for mitk::BeamformingSettings:
Collaboration diagram for mitk::BeamformingSettings:

Public Types

enum  Apodization { Hamm, Hann, Box }
 Available apodization functions: More...
 
enum  BeamformingAlgorithm { DMAS, DAS, sDMAS }
 Available beamforming algorithms: More...
 
enum  ProbeGeometry { Linear, Concave }
 Available geometries for Probes: More...
 

Public Member Functions

 mitkClassMacroItkParent (BeamformingSettings, itk::Object)
 
Pointer Clone () const
 
virtual float GetPitchInMeters () const
 
virtual float GetSpeedOfSound () const
 
virtual float GetTimeSpacing () const
 
virtual float GetAngle () const
 
virtual bool GetIsPhotoacousticImage () const
 
virtual unsigned int GetTransducerElements () const
 
virtual unsigned int GetSamplesPerLine () const
 
virtual unsigned int GetReconstructionLines () const
 
virtual const unsigned int * GetInputDim () const
 
virtual bool GetUseGPU () const
 
virtual unsigned int GetGPUBatchSize () const
 
virtual const float * GetApodizationFunction () const
 
virtual Apodization GetApod () const
 
virtual int GetApodizationArraySize () const
 
virtual BeamformingAlgorithm GetAlgorithm () const
 
virtual float GetReconstructionDepth () const
 
virtual ProbeGeometry GetGeometry () const
 
virtual float GetProbeRadius () const
 
virtual float * GetElementHeights () const
 
virtual float * GetElementPositions () const
 
virtual float GetHorizontalExtent () const
 
unsigned short * GetMinMaxLines ()
 

Static Public Member Functions

static bool SettingsChangedOpenCL (const BeamformingSettings::Pointer lhs, const BeamformingSettings::Pointer rhs)
 function for mitk::PhotoacousticOCLBeamformingFilter to check whether buffers need to be updated this method only checks parameters relevant for the openCL implementation More...
 
static Pointer New (float pitchInMeters, float speedOfSound, float timeSpacing, float angle, bool isPhotoacousticImage, unsigned int samplesPerLine, unsigned int reconstructionLines, unsigned int *inputDim, float reconstructionDepth, bool useGPU, unsigned int GPUBatchSize, Apodization apod, unsigned int apodizationArraySize, BeamformingAlgorithm algorithm, ProbeGeometry geometry, float probeRadius)
 

Protected Member Functions

 BeamformingSettings (float pitchInMeters, float speedOfSound, float timeSpacing, float angle, bool isPhotoacousticImage, unsigned int samplesPerLine, unsigned int reconstructionLines, unsigned int *inputDim, float reconstructionDepth, bool useGPU, unsigned int GPUBatchSize, Apodization apod, unsigned int apodizationArraySize, BeamformingAlgorithm algorithm, ProbeGeometry geometry, float probeRadius)
 
 ~BeamformingSettings () override
 

Protected Attributes

float m_PitchInMeters
 Pitch of the used transducer in [m]. More...
 
float m_SpeedOfSound
 Speed of sound in the used medium in [m/s]. More...
 
float m_TimeSpacing
 The time spacing of the input image. More...
 
float m_Angle
 The angle of the transducer elements. More...
 
bool m_IsPhotoacousticImage
 Flag whether processed image is a photoacoustic image or an ultrasound image. More...
 
unsigned int m_TransducerElements
 How many transducer elements the used transducer had. More...
 
unsigned int m_SamplesPerLine
 How many vertical samples should be used in the final image. More...
 
unsigned int m_ReconstructionLines
 How many lines should be reconstructed in the final image. More...
 
const unsigned int * m_InputDim
 Sets the dimensions of the inputImage. More...
 
float m_ReconstructionDepth
 The Depth up to which the filter should reconstruct the image [m]. More...
 
bool m_UseGPU
 Decides whether GPU computing should be used. More...
 
unsigned int m_GPUBatchSize
 
const float * m_ApodizationFunction
 Sets the amount of image slices in batches when GPU is used. More...
 
Apodization m_Apod
 Sets the used apodization function. More...
 
int m_ApodizationArraySize
 Sets the resolution of the apodization array (must be greater than 0). More...
 
BeamformingAlgorithm m_Algorithm
 Sets the used beamforming algorithm. More...
 
ProbeGeometry m_Geometry
 Sets the used probe geometry. More...
 
float m_ProbeRadius
 Sets the radius of the curved probe [m]. More...
 
float * m_ElementHeights
 
float * m_ElementPositions
 
float m_HorizontalExtent
 
unsigned short * m_MinMaxLines
 

Detailed Description

Class holding the configuration data for the beamforming filters mitk::BeamformingFilter and mitk::PhotoacousticOCLBeamformingFilter.

A detailed description can be seen below. All parameters should be set manually for successfull beamforming.

Definition at line 28 of file mitkBeamformingSettings.h.

Member Enumeration Documentation

◆ Apodization

Available apodization functions:

  • Hamming function.
  • Von-Hann function.
  • Box function.
Enumerator
Hamm 
Hann 
Box 

Definition at line 39 of file mitkBeamformingSettings.h.

◆ BeamformingAlgorithm

Available beamforming algorithms:

  • DAS (Delay and sum).
  • DMAS (Delay multiply and sum).
Enumerator
DMAS 
DAS 
sDMAS 

Definition at line 45 of file mitkBeamformingSettings.h.

◆ ProbeGeometry

Available geometries for Probes:

  • Linear
  • Concave
Enumerator
Linear 
Concave 

Definition at line 51 of file mitkBeamformingSettings.h.

Constructor & Destructor Documentation

◆ BeamformingSettings()

mitk::BeamformingSettings::BeamformingSettings ( float  pitchInMeters,
float  speedOfSound,
float  timeSpacing,
float  angle,
bool  isPhotoacousticImage,
unsigned int  samplesPerLine,
unsigned int  reconstructionLines,
unsigned int *  inputDim,
float  reconstructionDepth,
bool  useGPU,
unsigned int  GPUBatchSize,
Apodization  apod,
unsigned int  apodizationArraySize,
BeamformingAlgorithm  algorithm,
ProbeGeometry  geometry,
float  probeRadius 
)
protected

◆ ~BeamformingSettings()

mitk::BeamformingSettings::~BeamformingSettings ( )
overrideprotected

Member Function Documentation

◆ Clone()

Pointer mitk::BeamformingSettings::Clone ( ) const

◆ GetAlgorithm()

virtual BeamformingAlgorithm mitk::BeamformingSettings::GetAlgorithm ( ) const
virtual

◆ GetAngle()

virtual float mitk::BeamformingSettings::GetAngle ( ) const
virtual

◆ GetApod()

virtual Apodization mitk::BeamformingSettings::GetApod ( ) const
virtual

Referenced by BeamformingSettings().

◆ GetApodizationArraySize()

virtual int mitk::BeamformingSettings::GetApodizationArraySize ( ) const
virtual

Referenced by BeamformingSettings().

◆ GetApodizationFunction()

virtual const float* mitk::BeamformingSettings::GetApodizationFunction ( ) const
virtual

◆ GetElementHeights()

virtual float* mitk::BeamformingSettings::GetElementHeights ( ) const
virtual

◆ GetElementPositions()

virtual float* mitk::BeamformingSettings::GetElementPositions ( ) const
virtual

◆ GetGeometry()

virtual ProbeGeometry mitk::BeamformingSettings::GetGeometry ( ) const
virtual

◆ GetGPUBatchSize()

virtual unsigned int mitk::BeamformingSettings::GetGPUBatchSize ( ) const
virtual

◆ GetHorizontalExtent()

virtual float mitk::BeamformingSettings::GetHorizontalExtent ( ) const
virtual

◆ GetInputDim()

virtual const unsigned int* mitk::BeamformingSettings::GetInputDim ( ) const
virtual

◆ GetIsPhotoacousticImage()

virtual bool mitk::BeamformingSettings::GetIsPhotoacousticImage ( ) const
virtual

◆ GetMinMaxLines()

unsigned short * mitk::BeamformingSettings::GetMinMaxLines ( )

◆ GetPitchInMeters()

virtual float mitk::BeamformingSettings::GetPitchInMeters ( ) const
virtual

◆ GetProbeRadius()

virtual float mitk::BeamformingSettings::GetProbeRadius ( ) const
virtual

◆ GetReconstructionDepth()

virtual float mitk::BeamformingSettings::GetReconstructionDepth ( ) const
virtual

◆ GetReconstructionLines()

virtual unsigned int mitk::BeamformingSettings::GetReconstructionLines ( ) const
virtual

◆ GetSamplesPerLine()

virtual unsigned int mitk::BeamformingSettings::GetSamplesPerLine ( ) const
virtual

◆ GetSpeedOfSound()

virtual float mitk::BeamformingSettings::GetSpeedOfSound ( ) const
virtual

◆ GetTimeSpacing()

virtual float mitk::BeamformingSettings::GetTimeSpacing ( ) const
virtual

◆ GetTransducerElements()

virtual unsigned int mitk::BeamformingSettings::GetTransducerElements ( ) const
virtual

◆ GetUseGPU()

virtual bool mitk::BeamformingSettings::GetUseGPU ( ) const
virtual

◆ mitkClassMacroItkParent()

mitk::BeamformingSettings::mitkClassMacroItkParent ( BeamformingSettings  ,
itk::Object   
)

◆ New()

static Pointer mitk::BeamformingSettings::New ( float  pitchInMeters,
float  speedOfSound,
float  timeSpacing,
float  angle,
bool  isPhotoacousticImage,
unsigned int  samplesPerLine,
unsigned int  reconstructionLines,
unsigned int *  inputDim,
float  reconstructionDepth,
bool  useGPU,
unsigned int  GPUBatchSize,
Apodization  apod,
unsigned int  apodizationArraySize,
BeamformingAlgorithm  algorithm,
ProbeGeometry  geometry,
float  probeRadius 
)
inlinestatic

Definition at line 94 of file mitkBeamformingSettings.h.

Referenced by ParseXML().

◆ SettingsChangedOpenCL()

static bool mitk::BeamformingSettings::SettingsChangedOpenCL ( const BeamformingSettings::Pointer  lhs,
const BeamformingSettings::Pointer  rhs 
)
inlinestatic

function for mitk::PhotoacousticOCLBeamformingFilter to check whether buffers need to be updated this method only checks parameters relevant for the openCL implementation

Definition at line 78 of file mitkBeamformingSettings.h.

Member Data Documentation

◆ m_Algorithm

BeamformingAlgorithm mitk::BeamformingSettings::m_Algorithm
protected

Sets the used beamforming algorithm.

Definition at line 217 of file mitkBeamformingSettings.h.

◆ m_Angle

float mitk::BeamformingSettings::m_Angle
protected

The angle of the transducer elements.

Definition at line 171 of file mitkBeamformingSettings.h.

◆ m_Apod

Apodization mitk::BeamformingSettings::m_Apod
protected

Sets the used apodization function.

Definition at line 209 of file mitkBeamformingSettings.h.

◆ m_ApodizationArraySize

int mitk::BeamformingSettings::m_ApodizationArraySize
protected

Sets the resolution of the apodization array (must be greater than 0).

Definition at line 213 of file mitkBeamformingSettings.h.

◆ m_ApodizationFunction

const float* mitk::BeamformingSettings::m_ApodizationFunction
protected

Sets the amount of image slices in batches when GPU is used.

Definition at line 205 of file mitkBeamformingSettings.h.

Referenced by BeamformingSettings(), and ~BeamformingSettings().

◆ m_ElementHeights

float* mitk::BeamformingSettings::m_ElementHeights
protected

Definition at line 229 of file mitkBeamformingSettings.h.

Referenced by BeamformingSettings(), and ~BeamformingSettings().

◆ m_ElementPositions

float* mitk::BeamformingSettings::m_ElementPositions
protected

Definition at line 233 of file mitkBeamformingSettings.h.

Referenced by BeamformingSettings(), and ~BeamformingSettings().

◆ m_Geometry

ProbeGeometry mitk::BeamformingSettings::m_Geometry
protected

Sets the used probe geometry.

Definition at line 221 of file mitkBeamformingSettings.h.

Referenced by BeamformingSettings().

◆ m_GPUBatchSize

unsigned int mitk::BeamformingSettings::m_GPUBatchSize
protected

Definition at line 201 of file mitkBeamformingSettings.h.

◆ m_HorizontalExtent

float mitk::BeamformingSettings::m_HorizontalExtent
protected

Definition at line 237 of file mitkBeamformingSettings.h.

Referenced by BeamformingSettings().

◆ m_InputDim

const unsigned int* mitk::BeamformingSettings::m_InputDim
protected

Sets the dimensions of the inputImage.

Definition at line 191 of file mitkBeamformingSettings.h.

Referenced by BeamformingSettings(), and ~BeamformingSettings().

◆ m_IsPhotoacousticImage

bool mitk::BeamformingSettings::m_IsPhotoacousticImage
protected

Flag whether processed image is a photoacoustic image or an ultrasound image.

Definition at line 175 of file mitkBeamformingSettings.h.

◆ m_MinMaxLines

unsigned short* mitk::BeamformingSettings::m_MinMaxLines
protected

Definition at line 241 of file mitkBeamformingSettings.h.

Referenced by GetMinMaxLines(), and ~BeamformingSettings().

◆ m_PitchInMeters

float mitk::BeamformingSettings::m_PitchInMeters
protected

Pitch of the used transducer in [m].

Definition at line 159 of file mitkBeamformingSettings.h.

Referenced by BeamformingSettings().

◆ m_ProbeRadius

float mitk::BeamformingSettings::m_ProbeRadius
protected

Sets the radius of the curved probe [m].

Definition at line 225 of file mitkBeamformingSettings.h.

◆ m_ReconstructionDepth

float mitk::BeamformingSettings::m_ReconstructionDepth
protected

The Depth up to which the filter should reconstruct the image [m].

Definition at line 195 of file mitkBeamformingSettings.h.

◆ m_ReconstructionLines

unsigned int mitk::BeamformingSettings::m_ReconstructionLines
protected

How many lines should be reconstructed in the final image.

Definition at line 187 of file mitkBeamformingSettings.h.

◆ m_SamplesPerLine

unsigned int mitk::BeamformingSettings::m_SamplesPerLine
protected

How many vertical samples should be used in the final image.

Definition at line 183 of file mitkBeamformingSettings.h.

◆ m_SpeedOfSound

float mitk::BeamformingSettings::m_SpeedOfSound
protected

Speed of sound in the used medium in [m/s].

Definition at line 163 of file mitkBeamformingSettings.h.

◆ m_TimeSpacing

float mitk::BeamformingSettings::m_TimeSpacing
protected

The time spacing of the input image.

Definition at line 167 of file mitkBeamformingSettings.h.

◆ m_TransducerElements

unsigned int mitk::BeamformingSettings::m_TransducerElements
protected

How many transducer elements the used transducer had.

Definition at line 179 of file mitkBeamformingSettings.h.

Referenced by BeamformingSettings().

◆ m_UseGPU

bool mitk::BeamformingSettings::m_UseGPU
protected

Decides whether GPU computing should be used.

Definition at line 199 of file mitkBeamformingSettings.h.


The documentation for this class was generated from the following files: