Configuration Files Parameters

The configuration file contains all the parameters necessary to generate a breast phantom. They are divided into several categories, primarily by tissue type. In the following tables each parameter is given a brief description.

base parameters

Name Type Notes
base.outputDir string directory output files are saved to
base.imgRes float (mm) voxel size
base.skinThick float (mm) thickness of skin
base.nippleLen float (mm) length of nipple
base.nippleRad float (mm) radius of nipple
base.areolaRad float (mm) radius of thicker skin around nipple
base.leftBreast Boolean true for left breast, false for right breast
base.targetFatFrac float (mm) desired fraction of interior breast volume containing fat
base.seed integer random number seed (chosen randomly if not specified)

shape parameters

Name Type Notes
shape.ures float mesh resolution for breast shape
shape.vres float mesh resolution for breast shape
shape.pointSep float (mm) minimum point separation for point cloud
shape.ringWidth float (mm) thickness of muscle backing layer
shape.ringSep float (mm) mesh resolution for muscle layer
shape.featureAngle float (degrees) minimum angle to preserve during mesh smoothing
shape.targetReduction float fraction of triangles to remain after decimation
shape.a1b float scale of breast bottom
shape.a1t float scale of breast top
shape.a2l float scale of breast left side
shape.a2r float scale of breast right side
shape.a3 float breast outward scale
shape.eps1 float u direction quadric shape exponent
shape.eps2 float v direction quadric shape exponent
shape.doPtosis Boolean if true include ptosis in shape
shape.ptosisB0 float ptosis parameter B0
shape.ptosisB1 float ptosis parameter B1
shape.doTurn Boolean if true include turn deformation
shape.turnC0 float turn deformation parameter C0
shape.turnC1 float turn deformation parameter C1
shape.doTopShape Boolean if true include top shape deformation
shape.topShapeS0 float top shape deformation parameter S0
shape.topShapeS1 float top shape deformation parameter S1
shape.topShapeT0 float top shape deformation parameter T0
shape.topShapeT1 float top shape deformation parameter T1
shape.doFlattenSide Boolean if true include flatten side deformation
shape.flattenSideG0 float flatten side deformation parameter G0
shape.flattenSideG1 float flatten side deformation parameter G1
shape.doTurnTop Boolean if true include turn top deformation
shape.turnTopH0 float turn top deformation parameter H0
shape.turnTopH1 float turn top deformation parameter H1

glandular compartment parameters

Name Type Notes
compartments.num integer number of glandular compartments
compartments.seedBaseDist float (mm) distance along nipple line of compartment seed base
compartments.backFatBufferFrac float fraction of breast at muscle layer forced to be fat
compartments.numBackSeeds integer number of back plane Voronoi seeds
compartments.angularJitter float compartment Voronoi seed jitter (fraction of subtended angle)
compartments.zJitter float (mm) maximum compartment Voronoi seed jitter in direction of nipple
compartments.maxFracRadialDist float maximum radial distance from base seed as a fraction of distance to breast surface
compartments.minFracRadialDist float minimum radial distance from base seed as a fraction of distance to breast surface
compartments.minScaleNippleDir float minimum scale in nipple direction
compartments.maxScaleNippleDir float maximum scale in nipple direction
compartments.minScale float minimum scale in non-nipple direction
compartments.maxScale float maximum scale in non-nipple direction
compartments.minGlandStrength float minimum gland strength
compartments.maxGlandStrength float maximum gland strength
compartments.maxDeflect float maximum compartment deflection angle from pointing towards nipple (fraction of pi)
compartments.minSkinScaleNippleDir float minimum scale skin seeds in nipple direction
compartments.maxSkinScaleNippleDir float maximum scale skin seeds in nipple direction
compartments.minSkinScale float minimum scale skin in non-nipple direction
compartments.maxSkinScale float maximum scale skin in non-nipple direction
compartments.skinStrength float skin strength
compartments.backScale float back scale
compartments.backStrength float back strength
compartments.nippleScale float nipple scale
compartments.nippleStrength float nipple strength
compartments.voronSeedRadius float (mm) radius from point to check Voronoi seed distance

TDLU parameters

Name Type Notes
TDLU.maxLength float (mm) maximum TDLU length
TDLU.minLength float (mm) minimum TDLU length
TDLU.maxWidth float (mm) maximum TDLU width
TDLU.minWidth float (mm) minimum TDLU width

Perlin noise parameters

Name Type Notes
perlin.maxDeviation float maximum fraction of radius deviation
perlin.frequency float starting frequency
perlin.lacunarity float octave frequency multiplier
perlin.persistence float octave signal decay
perlin.numOctaves integer number of frequency octaves
perlin.xNoiseGen integer x direction noise generation seed
perlin.yNoiseGen integer y direction noise generation seed
perlin.zNoiseGen integer z direction noise generation seed
perlin.seedNoiseGen integer seed noise generation
perlin.shiftNoiseGen integer shift noise generation seed

