|
From: <kin...@us...> - 2004-02-26 18:50:30
|
Update of /cvsroot/teem/teem/src/ten In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28557 Modified Files: GNUmakefile glyph.c ten.h tendGlyph.c Log Message: added sliceBias to handling of slice gray levels, started added tend grads stuff Index: GNUmakefile =================================================================== RCS file: /cvsroot/teem/teem/src/ten/GNUmakefile,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** GNUmakefile 7 Jan 2004 15:34:31 -0000 1.36 --- GNUmakefile 26 Feb 2004 18:42:23 -0000 1.37 *************** *** 49,53 **** $(L).OBJS = tensor.o chan.o aniso.o glyph.o enumsTen.o miscTen.o mod.o \ tenGage.o fiberMethods.o fiber.o epireg.o defaultsTen.o bimod.o \ ! tendFlotsam.o tendAnplot.o tendAnvol.o tendEval.o \ tendEvec.o tendSten.o tendExpand.o tendEvq.o tendPoint.o \ tendAnhist.o tendMake.o tendSatin.o tendShrink.o tendGlyph.o \ --- 49,53 ---- $(L).OBJS = tensor.o chan.o aniso.o glyph.o enumsTen.o miscTen.o mod.o \ tenGage.o fiberMethods.o fiber.o epireg.o defaultsTen.o bimod.o \ ! tendFlotsam.o tendGrads.o tendAnplot.o tendAnvol.o tendEval.o \ tendEvec.o tendSten.o tendExpand.o tendEvq.o tendPoint.o \ tendAnhist.o tendMake.o tendSatin.o tendShrink.o tendGlyph.o \ Index: glyph.c =================================================================== RCS file: /cvsroot/teem/teem/src/ten/glyph.c,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** glyph.c 19 Feb 2004 06:45:13 -0000 1.33 --- glyph.c 26 Feb 2004 18:42:23 -0000 1.34 *************** *** 52,55 **** --- 52,56 ---- parm->sliceAnisoType = tenAnisoUnknown; parm->sliceOffset = 0.0; + parm->sliceBias = 0.05; parm->sliceGamma = 1.0; } *************** *** 284,290 **** continue; sliceGray = aniso[parm->sliceAnisoType]; ! /* HEY: look, a visualization parameter (0.03) that is not ! exposed anywhere in an API, just super ... */ ! sliceGray = AIR_AFFINE(0, sliceGray, 1, 0.03, 1); } if (parm->sliceGamma > 0) { --- 285,289 ---- continue; sliceGray = aniso[parm->sliceAnisoType]; ! sliceGray = AIR_AFFINE(0, sliceGray, 1, parm->sliceBias, 1); } if (parm->sliceGamma > 0) { Index: ten.h =================================================================== RCS file: /cvsroot/teem/teem/src/ten/ten.h,v retrieving revision 1.75 retrieving revision 1.76 diff -C2 -d -r1.75 -r1.76 *** ten.h 23 Feb 2004 06:03:13 -0000 1.75 --- ten.h 26 Feb 2004 18:42:23 -0000 1.76 *************** *** 119,126 **** with glyphs, these are thresholded by confThresh and maskThresh (but not anisoThresh). Things can be lightened up with a ! sliceGamma > 1. The squares will be at their corresponding sample locations, but offset by sliceOffset */ int doSlice, sliceAxis, slicePos, sliceAnisoType; ! float sliceOffset, sliceGamma; } tenGlyphParm; --- 119,127 ---- with glyphs, these are thresholded by confThresh and maskThresh (but not anisoThresh). Things can be lightened up with a ! sliceGamma > 1, after the slice's gray values have been mapped from ! [0,1] to [sliceBias,1]. The squares will be at their corresponding sample locations, but offset by sliceOffset */ int doSlice, sliceAxis, slicePos, sliceAnisoType; ! float sliceOffset, sliceBias, sliceGamma; } tenGlyphParm; *************** *** 367,370 **** --- 368,386 ---- } tenEMBimodalParm; + /* + ******** struct tenGradientParm + ** + ** all parameters for repulsion-based generation of gradient directions + */ + typedef struct { + double mass, + charge, + drag, + dt, + minVelocity, + jitter; + int snap, single, minIteration, maxIteration; + } tenGradientParm; + /* defaultsTen.c */ TEEM_API const char *tenBiffKey; *************** *** 378,381 **** --- 394,399 ---- TEEM_API double tenDefFiberWPunct; + /* grads.c */ + /* enumsTen.c */ TEEM_API airEnum *tenAniso; *************** *** 401,405 **** TEEM_API int tenShrink(Nrrd *tseven, Nrrd *nconf, Nrrd *tnine); TEEM_API int tenEigensolve(float eval[3], float evec[9], float ten[7]); ! TEEM_API void tenMakeOne(float ten[7], float conf, float eval[3], float evec[9]); TEEM_API int tenMake(Nrrd *nout, Nrrd *nconf, Nrrd *neval, Nrrd *nevec); TEEM_API int tenSlice(Nrrd *nout, Nrrd *nten, int axis, int pos, int dim); --- 419,424 ---- TEEM_API int tenShrink(Nrrd *tseven, Nrrd *nconf, Nrrd *tnine); TEEM_API int tenEigensolve(float eval[3], float evec[9], float ten[7]); ! TEEM_API void tenMakeOne(float ten[7], ! float conf, float eval[3], float evec[9]); TEEM_API int tenMake(Nrrd *nout, Nrrd *nconf, Nrrd *neval, Nrrd *nevec); TEEM_API int tenSlice(Nrrd *nout, Nrrd *nten, int axis, int pos, int dim); *************** *** 460,464 **** /* epireg.c */ ! TEEM_API int tenEpiRegister3D(Nrrd **nout, Nrrd **ndwi, int dwiLen, Nrrd *ngrad, int reference, float bwX, float bwY, float fitFrac, float DWthr, --- 479,484 ---- /* epireg.c */ ! TEEM_API int tenEpiRegister3D(Nrrd **nout, Nrrd **ndwi, ! int dwiLen, Nrrd *ngrad, int reference, float bwX, float bwY, float fitFrac, float DWthr, *************** *** 496,499 **** --- 516,520 ---- /* removed from below (superseded by estim): F(calc) \ */ #define TEND_MAP(F) \ + F(grads) \ F(epireg) \ F(bmat) \ Index: tendGlyph.c =================================================================== RCS file: /cvsroot/teem/teem/src/ten/tendGlyph.c,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** tendGlyph.c 19 Feb 2004 03:51:31 -0000 1.24 --- tendGlyph.c 26 Feb 2004 18:42:23 -0000 1.25 *************** *** 163,166 **** --- 163,169 ---- &(gparm->sliceGamma), "1.7", "Gamma to apply to values on slice."); + hestOptAdd(&hopt, "sb", "slice bias", airTypeFloat, 1, 1, + &(gparm->sliceBias), "0.05", + "amount by which to bump up slice gray values prior to gamma."); /* camera */ |