1、資料載入、顯示與儲存
函數名稱 | 函數說明 |
imread() | 讀取圖像檔案 |
namedWindow() | 建立一個顯示圖像的視窗 |
imshow() | 在指定視窗中顯示圖像 |
VideoCapture() | 調用攝像頭或者讀取、儲存視訊檔案 |
imwrite() | 儲存圖像到檔案 |
VideoWriter() | 将多幀圖像儲存成視訊檔案 |
FileStorage() | 讀取或者儲存XML、YAML檔案 |
2、圖像基本操作
函數名稱 | 函數說明 |
cvtColor() | 圖像顔色空間轉換 |
convertTo() | 圖像資料類型轉換 |
split() | 圖像多通道分離 |
merge() | 圖像對通道合并 |
minMaxLoc() | 尋找矩陣中的最大值和最小值,以及最大值和最小值在矩陣中的位置 |
reshape() | 改變矩陣尺寸和通道數 |
mean() | 計算矩陣每個通道的平均值 |
meanStdDev() | 計算矩陣每個通道的平均值和标準差 |
max() / min() | 比較圖像每個元素灰階值的較大值 / 較小值 |
bitwise_and() | 像素求 “與” 運算 |
bitwise_or() | 像素求 “或” 運算 |
bitwise_xor() | 像素求 “異或” 運算 |
bitwise_not() | 像素求 “非” 運算 |
threshold() | 像素門檻值操作 |
adaptiveThreshold() | 圖像的二值化 |
LUT() | 顯示查找表 |
vconcat() / hconcat() | 圖像豎向連接配接 / 圖像橫向連接配接 |
resize() | 改變圖像尺寸 |
flip() | 圖像翻轉變換 |
warpAffine() | 圖像仿射變換 |
warpPerspective() | 圖像透視變換 |
warpPolar() | 圖像極坐标變換 |
circle() | 在圖像中繪制圓形 |
line() | 在圖像中根據兩點繪制一條直線 |
ellipse() | 在圖像中繪制橢圓 |
ellipse2Poly() | 在圖像中通過矩形邊界繪制橢圓 |
rectangle() | 在圖像中繪制矩形 |
fillPoly() | 在圖像中繪制多邊形 |
putText() | 在圖像中生成文字 |
copyTo() | 圖像深拷貝 |
pyrDown() | 圖像下采樣 |
pyrUp() | 圖像上采樣 |
createTrackbar() | 在圖像視窗建立滑動條 |
setMouseCallback() | 滑鼠事件響應 |
3、圖像直方圖與模闆比對
QT開發交流+赀料君羊:714620761
函數名稱 | 函數說明 |
calcHist() | 繪制圖像直方圖 |
normalize() | 資料歸一化 |
compareHist() | 直方圖比較 |
equalizeHist() | 直方圖均衡化 |
calcBackProject() | 直方圖反向投影 |
matchTemplate() | 圖像模闆比對 |
4、圖像濾波
函數名稱 | 函數說明 |
filter2D() | 卷積操作 |
rand() | 生成随機數 |
fill() | 産生均勻分布或高斯分布的随機數 |
blur() | 均值濾波 |
boxFilter() | 方框鋁箔 |
sqrBoxFilter() | 擴充方框濾波 |
GaussianBlur() | 高斯濾波 |
sepFilter2D() | 雙方向卷積濾波 |
medianBlur() | 中值濾波 |
bilateralFilter() | 雙邊濾波 |
convertScaleAbs() | 計算矩陣絕對值 |
Sobel() | Sobel 算子邊緣檢測 |
Scharr() | Scharr 算子邊緣濾波 |
getDerivKernels() | 生成邊緣檢測濾波器 |
Laplacian() | Laplacian 算子邊緣檢測 |
Canny() | Canny 算法邊緣檢測 |
5、圖像形态學操作
函數名稱 | 函數說明 |
distanceTransform() | 圖像像素距離交換 |
connectedComponents() | 圖像連通域計算 |
connectedComponentsWithStats() | 含有更多統計資訊的連通域計算 |
getStructuringElement() | 擷取圖像形态學濾波的矩陣結構元素 |
erode() | 腐蝕運算 |
dilate() | 膨脹運算 |
morphologyEx() | 形态學操作 |
thinning() | 圖像細化 |
6、目标檢測
函數名稱 | 函數說明 |
HoughLines() | 霍夫變換檢測直線 |
HoughLinesP() | 霍夫變換檢測直線的兩個端點 |
HoughLinesPointSet() | 二維點集中檢測直線 |
fitLine() | 拟合直線 |
HoughCircles() | 霍夫變換檢測圓 |
findContours() | 計算輪廓 |
drawContours() | 繪制輪廓 |
contourArea() | 計算輪廓面積 |
arcLength() | 計算輪廓長度 |
boundingRect() | 輪廓外接最大矩形 |
minAreaRect() | 輪廓外接最小矩形 |
approxPolyDP() | 輪廓多邊形逼近 |
pointPolygonTest() | 點到輪廓距離 |
convexHull() | 凸包檢測 |
moments() | 計算圖像矩 |
HuMoments() | 計算 Hu 矩 |
matchShapes() | 基于 Hu 矩的輪廓比對 |
minEnclosingTriangle() | 二維點集的最小三角形拟合 |
minEnclosingCircle() | 二維點集的最小圓形拟合 |
detectAndDecode() | QR二維碼檢測與識别 |
7、圖像分析與修複
函數名稱 | 函數說明 |
dft() | 傅裡葉變換 |
idft() | 傅裡葉逆變換 |
getOptimalDFTSize() | 計算矩陣傅裡葉變換的最優尺寸 |
copyMakeBorder() | 擴充圖像尺寸 |
magnitude() | 計算二維向量的幅值 |
mulSpectrums() | 複數矩陣乘法運算 |
dct() | 離散餘弦變換 |
idct() | 離散餘弦變換的逆變換 |
integral() | 計算積分圖像 |
floodFill() | 漫水填充法 |
watershed() | 分水嶺法 |
grabCut() | Grabcut 法 |
pyrMeanShiftFiltering() | Mean-Shift 法 |
TermCriteria() | 疊代算法終止條件 |
inpaint() | 圖像修複 |
8、特征點檢測與比對
函數名稱 | 函數說明 |
drawKeypoints() | 繪制關鍵點 |
cornerHarris() | 計算角點 Harris 評價系數 |
goodFeaturesToTrack() | 檢測 Shi-Tomas 角點 |
cornerSubPix() | 計算亞像素級别角點 |
Feature2D::detect() | 計算特征點中的關鍵點 |
Feature2D::compute() | 計算特征點中的描述子 |
Feature2D::detectAndCompute() | 同時計算特征點中的關鍵點和描述子 |
drawMatches() | 繪制特征點比對結果 |
FlannBasedMatcher() | FLANN 算法描述子比對 |
findHomography() | 計算單應性矩陣 |
9、立體視覺
函數名稱 | 函數說明 |
convertPointsToHomogenous() | 非齊次坐标向齊次坐标轉換 |
convertPointsFromHomogenous() | 齊次坐标向非齊次坐标轉換 |
findChessboardCorners() | 棋盤格内角點檢測 |
find4QuadCornerSubpix() | 内角點位置優化 |
findCirclesGrid() | 圓形網格的圓心檢測 |
drawChessboardCorners() | 繪制棋盤格的内角點或者圓形網格的圓心 |
undistort() | 圖像去畸變校正 |
projectPoints() | 單目相機空間點向圖像投影 |
solvePnP() | 計算位姿關系 |
Rodrigues() | 旋轉向量與旋轉矩陣互相轉換 |
stereoCalibrate() | 雙目相機标定 |
stereRectufy() | 雙目相機畸變校正 |
10、視訊分析
函數名稱 | 函數說明 |
absdiff() | 計算兩個圖像內插補點的絕對值 |
meanShift() | 均值遷移法的目标跟蹤 |
selectROI() | 通過滑鼠在圖像中選擇感興趣區域 |
CamShift() | 自适應均值遷移法目标跟蹤 |
calcOpticalFlowFarneback() | Farneback 多項式擴充算法光流跟蹤 |
cartToPolar() | 計算二維向量的模長與方向 |
calcOpticalFlowPyrLK() | LK稀疏光流法跟蹤 |
11、OpenCV 與機器學習
函數名稱 | 函數說明 |
kmeans() | K 均值聚類 |
StatModel::train() | 模型訓練 |
TrainData::create() | 建立訓練資料結構 |
StatModel::predict() | 利用模型對新資料進行預測 |
Algorithm::load() | 加載模型 |
KNearest::findNearest() | K 近鄰模型對新資料進行預測 |
DTrees::create() | 初始化決策樹類型變量 |
RTrees::create() | RTrees 類的初始化 |
SVM::create() | 定義 PtrCSV 類型的變量 |
dnn::readNet() | 加載已有深度神經網絡模型 |
dnn::Net::setInput() | 向深度神經網絡中輸入新的資料 |
dnn::blobFromImages() | 轉換輸入到深度神經網絡模型中的圖像尺寸 |