1 #include <visp3/core/vpTime.h>
2 #include <visp3/ustk_core/usImageIo.h>
3 #include <visp3/ustk_core/usPreScanToPostScan3DConverter.h>
4 #include <visp3/ustk_core/usSequenceReader.h>
6 int main(
int argc,
char **argv)
8 std::string mhd_filename;
10 for (
int i = 0; i < argc; i++) {
11 if (std::string(argv[i]) ==
"--input")
12 mhd_filename = std::string(argv[i + 1]);
13 else if (std::string(argv[i]) ==
"--help") {
14 std::cout <<
"\nUsage: " << argv[0] <<
" [--input <preScan3D.xml>] [--help]\n" << std::endl;
20 if (mhd_filename.empty()) {
22 if (!env_ipath.empty())
23 mhd_filename = env_ipath +
"/pre-scan/3D_xml/sequencepreScan3D.xml";
25 std::cout <<
"You should set USTK_DATASET_PATH environment var to access to ustk dataset" << std::endl;
66 prescanImage.
resize(480, 128, 16);
71 std::cout << prescanImage;
73 std::cout <<
"end reading" << std::endl;
78 double startTime = vpTime::measureTimeMs();
79 std::cout <<
"init converter..." << std::endl;
81 converter.
init(prescanImage);
83 double endInitTime = vpTime::measureTimeMs();
84 std::cout <<
"init time (sec) = " << (endInitTime - startTime) / 1000.0 << std::endl;
86 std::cout <<
"converting..." << std::endl;
87 converter.
convert(postscanImage, prescanImage);
89 double endConvertTime = vpTime::measureTimeMs();
90 std::cout <<
"convert time (sec) = " << (endConvertTime - endInitTime) / 1000.0 << std::endl;
92 std::cout <<
"writing post-scan..." << std::endl;
93 std::string mhdFileName =
"volumePostScan1.mhd";
static void read(usImageRF2D< short int > &imageRf2D, const std::string &headerFileName)
static void write(const usImageRF2D< short > &rfImage, const std::string &headerFileName, const std::string &imageExtension2D)
void resize(unsigned int height, unsigned int width, unsigned int numberOfFrames)
void init(const usImagePreScan3D< unsigned char > &preScanImage, double down=1)
void convert(usImagePostScan3D< unsigned char > &postScanImage, const usImagePreScan3D< unsigned char > &preScanImage)
VISP_EXPORT std::string getDataSetPath()