• Main Page
  • Data Structures
  • Files
  • File List
  • Globals

via.h

00001 #include "viadata.h"
00002 
00003 /* Utilities  */
00004 extern VFloat VReadPixel(VImage,int,int,int); 
00005 extern void   VWritePixel(VImage,int,int,int,VFloat); 
00006 extern VFloat VGetPixelValue (VImage,int); 
00007 extern void   VSetPixelValue (VImage,int,VFloat);
00008 extern void   VWriteNode(VGraph,VNode,float,float,float,float);
00009 extern void   VReadNode(VGraph,VNode,float *,float *,float *,float *);
00010 extern void   VQuaternionsRotation(float *,float **);
00011 extern void   VRotationMatrix(double,double,double,double [3][3]);
00012 extern void   VPoint_hpsort(unsigned long,VPoint[]);
00013 
00014 extern VImage VContrast(VImage,VImage,VRepnKind,VFloat,VFloat);
00015 extern VImage VContrastUByte(VImage,VImage,VFloat,VFloat);
00016 extern VImage VContrastShort(VImage,VImage,VFloat,VFloat);
00017 extern VImage VContrastShortUByte(VImage, int, int, float, float);
00018 extern VImage VMapImageRange(VImage,VImage,VRepnKind);
00019 extern VImage VMaskRange(VImage,VImage,VFloat,VFloat);
00020 extern VImage VMask(VImage,VImage,VImage);
00021 
00022 /* 3D binary morphology */
00023 extern VImage VDilateImage3d (VImage, VImage,VoxelList,int);
00024 extern VImage VErodeImage3d(VImage,VImage,VoxelList,int);
00025 extern VImage VGenSphere3d(VShort);
00026 extern VImage VGenSphere2d(VShort);
00027 extern VoxelList VConvertSE3d(VImage,int *);
00028 
00029 /* 3D greylevel morphology  */
00030 extern VImage VGreyDilation3d(VImage,VImage,VImage);
00031 extern VImage VGreyErosion3d(VImage,VImage,VImage);
00032 
00033 /* morphological operators by thresholding distance transform */
00034 extern VImage VDTClose(VImage,VImage,VDouble);
00035 extern VImage VDTOpen(VImage,VImage,VDouble);
00036 extern VImage VDTErode(VImage,VImage,VDouble);
00037 extern VImage VDTDilate(VImage,VImage,VDouble);
00038 
00039 /* distance transforms */
00040 extern VImage VEuclideanDist3d(VImage,VImage,VRepnKind);
00041 extern VImage VChamferDist3d(VImage,VImage,VRepnKind);
00042 extern VImage VChamferDist2d(VImage,VImage,VBand);
00043 extern VImage VCDT3d (VImage,VImage,VLong,VLong,VLong,VRepnKind);
00044 
00045 /* connected components */
00046 extern VImage VLabelImage2d(VImage,VImage,int,VRepnKind,int *);
00047 extern VImage VLabelImage3d(VImage,VImage,int,VRepnKind,int *);
00048 extern VImage VSelectBig (VImage,VImage);
00049 extern VImage VDeleteSmall(VImage,VImage,int);
00050 
00051 
00052 /* topological operators */
00053 extern VImage VBorderImage3d (VImage,VImage);
00054 extern int    VBorderPoint(VImage,int,int,int);
00055 extern int    VSimplePoint(VImage,int,int,int,int);
00056 extern VImage VTopoclass(VImage,VImage);
00057 extern int    VGenusLee (VImage,VShort);
00058 extern VImage VThin3d(VImage,VImage,int);
00059 extern VImage VSkel3d(VImage,VImage);
00060 extern VImage VSkel2d(VImage,VImage);
00061 
00062 
00063 /* resampling, geometric transformations */
00064 extern VImage VTriLinearSample3d(VImage,VImage,VImage,float,float,float,int,int,int);
00065 extern VImage VNNSample3d(VImage,VImage,VImage,float,float,float,int,int,int);
00066 extern VImage VCubicSplineSample3d(VImage,VImage,VImage,float,float,float,int,int,int);
00067 extern VImage VTriLinearScale3d (VImage,VImage,int,int,int,float[3],float[3]);
00068 extern VImage VNNScale3d (VImage,VImage,int,int,int,float[3],float[3]);
00069 extern VImage VCubicSplineScale3d (VImage,VImage,int,int,int,float[3],float[3]);
00070 extern VImage VBicubicScale2d(VImage,VImage,VFloat);
00071 extern VImage VBiLinearScale2d(VImage,VImage,int,int,float[2],float[2]);
00072 extern VImage VRotateImage2d(VImage,VImage,VBand,double);
00073 extern VImage VRotateImage3d(VImage,VImage,VFloat,VShort);
00074 extern VImage VShearImageX (VImage src, VImage dest, VBand band, double shear);
00075 extern VImage VShearImageY (VImage src, VImage dest, VBand band, double shear);
00076 
00077 
00078 /* filters */
00079 extern VImage VAniso2d(VImage,VImage,VShort,VShort,VFloat,VFloat);
00080 extern VImage VAniso3d(VImage,VImage,VShort,VShort,VFloat,VFloat);
00081 extern VImage VConvolve3d(VImage,VImage,VImage);
00082 extern VImage VConvolve2d(VImage,VImage,VImage);
00083 extern VImage VConvolveCol(VImage,VImage,VImage);
00084 extern VImage VConvolveRow(VImage,VImage,VImage);
00085 extern VImage VConvolveBand(VImage,VImage,VImage);
00086 extern VImage VLeeImage(VImage,VImage,VLong,VDouble,VLong,VLong);
00087 extern VImage VSmoothImage3d(VImage,VImage,VLong,VLong);
00088 extern VImage VFilterGauss2d(VImage,VImage,double);
00089 extern VImage VFilterGauss3d(VImage,VImage,double);
00090 extern VImage VFilterBox3d(VImage,VImage,int);
00091 extern VImage VMedianImage3d (VImage,VImage,int,VBoolean);
00092 extern VImage VMedianImage2d (VImage,VImage,int,VBoolean);
00093 
00094 
00095 
00096 /* segmentation, clustering, binarization */
00097 extern VImage VBinarizeImage(VImage,VImage,VDouble,VDouble);
00098 extern VImage VIsodataImage3d(VImage,VImage,VLong,VLong);
00099 
00100 /* edge detection and curvature */
00101 extern void   VCanny3d(VImage,int,VImage *,VImage *,VImage *);
00102 extern void   VCanny2d(VImage,int,VImage *,VImage *);
00103 extern void   VDeriche3d(VImage,VFloat,VImage *,VImage *,VImage *);
00104 extern void   VDeriche2d(VImage,VFloat,VImage *,VImage *);
00105 extern VImage VMagnitude3d(VImage,VImage,VImage,VImage);
00106 extern VImage VMagnitude2d(VImage,VImage,VImage);
00107 extern VImage VNonmaxSuppression(VImage,VImage,VImage,VImage);
00108 extern VImage VCurvature(VImage,VImage,VFloat,VLong,VBoolean);
00109 
00110 /* operations on volumes */
00111 extern Volumes VImage2Volumes(VImage src);
00112 extern VImage  Volumes2Image(Volumes,VRepnKind repn);
00113 extern VImage  Volume2Bin(Volume);
00114 extern Volume  VBin2Volume(VImage);
00115 extern double  VolumeRadius(Volume,double *);
00116 extern VBoolean VolumeInside(Volume,short,short,short);
00117 extern VTrack  VolumeGetTrack(Volume,short,short,short);
00118 extern Volume  VCopyVolume(Volume);
00119 
00120 
00121 /* shape features: moments,center of gravity,size */
00122 extern void   VolumeCentroid (Volume,double *);
00123 extern double VolumeMoment (Volume,double *,int,int,int);
00124 extern void   VBinCentroid (VImage, double *);
00125 extern double VBinMoment (VImage,double *,int,int,int);
00126 extern long   VolumeSize(Volume);
00127 extern long   VBinSize(VImage);
00128 
00129 /* operations on graphs */
00130 extern VGraph VImage2Graph (VImage,VGraph,VDouble,VDouble,VBoolean,VBoolean);
00131 extern VGraph VGraphPrune(VGraph,int);
00132 extern void   VICP(VGraph,VGraph,int);

Generated on Thu Feb 16 2012 22:03:37 for VIA - Volumetric Image Analysis by  doxygen 1.7.1