OpenCV學習記錄(C++版本)

HighGUI組件

  1. 圖像的載入:imread()函數
    Mat imread(const string& filename, int flag = 1)其中flag=1表明讀入RGB彩色圖像,-1表示讀取原始圖像,0表示讀取灰度圖(TODO表格)
    數據結構

  2. 圖像的顯示:imshow()函數(改變窗口大小)
    imshow時改變窗口大小,
    ScreenShot from CSDN
string winname = "Wind";
namedWindow(winname, 0);//這個0是何意義呢?
resizeWindow(winname, 640, 480);

void imshow(const string& winname, InputArray mat)
waitKey()函數原型 int cv:waitKey(int delay=0)函數

  • delay ≤0 無限延時
  • delay > 0時,延時delay 毫秒
    • 延時期間,若是有鍵按下,則返回鍵值(Esc對應的鍵值爲27)
      • 沒有鍵按下,則返回-1
  1. 圖像的保存:imwrite()函數
    OpenCV彩色圖像的存儲順序爲BGR
    OpenCV保存視頻的格式只能爲AVIui

  2. cvtColor 將圖像轉換到另外一個顏色空間cvtColor(src, dst, code)
    應用場景:
    • COLOR_BGR2RBG
    • COLOR_BGR2GRAY 將彩色圖轉換爲灰度圖
    • COLOR_BGR2YCrCb 對彩色圖像的亮度通道進行處理

數據結構與基本繪圖

  1. 在圖像的指定座標點處畫一個圓圈:cv::circle(img, Point, radius, color)
    必選參數爲:圖像、點座標、圓的半徑和顏色
    其中typedef Point2i Point 構造函數Point(x, y)
  2. 在圖像中兩點畫一條直線:cv::line(img, point1, point2, color)
    必選參數:圖像,點1和點2,顏色;可選參數:thinkness, lineType和shift是啥
  3. Rectangle()
  4. putText()
  5. Size(width, height) 圖像的尺寸/大小

  • Linux下查看OpenCV版本號 pkg-config --modversion opencv
相關文章
相關標籤/搜索