CustusX
15.3.3-beta
An IGT application
|
#include <cxSyntheticVolume.h>
Public Member Functions | |
cxSyntheticVolume (Vector3D bounds) | |
virtual | ~cxSyntheticVolume () |
virtual Vector3D | getBounds () |
virtual ProcessedUSInputDataPtr | sampleUsData (const std::vector< Transform3D > &planes_rMf, const Eigen::Array2f &pixelSpacing, const Eigen::Array2i &sliceDimension, const Transform3D &output_dMr, const double noiseSigma, const unsigned char noiseMean) const |
virtual ProcessedUSInputDataPtr | sampleUsData (const std::vector< Transform3D > &planes_rMt, const ProbeDefinition &probe, const Transform3D &output_dMr, const double noiseSigma=0, const unsigned char noiseMean=0) const |
vtkImageDataPtr | sampleUsData (const Transform3D &plane_rMt, const ProbeDefinition &probe, const double noiseSigma=0, const unsigned char noiseMean=0) const |
vtkImageDataPtr | sampleUsData (const Transform3D &plane_rMf, const Eigen::Array2f &pixelSpacing, const Eigen::Array2i &sliceDimension, const double noiseSigma, const unsigned char noiseMean) const |
virtual unsigned char | evaluate (const Vector3D &p) const =0 |
virtual void | printInfo () const |
void | fillVolume (cx::ImagePtr vol) |
virtual float | computeRMSError (cx::ImagePtr vol) |
Protected Member Functions | |
unsigned char | constrainToUnsignedChar (const int val) const |
vtkImageDataPtr | createEmptyMask (const Eigen::Array2i &sliceDimension) const |
Protected Attributes | |
Vector3D | mBounds |
This abstract class provides an interface to synthetic volumes. The requirements of this class are as follows:
Definition at line 57 of file cxSyntheticVolume.h.
|
inline |
Definition at line 60 of file cxSyntheticVolume.h.
|
inlinevirtual |
Definition at line 66 of file cxSyntheticVolume.h.
|
virtual |
Definition at line 209 of file cxSyntheticVolume.cpp.
|
protected |
Definition at line 193 of file cxSyntheticVolume.cpp.
|
protected |
Definition at line 182 of file cxSyntheticVolume.cpp.
|
pure virtual |
Evaluate the volume at position (x, y, z). The coordinates are given in volume space.
Implemented in cx::cxSimpleSyntheticVolume, and cxtest::SphereSyntheticVolume.
void cx::cxSyntheticVolume::fillVolume | ( | cx::ImagePtr | vol | ) |
Definition at line 222 of file cxSyntheticVolume.cpp.
|
inlinevirtual |
Definition at line 69 of file cxSyntheticVolume.h.
|
inlinevirtual |
Reimplemented in cxtest::SphereSyntheticVolume, and cx::cxSimpleSyntheticVolume.
Definition at line 125 of file cxSyntheticVolume.h.
|
virtual |
Sample a set of ultrasound slices. The planes to use are defined by planes. The Transform3D-s represent the transform from image space to world space. The volume is assumed to lie from [0, 0, 0] -> bounds. If any part of an image plane is outside the definition of the volume, the pixel value will be set to 0.
planes | Transforms from image space to world space (and thus also volume space) for the desired slices. |
pixelSpacing | The size of each pixel in the ultrasonic image. |
sliceDimension | The size in pixels of each ultrasound image. |
noiseSigma | The sigma of the noise distribution on each image |
noiseMean | The sigma of the noise distribution on each image |
Definition at line 103 of file cxSyntheticVolume.cpp.
|
virtual |
Alternative version. Input rMt, uses probe to generate required information about probe plane.
Definition at line 60 of file cxSyntheticVolume.cpp.
vtkImageDataPtr cx::cxSyntheticVolume::sampleUsData | ( | const Transform3D & | plane_rMt, |
const ProbeDefinition & | probe, | ||
const double | noiseSigma = 0 , |
||
const unsigned char | noiseMean = 0 |
||
) | const |
Generate one simulated us plane from the input rMt, probe.
Definition at line 84 of file cxSyntheticVolume.cpp.
vtkImageDataPtr cx::cxSyntheticVolume::sampleUsData | ( | const Transform3D & | plane_rMf, |
const Eigen::Array2f & | pixelSpacing, | ||
const Eigen::Array2i & | sliceDimension, | ||
const double | noiseSigma, | ||
const unsigned char | noiseMean | ||
) | const |
Alternative version. Input primitive components of probe, transform to image plane f.
Definition at line 139 of file cxSyntheticVolume.cpp.
|
protected |
Definition at line 134 of file cxSyntheticVolume.h.