国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
【OpenCV入門指南】第二篇 縮放圖像

【OpenCV入門指南】第二篇 縮放圖像

上一篇《【OpenCV入門指南】第一篇安裝OpenCV》講解了如何在VS2008下安裝和配置OpenCV,本篇將介紹使用OpenCV來(lái)縮放圖片。首先介紹幾個(gè)關(guān)鍵函數(shù)——cvResizecvCreateImage

《OpenCV入門指南》系列文章地址:http://blog.csdn.net/morewindows/article/category/1291764

 一. 主要函數(shù)介紹

1.1 cvResize

函數(shù)功能:圖像大小變換

函數(shù)原型:

voidcvResize(

  const CvArr* src,

  CvArr* dst,

  intinterpolation=CV_INTER_LINEAR

);

函數(shù)說(shuō)明:

第一個(gè)參數(shù)表示輸入圖像。

第二個(gè)參數(shù)表示輸出圖像。

第三個(gè)參數(shù)表示插值方法,可以有以下四種:

CV_INTER_NN - 最近鄰插值,

CV_INTER_LINEAR - 雙線性插值 (缺省使用)

CV_INTER_AREA - 使用象素關(guān)系重采樣。當(dāng)圖像縮小時(shí)候,該方法可以避免波紋出現(xiàn)。當(dāng)圖像放大時(shí),類似于 CV_INTER_NN 方法..

CV_INTER_CUBIC - 立方插值.

這個(gè)函數(shù)在功能上與Win32 API中的StretchBlt()函數(shù)類似。

 

1.2 cvCreateImage

函數(shù)功能:創(chuàng)建圖像

函數(shù)原型:

IplImage* cvCreateImage(CvSize size, intdepth, intchannels);

函數(shù)說(shuō)明:

第一個(gè)參數(shù)表示圖像的大小。

第二個(gè)參數(shù)表示圖像的深度,可以為IPL_DEPTH_8U,IPL_DEPTH_16U等等。

第三個(gè)參數(shù)表示圖像的通道數(shù)。

 

二. 示例程序代碼

有了這二個(gè)函數(shù)后,不難寫出代碼:

  1. //縮放圖像文件  
  2. //By MoreWindows (http://blog.csdn.net/MoreWindows)  
  3. #include <opencv2/opencv.hpp>  
  4. using namespace std;  
  5. //隱藏控制臺(tái)窗口  
  6. #pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")  
  7. int main()  
  8. {  
  9.     const char *pstrImageName = "沖浪大師賽001.jpg";  
  10.     const char *pstrSaveImageName = "沖浪大師賽001縮放圖.jpg";  
  11.     const char *pstrWindowsSrcTitle = "原圖 (http://blog.csdn.net/MoreWindows)";  
  12.     const char *pstrWindowsDstTitle = "縮放圖 (http://blog.csdn.net/MoreWindows)";  
  13.       
  14.     double fScale = 0.314;      //縮放倍數(shù)  
  15.     CvSize czSize;              //目標(biāo)圖像尺寸  
  16.       
  17.     //從文件中讀取圖像    
  18.     IplImage *pSrcImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED);  
  19.     IplImage *pDstImage = NULL;   
  20.       
  21.     //計(jì)算目標(biāo)圖像大小  
  22.     czSize.width = pSrcImage->width * fScale;  
  23.     czSize.height = pSrcImage->height * fScale;  
  24.       
  25.     //創(chuàng)建圖像并縮放  
  26.     pDstImage = cvCreateImage(czSize, pSrcImage->depth, pSrcImage->nChannels);  
  27.     cvResize(pSrcImage, pDstImage, CV_INTER_AREA);  
  28.       
  29.     //創(chuàng)建窗口  
  30.     cvNamedWindow(pstrWindowsSrcTitle, CV_WINDOW_AUTOSIZE);  
  31.     cvNamedWindow(pstrWindowsDstTitle, CV_WINDOW_AUTOSIZE);  
  32.       
  33.     //在指定窗口中顯示圖像  
  34.     cvShowImage(pstrWindowsSrcTitle, pSrcImage);  
  35.     cvShowImage(pstrWindowsDstTitle, pDstImage);  
  36.       
  37.     //等待按鍵事件  
  38.     cvWaitKey();  
  39.       
  40.     //保存圖片  
  41.     cvSaveImage(pstrSaveImageName, pDstImage);  
  42.       
  43.     cvDestroyWindow(pstrWindowsSrcTitle);  
  44.     cvDestroyWindow(pstrWindowsDstTitle);  
  45.     cvReleaseImage(&pSrcImage);  
  46.     cvReleaseImage(&pDstImage);  
  47.     return 0;  
  48. }  

程序運(yùn)行結(jié)果如下:

本篇介紹的圖像縮放比較容易,下一篇《【OpenCV入門指南】第三篇Canny邊緣檢測(cè)》將介紹在OpenCV中使用Canny算子對(duì)圖像進(jìn)行邊緣檢測(cè),歡迎繼續(xù)瀏覽。


 

轉(zhuǎn)載請(qǐng)標(biāo)明出處,原文地址:http://blog.csdn.net/morewindows/article/details/8239560

《OpenCV入門指南》系列文章地址:http://blog.csdn.net/morewindows/article/category/1291764

42
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
OpenCV入門指南
OpenCV-Python 圖像的幾何變換 | 十四
圖像數(shù)據(jù)增強(qiáng)——談?wù)凮pencv
投影與三維視覺(jué)——矯正映射
OpenCV進(jìn)階之路:神經(jīng)網(wǎng)絡(luò)識(shí)別車牌字符 - 博客 - 伯樂(lè)在線
【OpenCV入門教程之八】線性鄰域?yàn)V波專場(chǎng):方框?yàn)V波、均值濾波與高斯濾波
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服