HighGUI組件
-
圖像的載入:imread()函數
Mat imread(const string& filename, int flag = 1)
其中flag=1代表讀入RGB彩色圖像,-1表示讀取原始圖像,0表示讀取灰度圖(TODO表格)
-
圖像的顯示: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
- 延時期間,如果有鍵按下,則返回鍵值(Esc對應的鍵值為27)
-
圖像的保存:imwrite()函數
OpenCV彩色圖像的存儲順序為BGR
OpenCV保存視頻的格式只能為AVI -
cvtColor 將圖像轉換到另一個顏色空間
cvtColor(src, dst, code)
應用場景:- COLOR_BGR2RBG
- COLOR_BGR2GRAY 將彩色圖轉換為灰度圖
- COLOR_BGR2YCrCb 對彩色圖像的亮度通道進行處理
數據結構與基本繪圖
- 在圖像的指定坐標點處畫一個圓圈:
cv::circle(img, Point, radius, color)
必選參數為:圖像、點坐標、圓的半徑和顏色
其中typedef Point2i Point
構造函數Point(x, y) - 在圖像中兩點畫一條直線:
cv::line(img, point1, point2, color)
必選參數:圖像,點1和點2,顏色;可選參數:thinkness, lineType和shift是啥 - Rectangle()
- putText()
Size(width, height)
圖像的尺寸/大小
- Linux下查看OpenCV版本號
pkg-config --modversion opencv