protege吧 关注:47贴子:67
  • 0回复贴,共1

opencv 读图基本操作

只看楼主收藏回复

5、C例程
//////////////////////////////////////////////////////////////////////////// hello-world.cpp//// 该程序从文件中读入一幅图像,将之反色,然后显示出来. //////////////////////////////////////////////////////////////////////////#include <stdlib.h>#include <stdio.h>#include <math.h>#include <cv.h>#include <highgui.h> int main(int argc, char *argv[]){ IplImage* img = 0; int height,width,step,channels; uchar *data; int i,j,k; if(argc<2){ printf("Usage: main /n/7"); exit(0); } // load an image img=cvLoadImage(argv[1]); if(!img){ printf("Could not load image file: %s/n",argv[1]); exit(0); } // get the image data height = img->height; width = img->width; step = img->widthStep; channels = img->nChannels; data = (uchar *)img->imageData; printf("Processing a %dx%d image with %d channels/n",height,width,channels); // create a window cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE); cvMoveWindow("mainWin", 100, 100); // invert the image // 相当于 cvNot(img); for(i=0;i<height;i++) for(j=0;j<width;j++) for(k=0;k<channels;k++) data[i*step+j*channels+k]=255-data[i*step+j*channels+k]; // show the image cvShowImage("mainWin", img ); // wait for a key cvWaitKey(0); // release the image cvReleaseImage(&img ); return 0;}


IP属地:浙江1楼2014-04-16 22:45回复