fileIO
#include <stdio.h>FILE * pFile;pFile = fopen ("myfile.txt","w");fprintf (pFile, "Hi, %d+%d=%d\n",1,1,2);fclose (pFile);
#include<fstream>ofstream fout;fout.open("/path/to/file.txt");fout<<i<<endl;fout.close();
#define countof(ARRAY) (sizeof (ARRAY) / sizeof *(ARRAY))string fname="test.bin";float data[7]={5.1,3,2,9383,5.1,12,5.1};float data2[7];FILE *file2 = fopen(fname.data(), "wb");assert(file2);size_t n2 = fwrite(data, sizeof(float), countof(data), file2);assert(n2 == countof(data));fclose (file2);FILE *file = fopen(fname.data(), "rb");assert(file);size_t n = fread(data2, sizeof(float), countof(data), file);assert(n == countof(data));fclose (file); Timer
struct Timer{ clock_t begin; void time_start(){ begin = clock(); cout<<begin<<endl; } void time_end(){ cout<<begin<<endl; clock_t end = clock(); double elapsed_secs = double(end - begin) / CLOCKS_PER_SEC; cout<<end<<endl; cout<<"Elapse Time: "<<elapsed_secs<<endl; }};Timer tim;tim.time_start();//some code is running heretim.time_end();
OpenCV multiple channel
int sz[] = {2, 2, 60};Mat bigCube(3, sz, CV_8U, Scalar::all(255));cout<<bigCube.at<Vec<char,60>>(0,0)[0]<<endl;cout<<bigCube.at<char>(0,0)<<endl;
#define cn 60int sz[] = {2, 2, cn};Mat bigCube(3, sz, CV_8U, Scalar::all(255));cout<<bigCube.at<Vec<char,cn>>(0,0)[0]<<endl;
typedef Vec<uchar, 20> Vec20b;cv::Mat_<Vec20b> myMat(2,2);myMat.at<Vec20b>(1,1)(0)='a';cout<<myMat.at<Vec20b>(1,1)(0)<<endl;