X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=tools%2Fpjrec.cpp;h=bc21b489950a23314dce2bc8d8a948833a4474bf;hb=d850a3477e9ccaecfa85e00bc619848fcc29bdb6;hp=7426f47125117b48c16a152b6262403808e7fbeb;hpb=92a0f68cb5d5062787b0cbb2664fafe2b2c9ae37;p=ctsim.git diff --git a/tools/pjrec.cpp b/tools/pjrec.cpp index 7426f47..bc21b48 100644 --- a/tools/pjrec.cpp +++ b/tools/pjrec.cpp @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: pjrec.cpp,v 1.20 2000/12/17 22:30:34 kevin Exp $ +** $Id: pjrec.cpp,v 1.25 2001/02/23 02:06:02 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -48,7 +48,7 @@ static struct option my_options[] = {0, 0, 0, 0} }; -static const char* g_szIdStr = "$Id: pjrec.cpp,v 1.20 2000/12/17 22:30:34 kevin Exp $"; +static const char* g_szIdStr = "$Id: pjrec.cpp,v 1.25 2001/02/23 02:06:02 kevin Exp $"; void pjrec_usage (const char *program) @@ -61,24 +61,27 @@ pjrec_usage (const char *program) std::cout << " nx-image Number of columns in output image" << std::endl; std::cout << " ny-image Number of rows in output image" << std::endl; std::cout << " --interp Interpolation method during backprojection" << std::endl; - std::cout << " nearest Nearest neighbor interpolation" << std::endl; - std::cout << " linear Linear interpolation" << std::endl; + std::cout << " nearest Nearest neighbor interpolation" << std::endl; + std::cout << " linear Linear interpolation (default)" << std::endl; + std::cout << " cubic Cubic interpolation\n"; #if HAVE_BSPLINE_INTERP - std::cout << " bspline B-spline interpolation" << std::endl; + std::cout << " bspline B-spline interpolation" << std::endl; #endif std::cout << " --preinterpolate Preinterpolation factor (default = 1)\n"; std::cout << " Used only with frequency-based filtering\n"; std::cout << " --filter Filter name" << std::endl; - std::cout << " abs_bandlimit Abs * Bandlimiting (default)" << std::endl; - std::cout << " abs_sinc Abs * Sinc" << std::endl; - std::cout << " abs_cosine Abs * Cosine" << std::endl; - std::cout << " abs_hamming Abs * Hamming" << std::endl; - std::cout << " shepp Shepp-Logan" << std::endl; - std::cout << " bandlimit Bandlimiting" << std::endl; - std::cout << " sinc Sinc" << std::endl; - std::cout << " cosine Cosine" << std::endl; - std::cout << " triangle Triangle" << std::endl; - std::cout << " hamming Hamming" << std::endl; + std::cout << " abs_bandlimit Abs * Bandlimiting (default)" << std::endl; + std::cout << " abs_sinc Abs * Sinc" << std::endl; + std::cout << " abs_cosine Abs * Cosine" << std::endl; + std::cout << " abs_hamming Abs * Hamming" << std::endl; + std::cout << " abs_hanning Abs * Hanning" << std::endl; + std::cout << " shepp Shepp-Logan" << std::endl; + std::cout << " bandlimit Bandlimiting" << std::endl; + std::cout << " sinc Sinc" << std::endl; + std::cout << " cosine Cosine" << std::endl; + std::cout << " triangle Triangle" << std::endl; + std::cout << " hamming Hamming" << std::endl; + std::cout << " hanning Hanning" << std::endl; std::cout << " --filter-method Filter method before backprojections\n";; std::cout << " convolution Spatial filtering (default)\n"; std::cout << " fourier Frequency filtering with discete fourier\n"; @@ -122,7 +125,7 @@ static void ReduceImageMPI (MPIWorld& mpiWorld, ImageFile* imLocal, ImageFile* i int -pjrec_main (int argc, char * argv[]) +pjrec_main (int argc, char * const argv[]) { Projections projGlobal; ImageFile* imGlobal = NULL; @@ -138,7 +141,7 @@ pjrec_main (int argc, char * argv[]) std::string sOptFilterMethodName (ProcessSignal::convertFilterMethodIDToName (ProcessSignal::FILTER_METHOD_CONVOLUTION)); std::string sOptFilterGenerationName (ProcessSignal::convertFilterGenerationIDToName (ProcessSignal::FILTER_GENERATION_DIRECT)); std::string sOptInterpName (Backprojector::convertInterpIDToName (Backprojector::INTERP_LINEAR)); - std::string sOptBackprojectName (Backprojector::convertBackprojectIDToName (Backprojector::BPROJ_IDIFF3)); + std::string sOptBackprojectName (Backprojector::convertBackprojectIDToName (Backprojector::BPROJ_IDIFF)); int iOptPreinterpolationFactor = 1; int nx, ny; char *endptr; @@ -330,7 +333,7 @@ pjrec_main (int argc, char * argv[]) return (1); } reconstruct.reconstructAllViews(); - + if (bOptVerbose) timerReconstruct.timerEndAndReport ("Time to reconstruct");