青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-145  評論-173  文章-70  trackbacks-0

MFC使用OPenCV常用函數搜集

================================1 顯示IplImage到指定窗口==================================
public:
BITMAPINFO *m_pBITMAPINFO_24;// 24位真彩圖BITMAPINFO格式固定,提前創(chuàng)建1次并保存指針
BITMAPINFO *m_pBITMAPINFO_08;// 8位灰度圖BITMAPINFO格式固定,提前創(chuàng)建1次并保存指針
void DrawImgToWnd(CWnd *pWnd, IplImage *pImg)
{
RECT rc;
pWnd->GetClientRect(&rc);
CDC *pDC = pWnd->GetDC();
HDC hdc = pDC->GetSafeHdc();
if(pImg->nChannels == 3) // 3通道
{
   m_pBITMAPINFO_24->bmiHeader.biWidth = rc.right;
   m_pBITMAPINFO_24->bmiHeader.biHeight = rc.bottom;//這里負值表示顯示鏡像位圖
   ::StretchDIBits(
    hdc,
    0, 0, rc.right, rc.bottom,
    0, 0, pImg->width, pImg->height,   
    pImg->imageData, m_pBITMAPINFO_24, DIB_RGB_COLORS, SRCCOPY);
}
else // 單通道
{
   m_pBITMAPINFO_24->bmiHeader.biWidth = rc.right;
   m_pBITMAPINFO_24->bmiHeader.biHeight = rc.bottom;//這里負值表示顯示鏡像位圖
   ::StretchDIBits(
    hdc,
    0, 0, rc.right, rc.bottom,
    0, 0, pImg->width, pImg->height,
    pImg->imageData, m_pBITMAPINFO_08, DIB_RGB_COLORS, SRCCOPY);
}
pWnd->ReleaseDC(pDC);
}

 

==================================2 位圖縮放==================================
上面的函數DrawImgToWnd只能原比例顯示位圖,但實際中通常是要縮放后顯示的

GDI自帶的插值算法很慢
::SetStretchBltMode(hdc, HALFTONE);//名聲很不好的一個函數

GDI+自帶的插值算法很快,但GDI+封裝的太厲害,沒有導出任何接口,使用不方便,效率因此而下降,也可能我沒找到..

OpenCV的插值算法也非常快,并且給出單獨的函數(源碼都有),使用方便,如果合理使用,比GDI+稍快

當然你也可以自己寫插值算法...........

下面是OpenCV縮放位圖的函數:
IplImage *pImg_24 = cvCreateImage(cvSize(WND_WIDTH, WND_HEIGHT),8, 3);//創(chuàng)建與窗口同大小的空圖
cvResize(pImg, pImg_24, CV_INTER_LINEAR);//把源圖縮放至窗口大小
DrawImgToWnd(CWnd *pWnd, pImg_24);//上面寫的函數,顯示與窗口同尺寸的位圖
cvReleaseImage(&pImg);//釋放內存
如果,pImg_24我們事先定義成公共變量并初始化,將省去每次縮放重復創(chuàng)建釋放內存的操作,這樣做就可以比GDI+快了

================================== 3 圖片讀取與轉換 ==================================
// cvLoadImage第二個參數 -1:讀取圖像的原通道數 0:強制灰度圖 1: 讀取彩色圖
IplImage *pImgSrc = cvLoadImage("清晰面包.bmp",-1);
cvSaveImage("c:\\demo.bmp", pImgSrc);
cvSaveImage("c:\\demo.png", pImgSrc);
cvSaveImage("c:\\demo.jpg", pImgSrc);
cvSaveImage("c:\\demo.tiff", pImgSrc);
cvReleaseImage(&pImgSrc);
OpenCV貌似不支持gif文件

================================== 4 截取指定部分圖像 ==================================
IplImage* cvGetSubImage(IplImage *pImgSrc, CvRect rc)
{
    cvSetImageROI(pImgSrc,rc); // 選中指定部分
    IplImage *pImgDst = cvCreateImage(cvSize(rc.width, rc.height), pImgSrc->depth, pImgSrc->nChannels);
    cvCopy(pImgSrc, pImgDst); // copy源圖選中部分至新圖
    cvResetImageROI(pImgSrc); // 源圖取消選中
    return pImgDst;
}

================================== 5 幾個常用的小函數 ==================================

cvSet(pImg,cvScalarAll(255));//把灰度圖置成全白
cvSet(pImg,cvScalarAll(0));//把灰度圖置成全黑
cvCvtColor(pImgSrc, pImgDst, CV_BGR2GRAY);//灰度化
cvThreshold(pImgSrc,pImgDst,141,255,CV_THRESH_BINARY); //灰度圖的二值化,141為閥值

