📄 lightnormpgm.cc
字号:
const char *help = "\progname: lightnormpgm.cc\n\code2html: This program reads a pgm image and normalizes it.\n\version: Torch3 vision2.0, 2004-2005\n\(c) Sebastien Marcel (marcel@idiap.ch)\n";#include "ImageGray.h"#include "ipNormBestFitLinear.h"#include "ipNormMeanLight.h"#include "ipNormMeanStdvLight.h"#include "DiskXFile.h"#include "CmdLine.h"using namespace Torch;int main(int argc, char **argv){ char *image_filename; bool verbose; bool linear; bool meanstdv; // Construct the command line CmdLine cmd; cmd.setBOption("write log", false); // Put the help line at the beginning cmd.info(help); cmd.addText("\nArguments:"); cmd.addSCmdArg("image filename", &image_filename, "image filename"); cmd.addText("\nOptions:"); cmd.addBCmdOption("-verbose", &verbose, false, "verbose"); cmd.addBCmdOption("-linear", &linear, false, "linear light plane normalisation"); cmd.addBCmdOption("-meanstdv", &meanstdv, false, "meanstdv light plane normalisation"); cmd.read(argc, argv); DiskXFile *image_file = NULL; Image *image_in = NULL; Image *image_out = NULL; image_in = new ImageGray(); image_in->setBOption("verbose", verbose); image_file = new DiskXFile(image_filename, "r"); image_in->loadXFile(image_file); delete image_file; if(verbose) { print("Image info:\n"); print(" width = %d\n", image_in->width); print(" height = %d\n", image_in->height); print(" format = %s (%d)\n", image_in->coding, image_in->n_planes); } ipCore *imachine = NULL; if(linear) imachine = new ipNormBestFitLinear(image_in->width, image_in->height, "gray"); else if(meanstdv) imachine = new ipNormMeanStdvLight(image_in->width, image_in->height, "gray"); else imachine = new ipNormMeanLight(image_in->width, image_in->height, "gray"); imachine->setBOption("verbose", verbose); imachine->process(image_in); image_out = new ImageGray(); image_out->setBOption("verbose", verbose); image_out->copyFrom(image_in->width, image_in->height, imachine->seq_out->frames[0], "gray"); image_out->save("lightnorm.pgm"); image_out->copyFrom(image_in->width, image_in->height, imachine->seq_out->frames[1], "gray"); image_out->save("lightplane.pgm"); delete imachine; delete image_out; delete image_in; return(0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -