📄 ppmread2.cc
字号:
const char *help = "\progname: ppmread2.cc\n\code2html: This program reads/write two ppm images in two different ways.\n\version: Torch3 vision2.0, 2004-2005\n\(c) Sebastien Marcel (marcel@idiap.ch)\n";#include "ImageRgb.h"#include "DiskXFile.h"#include "ppmDiskXFile.h"#include "CmdLine.h"using namespace Torch;int main(int argc, char **argv){ char *image_filename1; char *image_filename2; bool verbose; // 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 1", &image_filename1, "image filename 1"); cmd.addSCmdArg("image filename 2", &image_filename2, "image filename 2"); cmd.addText("\nOptions:"); cmd.addBCmdOption("-verbose", &verbose, false, "verbose"); cmd.read(argc, argv); Image *image = NULL; DiskXFile *image_file = NULL; ImageDiskXFile *ppm_file = NULL; // // reads image 1 using default format image = new ImageRgb(image_filename1); image->setBOption("verbose", verbose); if(verbose) { print("Image info (%s):\n", image_filename1); print(" width = %d\n", image->width); print(" height = %d\n", image->height); print(" format = %s (%d)\n", image->coding, image->n_planes); } // // save image 1 using default format image_file = new DiskXFile("test1.ppm", "w"); image->saveXFile(image_file); delete image_file; // // reads image 2 using a specific ImageDiskXFile ppm_file = new ppmDiskXFile(image_filename2, "r"); image->loadImageXFile(ppm_file); delete ppm_file; if(verbose) { print("Image info (%s):\n", image_filename2); print(" width = %d\n", image->width); print(" height = %d\n", image->height); print(" format = %s (%d)\n", image->coding, image->n_planes); } ppm_file = new ppmDiskXFile("test2.ppm", "w"); image->saveImageXFile(ppm_file); delete ppm_file; delete image; return(0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -