2013年2月28日 星期四

HW2

今天練習了視訊效果的製作,做出灰色 黑白 線條等等許多效果,相當有趣!

一開始令我比較苦惱的是空間的申請,必須用到 cvCreateImage這個function,將每個圖像宣告好之後,再使用cvCvtColor將彩色圖轉換成灰階圖,
cvCvtColor(pImg, gray,CV_BGR2GRAY);
,cvThreshold( gray, bw, 63, 255, CV_THRESH_BINARY );則是用來將灰階轉黑白,
裡頭的63,255  就是以63為基準點  超過63就會變255全白,低於63則變成0為黑色,就可以轉乘黑白了

cvCanny(gray, pCannyImg, 50, 150, 3);則是製作線條圖的function,這個效果十分有趣,不過他的用法我還得好好研究一下

最後還學到了cvResize

用法如下
 IplImage *src = 0; //原圖像指針
 IplImage *dst = 0; //目標圖像指針
 float scale = x; //縮放倍數為x倍
 CvSize dst_cvsize; //目標圖像尺寸

dst_cvsize.width = src->width * scale; //目標圖像的寬為原圖象寬的scale倍    
dst_cvsize.height = src->height * scale; //目標圖像的高為原圖象高的scale倍    
dst = cvCreateImage( dst_cvsize, src->depth, src->nChannels); //構造目標圖象    
cvResize(src, dst, CV_INTER_LINEAR); //縮放原圖像到目標圖像    
cvNamedWindow( "src", CV_WINDOW_AUTOSIZE ); //創建用於顯示原圖像的視窗 cvNamedWindow( "dst", CV_WINDOW_AUTOSIZE ); //創建用於顯示目標圖像的視窗

沒有留言:

張貼留言