Functions | |
PPPVOLUME_UCHAR | ReadLabelVolume (char *filein, int x, int y, int z) |
Read a uchar volume asscoiated to ki label. | |
PPPVOLUME_UCHAR | GetVolumeVOI (PPPVOLUME_UCHAR label, int px, int py, int pz, int dimx, int dimy, int dimz) |
Allocate and get a volume of interest (VOI) within a given volume of ki labels. | |
OBJECT3D * | LabelToObject (PPPVOLUME_UCHAR label, PPIMAGE_FLOAT value) |
Create un object from a volume of label and physical values. | |
PPIMAGE_FLOAT | GetBrainPhysicalValues (double B0) |
Define physical values of brain tissue types Ref : Yoder et al. SPIE MEdical Imaging 2002 10 tissues are considered with the following description label / name / Ro / Ro standard deviation / T1 / T1sd / T2 / T2sd / Ki / Kisd 0 /Air/0/0 /0/0 /0/0 /0/0 1 /CSF/2569/ /329/ /1/ /-9.05/ / 2 /Grey Matter/833/ /83/ /0.86/ /-9.05/ / 3 /White Matter/500/ /70/ /0.77/ /-9.05/ / 4 /Fat/350/ /70/ /1/ /-7.5/ / 5 /Muscle/900/ /47/ /1/ /-9.5/ / 6 /Skin/2569/ /329/ /1/ /-9.05/ / 7 /Skull/0/0/0/0/0/0/-8.86/ / 8 /Glial Matter/833/ /83/ /0.86/ /-9.05/ / 9 /Connective/500/ /70/ /0.77/ /-9.05/ /. | |
OBJECT3D * | CreateObjectBiComponent1D (int nx) |
Create a 1D object with three parts having linear variation of (ro, t1,t2) fro the water and fat component. | |
OBJECT3D * | CreateObjectBiComponent2DCircle (int nx, int ny) |
Create a 2D virtual object with one circle of wat, surrounded by a ring of water. | |
OBJECT3D * | CreateObjectBiComponent2DCircleEllipse (int nx, int ny) |
Create a 2D virtual object with one circle of water on the top left, and one ellipse of fat at bottom right. | |
OBJECT3D * | CreateObjectBiComponent3DSphere (int nx, int ny, int nz) |
Create an object with a samll sphere of fat within a larger one of water. | |
OBJECT3D * | CreateObject3DSphereEllipse (int nx, int ny, int nz) |
Create an object with a sphere of water and an ellipse of water. | |
void | SetObjectSphereComponent (OBJECT3D *object, int radius, int dimx, int dimy, int dimz, int ox, int oy, int oz, int t1s, int t2s, int ros, int t1b, int t2b, int rob, int fill_all, int component) |
Define an homogeneous sphere of one component within an object. | |
void | SetObjectEllipseComponent (OBJECT3D *object, int rx, int ry, int rz, int dimx, int dimy, int dimz, int ox, int oy, int oz, int t1s, int t2s, int ros, int t1b, int t2b, int rob, int fill_all, int component) |
Define an homogeneous ellipse of one component within an object. | |
void | SetObjectFieldDefault1D (OBJECT3D *object, int posy, int posz, PPPVOLUME_FLOAT dech, int dimx) |
Set the field default value for a 1D object Values are given in tesla and normalised for a 1 Tesla B0 field. | |
void | SetObjectFieldDefault2D (OBJECT3D *object, int pos, PPPVOLUME_FLOAT dech, int dimx, int dimy) |
Set the field default value for a 2D object Values are given in tesla and normalised for a 1 Tesla B0 field. | |
void | SetObjectFieldDefault3D (OBJECT3D *object, PPPVOLUME_FLOAT dech, int dimx, int dimy, int dimz) |
Set the field default value for a 3D object Values are given in tesla and normalised for a 1 Tesla B0 field. | |
void | SetObjectFieldDefault (OBJECT3D *object, PPPVOLUME_FLOAT dech) |
Set the field default value of an object. | |
PPPVOLUME_FLOAT | GetParamFromDataFile (char *filein, PSIGNAL_FLOAT datatab) |
Allocate and set vales of a Float volume regarding a volume of unsigned char label and a table that gives the values associated to the label. | |
OBJECT3D * | CreateObject3DSphereKi (int dimx, int dimy, int dimz) |
Create an object which is a 3D homogeneous sphere in ro t1 t2 ki. | |
OBJECT3D * | CreateObject2DCircleKi (int dimx, int dimy) |
Create an object which is a 2D homogeneous circle in ro t1 t2 ki (part of a sphere). | |
OBJECT3D * | CreateObject1DSectionKi (int dimx) |
Create an object which is a 1D homogeneous segment in ro t1 t2 ki (part of a sphere). | |
OBJECT3D * | CreateObject2DKi (float RoExt, float RoInt, float T1Ext, float T1Int, float T2Ext, float T2Int, float KiExt, float KiInt, int dimx, int dimy, char *filelabel, char *filedech) |
Create an object with two regions homogeneous in ro, t1, t2, ki values. | |
OBJECT3D * | CreateHomogeneousObject (int dimx, int dimy, int dimz, int t1, int t2, int ro) |
Create an ro,t1, t2 homogeneous object of one component. | |
void | SetSphericalObject (OBJECT3D *object, int radius, int dimx, int dimy, int dimz, int ox, int oy, int oz, int t1s, int t2s, int ros, int t1b, int t2b, int rob, int fill_all) |
Set an homogeneous sphere within an object. | |
OBJECT3D * | CreateSphericalObject (int radius, int dimx, int dimy, int dimz, int ox, int oy, int oz, int t1s, int t2s, int ros, int t1b, int t2b, int rob, int fill_all) |
Create a spherical object with homogeneous ro, T1, t2 values. | |
void | SetEllipticalObject (OBJECT3D *object, int rx, int ry, int rz, int dimx, int dimy, int dimz, int ox, int oy, int oz, int t1s, int t2s, int ros, int t1b, int t2b, int rob, int fill_all) |
Set an homogeneous ellipse within an object. | |
OBJECT3D * | CreateEllipticalObject (int rx, int ry, int rz, int dimx, int dimy, int dimz, int ox, int oy, int oz, int t1s, int t2s, int ros, int t1b, int t2b, int rob, int fill_all) |
Create an homogeneous elliptical object. | |
void | SetSphericalCylindricObject (OBJECT3D *object, int radius, int dimx, int dimy, int dimz, int ox, int oy, int t1s, int t2s, int ros, int t1b, int t2b, int rob, int fill_all) |
Set an homogeneous spherical cylinder within an object. | |
void | SetEllipticalCylindricObject (OBJECT3D *object, int rx, int ry, int dimx, int dimy, int dimz, int ox, int oy, int t1s, int t2s, int ros, int t1b, int t2b, int rob, int fill_all) |
Set an homogeneous elliptical cylinder within an object. | |
void | ClearZplane (OBJECT3D *object, int first, int last, int dimx, int dimy, int dimz) |
Clear a set of planes in an object. | |
void | SetLinearObject1D (OBJECT3D *object, int rodeb, int rofin, int t1deb, int t1fin, int t2deb, int t2fin, int xdeb, int xfin, int component) |
Set a linear variation of the ro, t1, t2, values in the object. | |
OBJECT3D * | Create2DTestObjectCircleEllipseSquare (int nx, int ny) |
Create a 2D test object with a circle at the left top, an ellipse at the right botom, and a square at the center. | |
OBJECT3D * | Create2DTestObjectRectangleRoGradient (int nx, int ny, int lx, int ly) |
Create a 2D object with a rectangle presenting a linear gradient of proton density. | |
OBJECT3D * | GetTestObject2D (int obj, int x, int y, double db0) |
Create a 2D object for testing a sequence. | |
OBJECT3D * | GetTestObject3D (int obj, int x, int y, int z, double db0) |
Create a 3D object for testing a sequence. | |
void | SaveObjectAsVolFloat (OBJECT3D *object) |
Save a virtual object within a set of float volumes. | |
OBJECT3D * | AllocObject (int x, int y, int z, int nbcomp, int nbparam) |
Virtual object allocation. | |
void | FreeObject (OBJECT3D *object) |
Object free. | |
void | SetObjectSize (OBJECT3D *object, float lx, float ly, float lz) |
Define the size in meter of a virtual object. | |
void | SetObjectActiveComponent (OBJECT3D *object, int component) |
Define the component that will be considered for acquisition. | |
void | SetObjectDeltaB0 (OBJECT3D *object, double deltab0) |
Set the T2* weight by definig an intra spin deltab0 value For now, this value is constant all over the volume. | |
void | SetObjectChemicalShift (OBJECT3D *object, float edw, int component) |
Fix the chemical shift value of each component. | |
void | SetObjectPoint (OBJECT3D *object, int x, int y, int z, int ro, int t1, int t2, int component) |
Set the ro t1 t2 values of one point (voxel) of an object component. | |
void | WriteObject (OBJECT3D *object, char *name) |
Save an object within a file. | |
OBJECT3D * | ReadObject (char *name) |
Allocate and read a virtual object from file. |
|
Virtual object allocation.
Definition at line 262 of file object.c. References IdSeqAlloc(), IdSigAlloc(), IdVolAlloc(), object, OBJECT3D, PPPPSEQUENCE_USHORT, PPPVOLUME_FLOAT, PSIGNAL_FLOAT, SEQ_USHORT, SIG_FLOAT, VOL_FLOAT, and x. Referenced by Create2DTestObjectCircleEllipseSquare(), Create2DTestObjectRectangleRoGradient(), CreateEllipticalObject(), CreateHomogeneousObject(), CreateObject1DSectionKi(), CreateObject2DCircleKi(), CreateObject2DKi(), CreateObject3DSphereEllipse(), CreateObject3DSphereKi(), CreateObjectBiComponent1D(), CreateObjectBiComponent2DCircle(), CreateObjectBiComponent2DCircleEllipse(), CreateObjectBiComponent3DSphere(), CreateSphericalObject(), LabelToObject(), and ReadObject(). |
|
Clear a set of planes in an object.
Definition at line 381 of file object-simple.c. References object, SetObjectPoint(), and WATER. |
|
Create a 2D test object with a circle at the left top, an ellipse at the right botom, and a square at the center.
Definition at line 435 of file object-simple.c. References AllocObject(), object, OBJECT3D, SetObjectPoint(), and WATER. Referenced by GetTestObject2D(). |
|
Create a 2D object with a rectangle presenting a linear gradient of proton density.
Definition at line 493 of file object-simple.c. References AllocObject(), object, OBJECT3D, SetObjectPoint(), and WATER. |
|
Create an homogeneous elliptical object.
Definition at line 242 of file object-simple.c. References AllocObject(), object, OBJECT3D, and SetEllipticalObject(). |
|
Create an ro,t1, t2 homogeneous object of one component.
Definition at line 56 of file object-simple.c. References AllocObject(), object, OBJECT3D, SetObjectPoint(), and WATER. Referenced by TestEchoGradient1D(), TestEchoSpin1D(), TestFID1D(), TestSimulatedEcho(), TestTrainEchoGradient1D(), and TestTrainEchoSpin1D(). |
|
Create an object which is a 1D homogeneous segment in ro t1 t2 ki (part of a sphere).
Definition at line 372 of file object-ki.c. References AllocInitVectFloat(), AllocObject(), GetParamFromDataFile(), IdAcrReadFile(), IdVectFree, IdVolFree, OBJECT3D, PPPVOLUME_FLOAT, PVECTOR_FLOAT, SetObjectFieldDefault1D(), SetObjectPointSusceptibility(), and VOL_FLOAT. |
|
Create an object which is a 2D homogeneous circle in ro t1 t2 ki (part of a sphere).
Definition at line 293 of file object-ki.c. References AllocInitVectFloat(), AllocObject(), GetParamFromDataFile(), IdAcrReadFile(), IdVectFree, IdVolFree, OBJECT3D, PPPVOLUME_FLOAT, PVECTOR_FLOAT, SetObjectFieldDefault2D(), SetObjectPointSusceptibility(), and VOL_FLOAT. Referenced by GetTestObject2D(). |
|
Create an object with two regions homogeneous in ro, t1, t2, ki values.
Definition at line 459 of file object-ki.c. References AllocInitVectFloat(), AllocObject(), GetParamFromDataFile(), IdAcrReadFile(), IdVectFree, IdVolFree, OBJECT3D, PPPVOLUME_FLOAT, PVECTOR_FLOAT, SetObjectFieldDefault2D(), SetObjectPointSusceptibility(), and VOL_FLOAT. |
|
Create an object with a sphere of water and an ellipse of water.
Definition at line 268 of file object-compound.c. References AllocObject(), object, OBJECT3D, SetObjectEllipseComponent(), SetObjectSphereComponent(), and WATER. Referenced by GetTestObject3D(). |
|
Create an object which is a 3D homogeneous sphere in ro t1 t2 ki.
Definition at line 218 of file object-ki.c. References AllocInitVectFloat(), AllocObject(), GetParamFromDataFile(), IdAcrReadFile(), IdVolFree, OBJECT3D, PPPVOLUME_FLOAT, PVECTOR_FLOAT, SetObjectFieldDefault3D(), SetObjectPointSusceptibility(), and VOL_FLOAT. |
|
Create a 1D object with three parts having linear variation of (ro, t1,t2) fro the water and fat component.
Definition at line 53 of file object-compound.c. References AllocObject(), DECFAT, DECWATER, FAT, object, OBJECT3D, SetLinearObject1D(), SetObjectChemicalShift(), and WATER. |
|
Create a 2D virtual object with one circle of wat, surrounded by a ring of water.
Definition at line 94 of file object-compound.c. References AllocObject(), DECFAT, DECWATER, FAT, object, OBJECT3D, SetObjectChemicalShift(), SetObjectPoint(), and WATER. Referenced by GetTestObject2D(). |
|
Create a 2D virtual object with one circle of water on the top left, and one ellipse of fat at bottom right.
Definition at line 169 of file object-compound.c. References AllocObject(), DECFAT, DECWATER, FAT, object, OBJECT3D, SetObjectChemicalShift(), SetObjectPoint(), and WATER. |
|
Create an object with a samll sphere of fat within a larger one of water.
Definition at line 228 of file object-compound.c. References AllocObject(), DECFAT, DECWATER, FAT, object, OBJECT3D, SetObjectChemicalShift(), SetObjectSphereComponent(), and WATER. Referenced by GetTestObject3D(). |
|
Create a spherical object with homogeneous ro, T1, t2 values.
Definition at line 146 of file object-simple.c. References AllocObject(), object, OBJECT3D, and SetSphericalObject(). Referenced by GetTestObject2D(). |
|
Object free.
Definition at line 342 of file object.c. References IdSeqFree, IdSigFree, IdVolFree, and object. Referenced by TestSequence2D(), and TestSequence3D(). |
|
Define physical values of brain tissue types Ref : Yoder et al. SPIE MEdical Imaging 2002 10 tissues are considered with the following description label / name / Ro / Ro standard deviation / T1 / T1sd / T2 / T2sd / Ki / Kisd 0 /Air/0/0 /0/0 /0/0 /0/0 1 /CSF/2569/ /329/ /1/ /-9.05/ / 2 /Grey Matter/833/ /83/ /0.86/ /-9.05/ / 3 /White Matter/500/ /70/ /0.77/ /-9.05/ / 4 /Fat/350/ /70/ /1/ /-7.5/ / 5 /Muscle/900/ /47/ /1/ /-9.5/ / 6 /Skin/2569/ /329/ /1/ /-9.05/ / 7 /Skull/0/0/0/0/0/0/-8.86/ / 8 /Glial Matter/833/ /83/ /0.86/ /-9.05/ / 9 /Connective/500/ /70/ /0.77/ /-9.05/ /.
Definition at line 145 of file object-brain.c. References IdImaAlloc(), IMA_FLOAT, and PPIMAGE_FLOAT. Referenced by GetTestObject2D(). |
|
Allocate and set vales of a Float volume regarding a volume of unsigned char label and a table that gives the values associated to the label.
Definition at line 188 of file object-ki.c. References data, IdAcrReadFile(), IdVolAlloc(), IdVolDimX, IdVolDimY, IdVolDimZ, IdVolFree, PPPVOLUME_FLOAT, PPPVOLUME_UCHAR, VOL_FLOAT, VOL_UCHAR, and x. Referenced by CreateObject1DSectionKi(), CreateObject2DCircleKi(), CreateObject2DKi(), and CreateObject3DSphereKi(). |
|
Create a 2D object for testing a sequence.
Definition at line 62 of file object.c. References Create2DTestObjectCircleEllipseSquare(), CreateObject2DCircleKi(), CreateObjectBiComponent2DCircle(), CreateSphericalObject(), GetBrainPhysicalValues(), GetVolumeVOI(), IdImaFree, IdVolFree, LabelToObject(), object, OBJECT3D, PPIMAGE_FLOAT, PPPVOLUME_UCHAR, ReadLabelVolume(), SetObjectDeltaB0(), SetObjectSize(), and x. Referenced by TestSequence2D(). |
|
Create a 3D object for testing a sequence.
Definition at line 158 of file object.c. References CreateObject3DSphereEllipse(), CreateObjectBiComponent3DSphere(), object, OBJECT3D, SetObjectDeltaB0(), SetObjectSize(), and x. Referenced by TestSequence3D(). |
|
Allocate and get a volume of interest (VOI) within a given volume of ki labels.
Definition at line 80 of file object-brain.c. References IdVolAlloc(), PPPVOLUME_UCHAR, and VOL_UCHAR. Referenced by GetTestObject2D(). |
|
Create un object from a volume of label and physical values.
Definition at line 101 of file object-brain.c. References AllocObject(), IdVolDimX, IdVolDimY, IdVolDimZ, object, OBJECT3D, RandGaussian(), SetObjectPoint(), WATER, and x. Referenced by GetTestObject2D(). |
|
Read a uchar volume asscoiated to ki label.
Definition at line 54 of file object-brain.c. References IdVolReadRawFile(), PPPVOLUME_UCHAR, VOL_UCHAR, and x. Referenced by GetTestObject2D(). |
|
Allocate and read a virtual object from file.
Definition at line 456 of file object.c. References AllocObject(), IdAcrReadFile(), IdSeqDimT, IdSeqDimX, IdSeqDimY, IdSeqDimZ, IdSeqFree, object, OBJECT3D, PPPPSEQUENCE_USHORT, SEQ_USHORT, and x. |
|
Save a virtual object within a set of float volumes.
Definition at line 195 of file object.c. References IdAcrWriteFile(), IdVolAlloc(), IdVolFree, object, PPPVOLUME_FLOAT, VOL_FLOAT, and x. |
|
Set an homogeneous elliptical cylinder within an object.
Definition at line 334 of file object-simple.c. References object, SetObjectPoint(), and WATER. |
|
Set an homogeneous ellipse within an object.
Definition at line 184 of file object-simple.c. References object, SetObjectPoint(), and WATER. Referenced by CreateEllipticalObject(). |
|
Set a linear variation of the ro, t1, t2, values in the object.
Definition at line 408 of file object-simple.c. References object, and SetObjectPoint(). Referenced by CreateObjectBiComponent1D(). |
|
Define the component that will be considered for acquisition.
Definition at line 375 of file object.c. References object. Referenced by RunSequence(). |
|
Fix the chemical shift value of each component.
Definition at line 405 of file object.c. References object. Referenced by CreateObjectBiComponent1D(), CreateObjectBiComponent2DCircle(), CreateObjectBiComponent2DCircleEllipse(), and CreateObjectBiComponent3DSphere(). |
|
Set the T2* weight by definig an intra spin deltab0 value For now, this value is constant all over the volume.
Definition at line 388 of file object.c. References object. Referenced by GetTestObject2D(), GetTestObject3D(), TestEchoGradient1D(), TestEchoSpin1D(), TestFID1D(), TestSimulatedEcho(), TestTrainEchoGradient1D(), and TestTrainEchoSpin1D(). |
|
Define an homogeneous ellipse of one component within an object.
Definition at line 366 of file object-compound.c. References object, SetObjectPoint(), and WATER. Referenced by CreateObject3DSphereEllipse(). |
|
Set the field default value of an object.
Definition at line 120 of file object-ki.c. |
|
Set the field default value for a 1D object Values are given in tesla and normalised for a 1 Tesla B0 field.
Definition at line 54 of file object-ki.c. References object. Referenced by CreateObject1DSectionKi(). |
|
Set the field default value for a 2D object Values are given in tesla and normalised for a 1 Tesla B0 field.
Definition at line 73 of file object-ki.c. References DisplayImage2D(), IdImaAlloc(), IdImaFree, IdImaRecadTo8(), IMA_FLOAT, IMA_UCHAR, object, PPIMAGE, PPIMAGE_FLOAT, and PPIMAGE_UCHAR. Referenced by CreateObject2DCircleKi(), and CreateObject2DKi(). |
|
Set the field default value for a 3D object Values are given in tesla and normalised for a 1 Tesla B0 field.
Definition at line 106 of file object-ki.c. References object. Referenced by CreateObject3DSphereKi(). |
|
Set the ro t1 t2 values of one point (voxel) of an object component.
Definition at line 424 of file object.c. Referenced by ClearZplane(), Create2DTestObjectCircleEllipseSquare(), Create2DTestObjectRectangleRoGradient(), CreateHomogeneousObject(), CreateObjectBiComponent2DCircle(), CreateObjectBiComponent2DCircleEllipse(), LabelToObject(), SetEllipticalCylindricObject(), SetEllipticalObject(), SetLinearObject1D(), SetObjectCone(), SetObjectEllipseComponent(), SetObjectSphereComponent(), SetSphericalCylindricObject(), and SetSphericalObject(). |
|
Define the size in meter of a virtual object.
Definition at line 361 of file object.c. References object. Referenced by GetTestObject2D(), GetTestObject3D(), TestEchoGradient1D(), TestEchoSpin1D(), TestFID1D(), TestSimulatedEcho(), TestTrainEchoGradient1D(), and TestTrainEchoSpin1D(). |
|
Define an homogeneous sphere of one component within an object.
Definition at line 309 of file object-compound.c. References object, and SetObjectPoint(). Referenced by CreateObject3DSphereEllipse(), and CreateObjectBiComponent3DSphere(). |
|
Set an homogeneous spherical cylinder within an object.
Definition at line 280 of file object-simple.c. References object, SetObjectPoint(), and WATER. |
|
Set an homogeneous sphere within an object.
Definition at line 91 of file object-simple.c. References object, SetObjectPoint(), and WATER. Referenced by CreateSphericalObject(). |
|
Save an object within a file.
Definition at line 443 of file object.c. References IdAcrWriteFile(), object, and PPPPSEQUENCE. |