




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、#include <iostream>#include <cv.h>#include <highgui.h>using namespace std;bool FilterAV(IplImage* &image,int k);bool FilterAV2(IplImage* &image,int k);bool FilterMid(IplImage* &image,int k);bool FilterMid2(IplImage* &image,int k);bool FeatureTrack(IplImage* &ima
2、ge);bool EdgeTrack(IplImage* &image,int threshold1,int threshold2);int main(int argc,char *argv)/argc指變量的個數(shù),*argv指向字符變量IplImage *img=0;int height,width,step,channels;uchar *data;/載入圖像/img=cvLoadImage("OpenCvDemo.jpg",0);/轉(zhuǎn)化為單通道,灰度圖像5img=cvLoadImage("OpenCvDemo.jpg",0);if (!im
3、g)printf("could not load image file: %sn","OpenCvDemo.jpg");exit(0);/獲取圖像數(shù)據(jù)height=img->height;width=img->width;step=img->widthStep;channels=img->nChannels;data=(uchar*)img->imageData;printf("processing a %dx%d image with %d channelsn",height,width,channel
4、s);/創(chuàng)建窗口cvNamedWindow("mainWin",CV_WINDOW_AUTOSIZE);cvMoveWindow("mainWin",100,100);/移動窗口,以屏幕左上角的起點(diǎn)的偏移量/FilterAV2(img,3);/FilterAV(img,3);/FilterMid(img,3);/FilterMid2(img,3);/FilterAV(img,3);FeatureTrack(img);/EdgeTrack(img,60,80);/顯示圖像cvShowImage("mainWin",img);/wait
5、for a keycvWaitKey(0);/release the imagecvReleaseImage(&img);return 0;bool FilterAV(IplImage* &image,int k)/均值濾波IplImage *image2=cvCreateImage(cvSize(image->width,image->height),image->depth,1);uchar *p=(uchar *)image2->imageData;/申請image2圖像空間int m=(k-1)/2;for (int x=m;x<image
6、->height-m;+x)for (int y=m;y<image->width-m;+y)int SumData=0;for (int i=-m;i<m+1;+i)for (int j=-m;j<m+1;+j)/k為奇數(shù),計算k*k區(qū)域的灰度和SumData+=(int)(uchar *)image->imageData)(x+i)*image->widthStep+y+j;px*image->widthStep+y=SumData/(k*k);image=cvCloneImage(image2);/拷貝給原圖像cvReleaseImage(
7、&image2);/銷毀臨時變量return true;bool FilterAV2(IplImage* &image,int k)/調(diào)用cvSmooth函數(shù)實(shí)現(xiàn)IplImage *dstImage=0;dstImage=cvCreateImage(cvGetSize(image),image->depth,1);cvSmooth(image,dstImage,CV_BLUR,k,k);/CV_BLUR在3*3大小進(jìn)行均值濾波image=cvCloneImage(dstImage);cvReleaseImage(&dstImage);return true;boo
8、l FilterMid(IplImage* &image,int k)/中值濾波函數(shù)IplImage *image2=cvCreateImage(cvSize(image->width,image->height),image->depth,1);uchar *ImagePix=(uchar *)image2->imageData;int m=(k-1)/2;for (int x=m;x<image->height-m;+x)for (int y=m;y<image->width-m;+y)uchar PixArray100;int t=
9、0;for (int i=-m;i<m+1;+i)for(int j=-m;j<m+1;+j)/賦值操作PixArrayt+=(uchar *)image->imageData)(x+i)*image->widthStep+y+j;for (int i=0;i<k*k-1;+i)for(int j=0;j<k*k-i-1;+j)/起泡法快速排序if (PixArrayj>PixArrayj+1)uchar k=PixArrayj;PixArrayj=PixArrayj+1;PixArrayj+1=k;ImagePixx*image->widthS
10、tep+y=PixArray(k*k-1)/2;image=cvCloneImage(image2);/拷貝給原圖像cvReleaseImage(&image2);/銷毀臨時變量return true;bool FilterMid2(IplImage* &image,int k)/IplImage *dstImage=0;/dstImage=cvCreateImage(cvGetSize(image),image->depth,1);/cvSmooth(image,dstImage,CV_MEDIAN,k,k);/CV_BLUR在3*3大小進(jìn)行均值濾波/image=cvC
11、loneImage(dstImage);/cvReleaseImage(&dstImage);cvSmooth(image,image,CV_MEDIAN,k,k);return true; /角點(diǎn)檢測與邊緣檢測bool FeatureTrack(IplImage* &image)CvPoint2D32f corners100000;int CornerCount=0;IplImage *corners1=0,*corners2=0;corners1= cvCreateImage(cvGetSize(image), image->depth, 1);corners2= c
12、vCreateImage(cvGetSize(image),image->depth, 1);cvGoodFeaturesToTrack(image,corners1,corners2,corners,&CornerCount,0.05,20,0);cout<<"Track over!"/ draw circles at each corner location in the gray image and/ print out a list the cornersfor (int i=0;i<CornerCount;+i)cvCircle(image,cvPoint(int)cornersi.x,(int)cornersi.y),5,cvScalar(255,255,255),2);cvReleaseImage(&corners1);cvReleaseImage(&corners2);return true;bool EdgeTrack(IplImage* &image,int threshold1,int threshold2)IplImage *edge=0;edg
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 檔案競賽試題及答案
- 貴州省黔東南、黔南、黔西南2025屆數(shù)學(xué)七年級第一學(xué)期期末經(jīng)典試題含解析
- 山東財經(jīng)大學(xué)東方學(xué)院《人文與社會》2023-2024學(xué)年第一學(xué)期期末試卷
- 宜春幼兒師范高等??茖W(xué)?!兑魳肺墨I(xiàn)檢索與論文寫作》2023-2024學(xué)年第一學(xué)期期末試卷
- 江西省吉安吉安縣聯(lián)考2025屆七上數(shù)學(xué)期末學(xué)業(yè)水平測試模擬試題含解析
- 2024-2025學(xué)年湖南省長沙市湖南廣益實(shí)驗(yàn)中學(xué)數(shù)學(xué)七上期末檢測試題含解析
- 赤峰職業(yè)技術(shù)學(xué)院《影視后期特效合成》2023-2024學(xué)年第一學(xué)期期末試卷
- 西安職業(yè)技術(shù)學(xué)院《中外美術(shù)史》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024-2025學(xué)年浙江省紹興柯橋區(qū)七校聯(lián)考七年級數(shù)學(xué)第一學(xué)期期末復(fù)習(xí)檢測試題含解析
- 兒童繪本數(shù)字化行業(yè)跨境出海項目商業(yè)計劃書
- 電纜橋架技術(shù)規(guī)范書
- 廣東藥科大學(xué) 作業(yè)紙 GDPU廣藥
- 成套設(shè)備電氣技術(shù)要求
- 《HSK標(biāo)準(zhǔn)教程3》第5課課件
- 戰(zhàn)術(shù)基礎(chǔ)動作教案
- 公益協(xié)會財務(wù)管理制度3篇-2023修改整理
- 高中英語3500單詞(表格)只有中文
- 公司理財-羅斯(完整版)
- 改變觀念提高效率課件
- 立責(zé)于心履責(zé)于行全面落實(shí)企業(yè)安全生產(chǎn)主體責(zé)任課件
- 醫(yī)療垃圾廢物處理課件
評論
0/150
提交評論