Compartment boundary noise parameters

Name Type Notes
boundary.maxDeviation float maximum fraction of distance deviation
boundary.frequency float starting frequency
boundary.lacunarity float octave frequency multiplier
boundary.persistence float octave signal decay

fat lobule boundary perturbation noise parameters

Name Type Notes
perturb.maxDeviation float maximum fraction of distance deviation
perturb.frequency float starting frequency
perturb.lacunarity float octave frequency multiplier
perturb.persistence float octave signal decay

fat glandular buffer noise parameters

Name Type Notes
buffer.maxDeviation float maximum fraction of distance deviation
buffer.frequency float starting frequency
buffer.lacunarity float octave frequency multiplier
buffer.persistence float octave signal decay

Voronoi segmentation variables

Name Type Notes
voronoi.fatInFatSeedDensity float (mm^-3) fat voronoi seed density
voronoi.fatInGlandSeedDensity float (mm^-3) fat voronoi seed in glandular tissue density
voronoi.glandInGlandSeedDensity float (mm^-3) glandular voronoi seed density
voronoi.TDLUDeflectMax float maximum deflection (fraction of pi)
voronoi.minScaleLenTDLU float minimum length scale
voronoi.maxScaleLenTDLU float maximum length scale
voronoi.minScaleWidTDLU float minimum width scale
voronoi.maxScaleWidTDLU float maximum width scale
voronoi.minStrTDLU float minimum strength
voronoi.maxStrTDLU float maximum strength
voronoi.fatInFatDeflectMax float maximum deflection (fraction of pi)
voronoi.minScaleLenFatInFat float minimum length scale
voronoi.maxScaleLenFatInFat float maximum length scale
voronoi.minScaleWidFatInFat float minimum width scale
voronoi.maxScaleWidFatInFat float maximum width scale
voronoi.minStrFatInFat float minimum strength
voronoi.maxStrFatInFat float maximum strength
voronoi.fatInGlandDeflectMax float maximum deflection (fraction of pi)
voronoi.minScaleLenFatInGland float minimum length scale
voronoi.maxScaleLenFatInGland float maximum length scale
voronoi.minScaleWidFatInGland float minimum width scale
voronoi.maxScaleWidFatInGland float maximum width scale
voronoi.minStrFatInGland float minimum strength
voronoi.maxStrFatInGland float maximum strength
voronoi.glandInGlandDeflectMax float maximum deflection (fraction of pi)
voronoi.minScaleLenGlandInGland float minimum length scale
voronoi.maxScaleLenGlandInGland float maximum length scale
voronoi.minScaleWidGlandInGland float minimum width scale
voronoi.maxScaleWidGlandInGland float maximum width scale
voronoi.minStrGlandInGland float minimum strength
voronoi.maxStrGlandInGland float maximum strength
voronoi.seedRadius float (mm) check seeds in radius

fat lobule parameters

Name Type Notes
fat.minLobuleAxis float (mm) min lobule axis length
fat.maxLobuleAxis float (mm) max lobule axis length
fat.minAxialRatio float axial ratio min
fat.maxAxialRatio float axial ratio max
fat.minLobuleGap float minimum ligament separation between lobules
fat.maxCoeffStr float maximum of absolute value of Fourier coefficient as fraction of main radius
fat.minCoeffStr float minimum of absolute value of Fourier coefficient as fraction of main radius
fat.maxLobuleTry integer maximum number of trial lobules

ductal tree parameters

Name Type Notes
ductTree.maxBranch integer target number of branches
ductTree.maxGen integer maximum generation
ductTree.initRad float (mm) initial radius of tree
ductTree.nFillX integer number of voxels for tree density tracking
ductTree.nFillY integer number of voxels for tree density tracking
ductTree.nFillZ integer number of voxels for tree density tracking

ductal branch parameters

Name Type Notes
ductBr.minLen0 float (mm) minimum and maximum branch lengths per level
ductBr.maxLen0 float (mm) minimum and maximum branch lengths per level
ductBr.minLen1 float (mm) minimum and maximum branch lengths per level
ductBr.maxLen1 float (mm) minimum and maximum branch lengths per level
ductBr.minLen2 float (mm) minimum and maximum branch lengths per level
ductBr.maxLen2 float (mm) minimum and maximum branch lengths per level
ductBr.minLenDefault float (mm) minimum and maximum branch lengths per level
ductBr.maxLenDefault float (mm) minimum and maximum branch lengths per level
ductBr.maxChild integer maximum number of children
ductBr.childMinRad float (mm) minimum branch radius to have children
ductBr.childLevBound integer  
ductBr.child00 float  
ductBr.child01 float  
ductBr.child02 float  
ductBr.child10 float  
ductBr.child11 float  
ductBr.child12 float  
ductBr.child20 float  
ductBr.child21 float  
ductBr.child22 float  
ductBr.child30 float  
ductBr.child31 float  
ductBr.child32 float  
ductBr.child40 float  
ductBr.child41 float  
ductBr.child42 float  
ductBr.minRadFrac float minimum starting radius as a fraction of parent end radius
ductBr.maxRadFrac float maximum starting radius as a fraction of parent end radius
ductBr.radFrac0 float starting radius as fraction of parent end radius for first child
ductBr.minAngle float min angle between parent end direction and child start direction for children after first (fraction of pi radians)
ductBr.maxAngle float max angle between parent end direction and child start direction for children after first (fraction of pi radians)

