opencv的矩陣運算
阿新 • • 發佈:2019-01-24
OpenCV 2.4 Cheat Sheet (C++)系列——Simple Matrix Operations
1。矩陣的點運算
對應:加,減,點乘,點除,點絕對差,點位運算—與,點位運算—或,點位運算—異或,點最大,點最小,點比較。
Example. Alpha compositing function:
void alphaCompose(constMat& rgba1,constMat& rgba2,Mat& rgba dest) { Mat a1(rgba1.size(), rgba1.type()), ra1; Mat a2(rgba2.size(), rgba2
2。矩陣的統計運算
sum(), mean(), meanStdDev(), norm(), countNonZero(),minMaxLoc(),
對應:求和,求均值,求均方差,求範數,求非零元素個數,求最大最小元素及位置。
3。基本數學運算
exp(), log(), pow(), sqrt(), cartToPolar(),polarToCart()
對應:矩陣元素的指數,對數,乘方,開方,計算二維向量的長度和/或者角度,計算極座標形式的二維向量對應的直角座標.
4。代數運算和SVD
scaleAdd(), transpose(), gemm(), invert(), solve(),determinant(), trace(), eigen(), SVD,
對應:
計算一個數組縮放後與另一個數組的和(dst(I)=src1(I)*scale + src2(I)),矩陣的轉置 dst(i,j)=src(j,i) ,矩陣乘法 dst = alpha*op(src1)*op(src2) + beta*op(src3)這裡 op(X) 是 X 或者 XT, 查詢矩陣的逆矩陣或偽逆矩陣,求解線性系統或者最小二乘法問題,返回浮點方陣的行列式,返回矩陣的跡,計算對稱矩陣的特徵值和特徵向量,對實數浮點矩陣進行奇異值分解。
5。離散傅立葉變換和離散餘弦變換
dft(), idft(), dct(), idct(),
對應:離散傅立葉變換,離散傅立葉反變換,離散餘弦變換,離散餘弦反變換。
For some operations a more convenient algebraic notation can be used, for example: Mat delta = (J.t()*J + lambda*Mat::eye(J.cols, J.cols, J.type())).inv(CV SVD)*(J.t()*err); implements the core of Levenberg-Marquardt optimization algorithm.