Chapter 05 数组操作
cv::calcCovarMatrix()
求矩阵集的协方差矩阵
cv::dct()
该函数根据flags参数执行离散余弦变换和逆变换。
cv::dft()
该函数根据flags参数执行离散傅里叶变换和逆变换。
cv::getConvertElem() 和 cv::getConvertScaleElem()
该函数返回一个函数指针 cv::convertData
和 cv::convertScaleData
cv::inRange()
判断输入数组是否在给定区间,区间也是数组,输出类型 cv::U8C1
对于多通道的输入,输出仍然是单通道
cv::LUT()
lookup table transform 查找表转换
cv::Mahalanobis()
马氏距离,数据的协方差距离。它是一种有效的计算两个未知样本集的相似度的方法。
r m a = ( x ⃗ − μ ⃗ ) T ∑ − 1 ( x ⃗ − μ ⃗ ) r_{ma} = \sqrt{(\vec x-\vec \mu)^T\sum{} ^{-1}(\vec x - \vec \mu)} rma=(x−μ)T∑−1(x−μ)
cv::minMaxIdx()
获取数组的最大和最小值,以及他们的下标。输入数组可以是单通道的 Mat
或者 SparseMat
。
cv::minMaxLoc()
获取数组的最大和最小值,以及他们的位置。输入数组可以是 Mat
或者 SparseMat
。
cv::mixChannels()
混合通道,cv::split() 、 cv::merge() 、 cv::cvtColor() 都调用了该函数。
cv::mulSpectrums()
对于两张频谱图中每个元素的乘法。与傅里叶变换相关。
cv::mulTransposed()
d s t = { s c a l e ∗ ( s r c − d e l t a ) T ( s r c − d e l t a ) a T a = t r u e s c a l e ∗ ( s r c − d e l t a ) ( s r c − d e l t a ) T a T a = f a l s e dst = \begin{cases} scale*(src - delta)^T(src-delta) & aTa = true \\ scale*(src - delta)(src-delta)^T & aTa = false \end{cases}