cylinder settings for uCT
This commit is contained in:
parent
0b90e6c8c9
commit
e0d1a66982
@ -154,8 +154,8 @@ void solve( const Array<float>& VOL, Array<float>& Mean, Array<char>& ID,
|
||||
fillFloat.fill(Dist);
|
||||
smooth( VOL, Dist, 2.0, MultiScaleSmooth, fillFloat );
|
||||
// Compute non-local mean
|
||||
int depth = 5;
|
||||
float sigsq=0.1;
|
||||
// int depth = 5;
|
||||
// float sigsq=0.1;
|
||||
int nlm_count = NLM3D( MultiScaleSmooth, Mean, Dist, NonLocalMean, depth, sigsq);
|
||||
fillFloat.fill(NonLocalMean);
|
||||
}
|
||||
|
@ -6,11 +6,15 @@ Domain {
|
||||
BC = 0 // Boundary condition type
|
||||
}
|
||||
uCT {
|
||||
InputFile = "static_Dry_Scan_recon.volume"
|
||||
rough_cutoff = 0.01
|
||||
InputFile = "MG_dryrecon.volume"
|
||||
rough_cutoff = 0.0
|
||||
lamda = 0.5
|
||||
nlm_sigsq = 0.25
|
||||
nlm_depth = 3
|
||||
center_x = 960
|
||||
center_y = 960
|
||||
center_z = 600
|
||||
radius = 750
|
||||
}
|
||||
Analysis {
|
||||
}
|
||||
|
@ -75,6 +75,10 @@ int main(int argc, char **argv)
|
||||
auto lamda=uct_db->getScalar<float>( "lamda" );
|
||||
auto nlm_sigsq=uct_db->getScalar<float>( "nlm_sigsq" );
|
||||
auto nlm_depth=uct_db->getScalar<int>( "nlm_depth" );
|
||||
auto cx=uct_db->getScalar<int>( "center_x" );
|
||||
auto cy=uct_db->getScalar<int>( "center_y" );
|
||||
auto cz=uct_db->getScalar<int>( "center_z" );
|
||||
auto CylRad=uct_db->getScalar<float>( "cylinder_radius" );
|
||||
|
||||
//.......................................................................
|
||||
// Reading the domain information file
|
||||
@ -181,7 +185,7 @@ int main(int argc, char **argv)
|
||||
filter_src( *Dm[0], LOCVOL[0] );
|
||||
|
||||
// Set up the mask to be distance to cylinder (crop outside cylinder)
|
||||
float CylRad=900;
|
||||
// float CylRad=900;
|
||||
for (int k=0;k<Nz[0]+2;k++) {
|
||||
for (int j=0;j<Ny[0]+2;j++) {
|
||||
for (int i=0;i<Nx[0]+2;i++) {
|
||||
@ -193,9 +197,9 @@ int main(int argc, char **argv)
|
||||
int y=jproc*Ny[0]+j-1;
|
||||
int z=kproc*Nz[0]+k-1;
|
||||
|
||||
int cx = 0.5*nprocx*Nx[0];
|
||||
int cy = 0.5*nprocy*Ny[0];
|
||||
int cz = 0.5*nprocz*Nz[0];
|
||||
//int cx = 0.5*nprocx*Nx[0];
|
||||
//int cy = 0.5*nprocy*Ny[0];
|
||||
//int cz = 0.5*nprocz*Nz[0];
|
||||
|
||||
// distance from the center line
|
||||
MASK(i,j,k) = CylRad - sqrt(float((z-cz)*(z-cz) + (y-cy)*(y-cy)) );
|
||||
|
Loading…
Reference in New Issue
Block a user