posted on 2009-12-12 23:31 deercoder 閱讀(1816) 評論(0)  編輯 收藏 引用 所屬分類: OpenCV / OpenGL
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久亚洲一区| 中日韩视频在线观看| 亚洲欧美日韩一区二区三区在线观看| 一本色道久久综合一区| 日韩一级片网址| 欧美一区三区三区高中清蜜桃| 欧美一区二区网站| 欧美亚洲专区| 亚洲午夜久久久久久久久电影网| 国产综合视频| 最近中文字幕日韩精品 | 国产欧美精品日韩精品| 国产亚洲毛片在线| 99视频精品在线| 亚洲午夜免费视频| 狠狠色狠狠色综合日日小说| 999在线观看精品免费不卡网站| 亚洲精品自在在线观看| 午夜日韩在线| 欧美日韩免费视频| 国产区日韩欧美| 欧美www视频在线观看| 中国av一区| 亚洲电影成人| 久久黄色网页| 中文无字幕一区二区三区| 国产一区二区三区久久精品| 欧美福利一区二区| 久久免费视频在线| 国产日韩综合一区二区性色av| 亚洲午夜成aⅴ人片| 女人香蕉久久**毛片精品| 欧美日韩国产区| 亚洲黄一区二区| 亚洲韩日在线| 一区二区三区欧美亚洲| 亚洲大胆视频| 欧美国产第一页| 狠狠色丁香久久婷婷综合丁香| 最新国产成人av网站网址麻豆| 老司机一区二区| 一区在线电影| 欧美国产成人在线| 国产日产欧产精品推荐色| 亚洲精品一级| 在线观看欧美精品| 欧美国产日韩精品| 欧美人与禽性xxxxx杂性| 亚洲视频 欧洲视频| 一区二区三区黄色| 国产精品久久久久久久久免费| 一本一本久久a久久精品综合麻豆| 欧美在线观看视频一区二区三区 | 国产欧美在线观看| 日韩视频国产视频| 国产农村妇女精品| 一本一本久久| 在线亚洲欧美视频| 欧美美女bb生活片| 91久久在线视频| 最近中文字幕mv在线一区二区三区四区 | 亚洲欧美日本另类| 欧美91大片| 亚洲人在线视频| 久久蜜桃资源一区二区老牛 | 亚洲一区二区三区四区视频 | 欧美综合二区| 久久精品国产清高在天天线 | 国产精品美女999| aa日韩免费精品视频一| 国产欧美一区二区三区久久人妖| 99成人精品| 午夜天堂精品久久久久| 久久免费少妇高潮久久精品99| 欧美一区二区视频网站| 国产毛片一区二区| 亚洲激情偷拍| 日韩一区二区久久| 欧美视频日韩视频| 欧美xart系列在线观看| 亚洲高清在线观看一区| 亚洲欧美欧美一区二区三区| 亚洲国产成人精品久久| 欧美成人第一页| 久久精品免费播放| 亚洲承认在线| 欧美激情aaaa| 亚洲欧美国产日韩天堂区| 久久精品在线观看| 欧美日精品一区视频| 在线亚洲+欧美+日本专区| 欧美在线观看视频| 亚洲福利视频网| 欧美日韩免费高清| 欧美一区二区大片| 亚洲黄页视频免费观看| 午夜国产精品视频免费体验区| 国产欧美日韩亚洲| 久久久五月天| 欧美在线视频免费播放| 欧美午夜一区| 99www免费人成精品| 久久九九热免费视频| 亚洲欧洲视频| 国产婷婷成人久久av免费高清| 美女精品网站| 欧美高清在线播放| 午夜精品久久久久久久久久久久 | 99国产精品99久久久久久粉嫩| 国产日韩精品久久| 欧美日韩精品免费观看视频完整| 欧美亚洲系列| 亚洲美女视频在线观看| 久久夜色精品国产亚洲aⅴ| 国产精品免费观看在线| 久久综合精品国产一区二区三区| 在线亚洲一区观看| 欧美激情1区2区| 久久精品国产综合| 午夜一区二区三区不卡视频| 国产精品久久网| 欧美成年人视频网站| 久久国产精品一区二区三区| 国产精品久久久久久久久久ktv| 亚洲精品国精品久久99热| 国产精品一二三四| 亚洲中无吗在线| 亚洲国产高潮在线观看| 99综合精品| 亚洲人成人99网站| 国产乱肥老妇国产一区二| 日韩一级在线观看| 亚洲第一页自拍| 久久久久一区二区三区| 亚洲一二三区精品| 亚洲美女av在线播放| 国产精品欧美日韩一区| 亚洲蜜桃精久久久久久久| 免费看黄裸体一级大秀欧美| 国产视频综合在线| 国产精品免费网站| 欧美日韩亚洲天堂| 欧美精品电影在线| 亚洲视频欧美在线| aa日韩免费精品视频一| 亚洲精品社区| 亚洲日本欧美天堂| 日韩午夜免费视频| 夜夜嗨av一区二区三区网页| 亚洲精品中文字| 亚洲伦伦在线| 亚洲午夜精品| 午夜免费日韩视频| 欧美一区免费| 久久久久久久久蜜桃| 久久免费高清视频| 玖玖综合伊人| 欧美区视频在线观看| 欧美日韩亚洲精品内裤| 国产精品高清网站| 国产精品一区二区视频| 国产综合精品| 91久久国产综合久久蜜月精品 | 国产一区免费视频| 伊人婷婷欧美激情| 亚洲精品日韩综合观看成人91| 欧美视频在线不卡| 国产精品日韩专区| 激情久久综艺| 一区二区91| 欧美一级在线亚洲天堂| 久久免费高清视频| 亚洲国产一区二区三区高清| 一区二区三区波多野结衣在线观看| 亚洲欧美色一区| 99国产精品视频免费观看一公开| 亚洲一级黄色| 久热精品视频| 国产精品久久久久久五月尺| 狠狠干狠狠久久| 99在线精品视频| 久久婷婷影院| 在线亚洲一区| 久久综合色88| 国产伦精品一区二区三区照片91| 亚洲国产另类 国产精品国产免费| 亚洲美女在线一区| 久久一区中文字幕| 一本一本大道香蕉久在线精品| 久久精品视频免费观看| 久久亚洲电影| 国产精品久久久久久久久免费桃花 | 欧美一区二区大片| 亚洲国产精品女人久久久| 亚洲欧美文学| 欧美日韩国产一中文字不卡 | 欧美日韩色婷婷| 1769国产精品| 久久久久久婷| 亚洲专区免费|