UsTK : Ultrasound ToolKit  version 2.0.1 under development (2025-02-01)
tutorial-elastography-3D-basic.cpp
1 
3 #include <iostream>
4 #include <visp3/ustk_core/usConfig.h>
5 
6 #if defined(USTK_HAVE_FFTW)
7 
8 #include <visp3/ustk_core/usImageIo.h>
9 #include <visp3/ustk_elastography/usElastography3D.h>
10 
11 int main()
12 {
13  // input volumes
14  usImageRF3D<short int> preComp, postComp;
15 
16  if (us::getDataSetPath().empty()) {
17  std::cout << "You should set USTK_DATASET_PATH environment var to access to ustk dataset containing RF volumes for "
18  "elastography"
19  << std::endl;
20  return 0;
21  }
22 
23  usImageIo::read(preComp, us::getDataSetPath() + std::string("/RFElasto3D/preCompressed/image00000.mhd"));
24  usImageIo::read(postComp, us::getDataSetPath() + std::string("/RFElasto3D/postCompressed/image00000.mhd"));
25 
26  // elasto process
27  usElastography3D elsastoProcess;
28  elsastoProcess.setPreCompression(preComp);
29  elsastoProcess.setPostCompression(postComp);
30  elsastoProcess.setROI(40, 2500, 4, 50, 500, 5);
31 
33  elastResult.setImagePreScanSettings(preComp);
34 
35  elastResult.setData(elsastoProcess.run());
36 
37  usImageIo::write(elastResult, std::string("elastResult.mhd"));
38 
39  std::cout << "output written in elastResult.mhd" << std::endl;
40 
41  return 0;
42 }
43 #else
44 int main()
45 {
46  std::cout << "You should intall FFTW to run this tutorial" << std::endl;
47  return 0;
48 }
49 
50 #endif
Computation of a strain map using two sucessive RF volulmes acquired at different compressions of the...
void setPreCompression(const usImageRF3D< short > &Pre)
usImage3D< unsigned char > run()
void setPostCompression(const usImageRF3D< short > &Post)
void setROI(int tx, int ty, int tz, int tw, int th, int tf)
static void read(usImageRF2D< short int > &imageRf2D, const std::string &headerFileName)
Definition: usImageIo.cpp:153
static void write(const usImageRF2D< short > &rfImage, const std::string &headerFileName, const std::string &imageExtension2D)
Definition: usImageIo.cpp:104
void setData(const usImage3D< Type > &image)
void setImagePreScanSettings(const usImagePreScanSettings &preScanSettings)
VISP_EXPORT std::string getDataSetPath()
Definition: us.cpp:54