ductal segment parameters

Name Type Notes
ductSeg.lengthBetaA float length distribution shape parameters
ductSeg.lengthBetaB float length distribution shape parameters
ductSeg.radiusBetaA float radius distribution shape parameters
ductSeg.radiusBetaB float radius distribution shape parameters
ductSeg.minLen float (mm) min and max segment length
ductSeg.maxLen float (mm) min and max segment length
ductSeg.maxCurvRad float (mm) maximum radius of curvature
ductSeg.maxCurvFrac float maximum length of segment based on curvature (fraction of pi radians)
ductSeg.ductSeg.minEndRad float min and max end radius as fraction of start radius
ductSeg.maxEndRad float min and max end radius as fraction of start radius
ductSeg.angleWt float cost function preferential angle weighting
ductSeg.densityWt float cost function density weighting
ductSeg.numTry integer number of trial segments to generate
ductSeg.maxTry integer maximum number of segments to generate before giving up and reducing length
ductSeg.absMaxTry integer total number of segment tries before completely giving up
ductSeg.roiStep float (mm) step size for checking segment is valid

vessel tree parameters

Name Type Notes
vesselTree.maxBranch integer target number of branches
vesselTree.maxGen integer maximum generation
vesselTree.initRad float (mm) initial radius of tree
vesselTree.nFillX integer number of voxels for tree density tracking
vesselTree.nFillY integer number of voxels for tree density tracking
vesselTree.nFillZ integer number of voxels for tree density tracking

vessel branch parameters

Name Type Notes
vesselBr.minLen0 float (mm) minimum and maximum branch lengths per level
vesselBr.maxLen0 float (mm) minimum and maximum branch lengths per level
vesselBr.minLen1 float (mm) minimum and maximum branch lengths per level
vesselBr.maxLen1 float (mm) minimum and maximum branch lengths per level
vesselBr.minLen2 float (mm) minimum and maximum branch lengths per level
vesselBr.maxLen2 float (mm) minimum and maximum branch lengths per level
vesselBr.minLenDefault float (mm) minimum and maximum branch lengths per level
vesselBr.maxLenDefault float (mm) minimum and maximum branch lengths per level
vesselBr.maxChild int maximum number of children
vesselBr.childMinRad float minimum branch radius to have children (mm)
vesselBr.childLevBound integer  
vesselBr.child00 float  
vesselBr.child01 float  
vesselBr.child02 float  
vesselBr.child10 float  
vesselBr.child11 float  
vesselBr.child12 float  
vesselBr.child20 float  
vesselBr.child21 float  
vesselBr.child22 float  
vesselBr.child30 float  
vesselBr.child31 float  
vesselBr.child32 float  
vesselBr.child40 float  
vesselBr.child41 float  
vesselBr.child42 float  
vesselBr.minRadFrac float minimum starting radius as a fraction of parent end radius
vesselBr.maxRadFrac float maximum starting radius as a fraction of parent end radius
vesselBr.radFrac0 float starting radius as fraction of parent end radius for first child
vesselBr.minAngle float min angle between parent end direction and child start direction for children after first (fraction of pi radians)
vesselBr.maxAngle float max angle between parent end direction and child start direction for children after first (fraction of pi radians)

vessel segment parameters

Name Type Notes
vesselSeg.lengthBetaA float length distribution shape parameters
vesselSeg.lengthBetaB float length distribution shape parameters
vesselSeg.radiusBetaA float radius distribution shape parameters
vesselSeg.radiusBetaB float radius distribution shape parameters
vesselSeg.minLen float (mm) min and max segment length
vesselSeg.maxLen float (mm) min and max segment length
vesselSeg.maxCurvRad float (mm) maximum radius of curvature
vesselSeg.maxCurvFrac float maximum length of segment based on curvature (fraction of pi radians)
vesselSeg.minEndRad float min and max end radius as fraction of start radius
vesselSeg.maxEndRad float min and max end radius as fraction of start radius
vesselSeg.angleWt float cost function preferential angle weighting
vesselSeg.densityWt float cost function density weighting
vesselSeg.numTry integer number of trial segments to generate
vesselSeg.maxTry integer maximum number of segments to generate before giving up and reducing length
vesselSeg.absMaxTry integer total number of segment tries before completely giving up
vesselSeg.roiStep float (mm) step size for checking segment is valid