base class for 2D and 3D image used to deform models
![]() | GradientForce : public VoxelMax, public Force a force that detects voxel of maximum gradient norm
| ||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | RegionForce : public VoxelMax, public Force a force that detects the closest voxel whose gradient value is above a given threshold and eventually whose gradient orientation follows the gradient orientation constraint and finally whose intensity belongs to a given intensity range
| ||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | GradientGradientForce : public Force the force that apply a force in the direction of the gradient vector of the gradient
| ||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | GradientBalloonForce : public Force the force that moves the deformable model in the normal direction only of the gradient value is less than a given threhold
| ||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | IntensityProfileForce : public ImageLine, public Force this force deforms the model so that pre-stored intensity profile at each mesh vertex match the image intensity profile
| ||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | ClassForce : public ImageLine, public Force this force deforms the model in a classified image at the interface of two classes
| ||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | ForceGeometry the geometry of attraction forces | ||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | IMAGE_KIND which image
|
![]() | initForces () creates the set of forces and adds then in the list |
![]() | getDirectionArraySize () unit vectors of the spherical dome number when the unit sphere is tesselated with frequency DEFAULT_SPHERE_FREQUENCY |
![]() | setIntensity (Inrimage *inr) throw(RangeInrimage::InvalidSize) set a new intensity image |
![]() | setGradient (Inrimage *inr) throw(RangeInrimage::InvalidSize) set a new gradient image |
![]() | setGradientDirection (Inrimage *inr) throw(RangeInrimage::InvalidSize) set a new gradient direction image |
![]() | setEdge (Inrimage *inr) throw(RangeInrimage::InvalidSize) set a new edge image |
![]() | setGradientGradient (Inrimage *inr) throw(RangeInrimage::InvalidSize) set a new gradient of the gradient norm image |
![]() | setClassify (Inrimage *inr) throw(RangeInrimage::InvalidSize) set a new classify image |
![]() | getIntensity (void) const get the intensity image |
![]() | getGradient (void) const get the gradient image |
![]() | getGradientDirection (void) const get the gradientDirection image |
![]() | getEdge (void) const get the edge image |
![]() | getGradientGradient (void) const get the gradientGradient image |
![]() | getClassify (void) const get the classify image |
![]() | getSampledDirection (void) const get the gradientGradient image |
![]() | computeSobelGradient (unsigned int sigma=3, bool twoD=false, bool maximum=false, double lt=0.0) compute the gradient norm and direction using sobel filters : it requires that the intensity image already exists |
![]() | computeRecursiveGradient (yav::RECURSIVE_FILTER_TYPE filter=yav::DERICHE_STEP_EDGE, double sigma=3.0, bool twoD=false, bool maximum=false, double lt=0.0) compute the gradient norm and direction using recursive filters : it requires that the intensity image already exists |
![]() | computeSobelGradientGradient (unsigned int sigma=3, bool twoD=false) compute the gradient of the gradient norm using sobel filters : it requires that the gradient image already exists |
![]() | computeRecursiveGradientGradient (yav::RECURSIVE_FILTER_TYPE filter=yav::DERICHE_STEP_EDGE, double sigma=3.0, bool twoD=false) compute the gradient of the gradient norm using recursive filters : it requires that the gradient image already exists |
![]() | updateImageDisplay (Inrimage *inr) update image display (when the displayed image change) |
![]() | getImageDisplay (void) const returns displayed image kind |
![]() | getDisplayedImage () const returns inrimage being displayed |
![]() | display (IMAGE_KIND kind) returns image kind being displayed |
![]() | exception | ||||
![]() | constructor
| ||||
![]() | destructor
|
![]() | intensity intensity image |
![]() | gradient gradient image |
![]() | gradientDirection gradient direction image |
![]() | edge gradient direction image |
![]() | gradientGradient gradient direction image |
![]() | classify classification image |
![]() | sampledDirection array of vertex corresponding to coding of the gradientDirection image |
![]() | sizeX the size in the X direction of all images |
![]() | sizeY the size in the Y direction of all images |
![]() | sizeZ the size in the Z direction of all images |
![]() | forceList list of available forces |
![]() | forceGeometry the geometry of attraction forces |
![]() | gradientForce gradient force |
![]() | regionForce region force |
![]() | gradientGradientForce gradientGradient force |
![]() | gradientBalloonForce gradient balloon force |
![]() | intensityProfileForce intensityProfile force |
![]() | classForce classify force |
![]() | imageDisplay image kind currently displayed |
base class for 2D and 3D image used to deform models
class GradientForce: public VoxelMax, public Force
exception thrown when the associated RangeInrimage is not valid
exception
TclString name
RangeInrimage* range
constructor
destructor
virtual bool isPossible() const
virtual void getSpeed(const Vec3
mult - returned multiplicative speed term
add - returned additive speed term TclString getName()
virtual void updateImage()
ImageGeometry* converter
GradientInrimageInformation* gi
bool testVoxel(ImageVoxel *voxel)
constructor
destructor
void start(Voxel& voxel)
bool isPossible() const
bool getPoint(const Vec3
direction - a unit vector representing a direction of a 3D line in the image
range - the maximum distance from the 3D point (position) where to search for that point
point - the matched point in the 3D image that optimized a given criterion
rii - local range information at given point
void updateImage(void)
bool isPossible()
bool stopFromGradient(ImageVoxel *v, Voxel& iv)
iv - an image type voxel class RegionForce: public VoxelMax, public Force
RegionInrimageInformation* ri
void findRegion()
void smoothProfile()
constructor
destructor
void start(Voxel& voxel)
bool isPossible() const
bool getPoint(const Vec3
direction - a unit vector representing a direction of a 3D line in the image
range - the maximum distance from the 3D point (position) where to search for that point
point - the matched point in the 3D image that optimized a given criterion
rii - local range information at given point
void updateImage(void)
bool stopFromRegion(ImageVoxel *v, Voxel& iv)
iv - an image type voxel class GradientGradientForce: public Force
constructor
destructor
bool isPossible() const
bool getPoint(const Vec3
direction - a unit vector representing a direction of a 3D line in the image
range - the maximum distance from the 3D point (position) where to search for that point
point - the matched point in the 3D image that optimized a given criterion
rii - local range information at given point
class GradientBalloonForce: public Force
constructor
bool isPossible() const
bool getPoint(const Vec3
direction - a unit vector representing a direction of a 3D line in the image
range - the maximum distance from the 3D point (position) where to search for that point
point - the matched point in the 3D image that optimized a given criterion
rii - local range information at given point
virtual void getSpeed(const Vec3
mult - returned multiplicative speed term
add - returned additive speed term
rii - local information necessary to compute the speed class IntensityProfileForce: public ImageLine, public Force
constructor
destructor
virtual bool isPossible() const
bool getPoint(const Vec3
direction - a unit vector representing a direction of a 3D line in the image
range - the maximum distance from the 3D point (position) where to search for that point
point - the matched point in the 3D image that optimized a given criterion
rii - local range information at given point
class ClassForce: public ImageLine, public Force
ClassInrimageInformation* ri
constructor
destructor
virtual bool isPossible() const
bool getPoint(const Vec3
direction - a unit vector representing a direction of a 3D line in the image
range - the maximum distance from the 3D point (position) where to search for that point
point - the matched point in the 3D image that optimized a given criterion
rii - local range information at given point
void updateImage(void)
enum ForceGeometry
ObjectPointer
ObjectPointer
ObjectPointer
ObjectPointer
ObjectPointer
ObjectPointer
Vec3
unsigned int sizeX
unsigned int sizeY
unsigned int sizeZ
ObjectsList
ForceGeometry forceGeometry
GradientForce* gradientForce
RegionForce* regionForce
GradientGradientForce* gradientGradientForce
GradientBalloonForce* gradientBalloonForce
IntensityProfileForce* intensityProfileForce
ClassForce* classForce
virtual void dying(const ObjectPointer
void setSize(Inrimage *im)
void testSize(Inrimage *im) const throw(InvalidSize)
void gradientFile(const TclString& fileName, TclString& gradientName) const
gradientName - returned gradient file name, EMPTY_STRING if no gradient file was found void gradientDirectionFile(const TclString& fileName, TclString& gradientDirectionName) const
gradientDirectionName - returned gradient direction file name, EMPTY_STRING if no gradient file was found void gradientGradientFile(const TclString& fileName, TclString& gradientGradientName) const
gradientGradientName - returned gradient of the gradient norme file name, EMPTY_STRING if no gradient file was found void classifyFile(const TclString& fileName, TclString& classifyName) const
classifyName - returned classify file name, EMPTY_STRING if no classify file was found void updateForceImages()
constructor
RangeInrimage(const TclString& filename, Inrimage *intensity = 0) throw(Inrimage::ImageNotFound, Inrimage::UnknownImageType, Inrimage::InvalidHeader, Inrimage::InvalidData, Inrimage::UnknownType)
Inrimage ::UnknownImageType unknown image file format
Inrimage ::InvalidHeader invalid inrimage header
Inrimage ::InvalidData invalid inrimage data
Inrimage ::UnknownType unhandled inrimage type
intensity - intensity image (loaded if null)
RangeInrimage(Inrimage *intensity = 0, Inrimage *gradient = 0, Inrimage *gradientDirection = 0, Inrimage *edge = 0, Inrimage *gradientGradient = 0, Inrimage *classify = 0, ForceGeometry _forceGeometry = FORCE_3D)
gradient - the image of the norm of the gradient
gradientDirection - the image of gradient direction coded in a unsigned char
edge - the edge image coded as a binary unsigned char image
gradientGradient - the image corresponding to the gradient of the gradient norm
classify - the image corresponding to the classification of intensity image
forceGeometry - if it should be a 2D or 3D force destructor
void initForces()
unsigned int getDirectionArraySize()
void setIntensity(Inrimage *inr) throw(RangeInrimage::InvalidSize)
void setGradient(Inrimage *inr) throw(RangeInrimage::InvalidSize)
void setGradientDirection(Inrimage *inr) throw(RangeInrimage::InvalidSize)
void setEdge(Inrimage *inr) throw(RangeInrimage::InvalidSize)
void setGradientGradient(Inrimage *inr) throw(RangeInrimage::InvalidSize)
void setClassify(Inrimage *inr) throw(RangeInrimage::InvalidSize)
Inrimage* getIntensity(void) const
Inrimage* getGradient(void) const
Inrimage* getGradientDirection(void) const
Inrimage* getEdge(void) const
Inrimage* getGradientGradient(void) const
Inrimage* getClassify(void) const
const Vec3
void computeSobelGradient(unsigned int sigma=3, bool twoD=false, bool maximum=false, double lt=0.0)
twoD - whether the computation should be 2D or 3D
maximum - whether the maximum of the gradient in the gradient direction should be computed
lt - the low threshold on the gradient norm void computeRecursiveGradient(yav::RECURSIVE_FILTER_TYPE filter=yav::DERICHE_STEP_EDGE, double sigma=3.0, bool twoD=false, bool maximum=false, double lt=0.0)
sigma - the width of the filter
twoD - whether the computation should be 2D or 3D
maximum - whether the maximum of the gradient in the gradient direction should be computed
lt - the low threshold on the gradient norm void computeSobelGradientGradient(unsigned int sigma=3, bool twoD=false)
twoD - whether the computation should be 2D or 3D
maximum - whether the maximum of the gradient in the gradient direction should be computed
lt - the low threshold on the gradient norm void computeRecursiveGradientGradient(yav::RECURSIVE_FILTER_TYPE filter=yav::DERICHE_STEP_EDGE, double sigma=3.0, bool twoD=false)
sigma - the width of the filter
twoD - whether the computation should be 2D or 3D
maximum - whether the maximum of the gradient in the gradient direction should be computed
lt - the low threshold on the gradient norm virtual void updateImageDisplay(Inrimage *inr)
enum IMAGE_KIND
NONE
INTENSITY
GRADIENT
GRADIENT_DIRECTION
IMAGE_KIND imageDisplay
IMAGE_KIND getImageDisplay(void) const
Inrimage* getDisplayedImage() const
virtual RangeInrimage::IMAGE_KIND display(IMAGE_KIND kind)
alphabetic index hierarchy of classes
this page has been generated automatically by doc++
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de