Skip to content
Snippets Groups Projects
Commit f5300f49 authored by Vladimír Ulman's avatar Vladimír Ulman
Browse files

The version used for the first submission.

Reduced smoothing, slightly darker filopodia.
Processed the whole sequence, texture coherency preserved with old/naive FF generator.
parent 145e1a1d
No related branches found
No related tags found
No related merge requests found
...@@ -775,7 +775,7 @@ int ActiveMesh::ImportVTK_Ftree(const char *filename,const int idx, ...@@ -775,7 +775,7 @@ int ActiveMesh::ImportVTK_Ftree(const char *filename,const int idx,
std::cout << s << ": r=" << r << ", r*r=" << r*r << "\n"; std::cout << s << ": r=" << r << ", r*r=" << r*r << "\n";
//float dotsCount=10.f*r*r; //float dotsCount=10.f*r*r;
float dotsCount=200.f*r; float dotsCount=100.f*r;
int qM=(dotsCount > 1300.f)? 1300 : (int)dotsCount; int qM=(dotsCount > 1300.f)? 1300 : (int)dotsCount;
for (int q=0; q < qM; ++q) for (int q=0; q < qM; ++q)
...@@ -1725,7 +1725,8 @@ void ActiveMesh::PhaseII(const i3d::Image3d<i3d::GRAY16>& texture, ...@@ -1725,7 +1725,8 @@ void ActiveMesh::PhaseII(const i3d::Image3d<i3d::GRAY16>& texture,
{ {
i3d::GrayToFloat(texture,intermediate); i3d::GrayToFloat(texture,intermediate);
i3d::GaussIIR(intermediate,3.f,3.f,2.5f); //i3d::GaussIIR(intermediate,3.f,3.f,2.5f);
i3d::GaussIIR(intermediate,2.f,2.f,2.f);
#ifdef SAVE_INTERMEDIATE_IMAGES #ifdef SAVE_INTERMEDIATE_IMAGES
intermediate.SaveImage("4_texture_filtered.ics"); intermediate.SaveImage("4_texture_filtered.ics");
#endif #endif
......
...@@ -26,9 +26,11 @@ int main(int argc,char **argv) ...@@ -26,9 +26,11 @@ int main(int argc,char **argv)
//I'm called as generator/simulator //I'm called as generator/simulator
ParamsSetup(); ParamsSetup();
//ID53: mesh #14 looks nice
//ISBI: //ISBI:
//for (int i=0; i < 50; ++i) //for (int i=0; i < 50; ++i)
for (int i=5; i < 6; ++i) for (int i=0; i < 25; ++i)
{ {
LoadNewMesh(i); LoadNewMesh(i);
...@@ -170,10 +172,10 @@ int LoadNewMesh(int fileNo) ...@@ -170,10 +172,10 @@ int LoadNewMesh(int fileNo)
char VTK_fTreeA[1024]; char VTK_fTreeA[1024];
char VTK_fTreeB[1024]; char VTK_fTreeB[1024];
sprintf(VTK_nucleusSurf,"../sample_sequence/ID25/ID25_t%03d_nucleusSurf.vtk",fileNo*2); sprintf(VTK_nucleusSurf,"../sample_sequence/ID64/ID64_t%03d_nucleusSurf.vtk",fileNo*2);
sprintf(VTK_nucleus, "../sample_sequence/ID25/ID25_t%03d_nucleus.vtk",fileNo*2); sprintf(VTK_nucleus, "../sample_sequence/ID64/ID64_t%03d_nucleus.vtk",fileNo*2);
sprintf(VTK_fTreeA, "../sample_sequence/ID25/ID25_t%03d_fTree01.vtk",fileNo*2); sprintf(VTK_fTreeA, "../sample_sequence/ID64/ID64_t%03d_fTree01.vtk",fileNo*2);
sprintf(VTK_fTreeB, "../sample_sequence/ID25/ID25_t%03d_fTree02.vtk",fileNo*2); sprintf(VTK_fTreeB, "../sample_sequence/ID64/ID64_t%03d_fTree02.vtk",fileNo*2);
//first, obtain a fresh volumetric mesh of the cell body //first, obtain a fresh volumetric mesh of the cell body
//(before it gets overwritten in the following code) //(before it gets overwritten in the following code)
...@@ -269,6 +271,7 @@ int RenderMesh(int fileNo) ...@@ -269,6 +271,7 @@ int RenderMesh(int fileNo)
//create a FF by "diffusing displacement seeds/vertices" //create a FF by "diffusing displacement seeds/vertices"
mesh.ConstructFF(FF); mesh.ConstructFF(FF);
/*
char n[1024]; char n[1024];
sprintf(n,"old_vx_%03d.ics",fileNo); sprintf(n,"old_vx_%03d.ics",fileNo);
FF.x->SaveImage(n); FF.x->SaveImage(n);
...@@ -276,7 +279,7 @@ int RenderMesh(int fileNo) ...@@ -276,7 +279,7 @@ int RenderMesh(int fileNo)
FF.y->SaveImage(n); FF.y->SaveImage(n);
sprintf(n,"old_vz_%03d.ics",fileNo); sprintf(n,"old_vz_%03d.ics",fileNo);
FF.z->SaveImage(n); FF.z->SaveImage(n);
/*
//create a FF by "rendering displacement triangles" //create a FF by "rendering displacement triangles"
mesh.ConstructFF_T(FF); mesh.ConstructFF_T(FF);
sprintf(n,"new_vx_%03d.ics",fileNo); sprintf(n,"new_vx_%03d.ics",fileNo);
...@@ -298,12 +301,12 @@ int RenderMesh(int fileNo) ...@@ -298,12 +301,12 @@ int RenderMesh(int fileNo)
mesh.RenderDots(mask,texture); mesh.RenderDots(mask,texture);
// //
//or always one shot: //or always one shot:
/* //i3d::Image3d<i3d::GRAY16> texture;
i3d::Image3d<i3d::GRAY16> texture; //mesh.RenderOneTimeTexture(mask,texture);
mesh.RenderOneTimeTexture(mask,texture);
*/
texture.SaveImage("phantom.tif"); char fileName[1024];
sprintf(fileName,"phantom_t%03d.tif",fileNo);
texture.SaveImage(fileName);
#ifdef DO_PHASE_II_AND_III #ifdef DO_PHASE_II_AND_III
std::cout << "rendering texture II #" << fileNo << "\n"; std::cout << "rendering texture II #" << fileNo << "\n";
...@@ -322,8 +325,7 @@ int RenderMesh(int fileNo) ...@@ -322,8 +325,7 @@ int RenderMesh(int fileNo)
#endif #endif
std::cout << "exporting texture #" << fileNo << "\n"; std::cout << "exporting texture #" << fileNo << "\n";
char fileName[1024]; sprintf(fileName,"texture_t%03d.tif",fileNo);
sprintf(fileName,"text_t%03d.tif",fileNo);
texture.SaveImage(fileName); texture.SaveImage(fileName);
std::cout << "exporting mask #" << fileNo << "\n\n"; std::cout << "exporting mask #" << fileNo << "\n\n";
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment