#include "cv.h"#include <cxcore.h>#include <highgui.h>int main(){ //將影像檔載入至記憶體 分配映像資料結構所需要的內控 返回一個指向資料結構IplImage的記憶體塊: IplImage *img = cvLoadImage("C:\\Users\\freeboy\\Desktop\\學習資料\\例圖\\lena.jpg"); //需要把這個圖片放在這個project下面,比如我的:&user name\Documents\Visual Studio 2010\Projects\opencvhello\opencvhello檔案夾裡面 //定義兩個視窗,自由大小。本函數由HighGUI庫提供。第二個參數如果為0,則視窗大小不會因映像的大小而改變。 cvNamedWindow("Image-in",CV_WINDOW_AUTOSIZE); cvNamedWindow("Image-out",CV_WINDOW_AUTOSIZE); //先顯示原jpg圖 cvShowImage("Image-in",img); //分配空間儲存處理後的映像 IplImage *out=cvCreateImage( cvGetSize(img),//當前映像大小 IPL_DEPTH_8U,//各通道每個像素點的類型 3//通道總數 );//進行高斯處理,處理的是指標img指向的記憶體,將處理後的資料交給out指標指向的記憶體,對每個像素周圍3x3的地區進行高斯平滑處理(其實輸入輸出映像可以是相同的) cvSmooth(img,out,CV_GAUSSIAN,3,3);//顯示處理後的映像 cvShowImage("Image-out",out); //清除垃圾 cvReleaseImage(&out); cvReleaseImage(&img); //cvWaitKey的參數如果是正值,則程式會等待數值個毫秒,然後繼續運行;如果是負值或者0,就會等待使用者觸發按鍵動作,然後繼續程式。 cvWaitKey(); //銷毀視窗,養成好習慣 cvDestroyWindow("Image-in"); cvDestroyWindow("Image-out"); return 0;}