函数cv::LUT对输入的src进行查找表变换。函数原型:
void cv::LUT(
cv::InputArray src,
cv::InputArray lut,
cv::OutputArray dst
);
dst[i] = lut(src[i])
cv::LUT()要求源矩阵src为8位索引值。lut矩阵保存查找表。该查找表矩阵应该有256个元素,并且可以具有单个通道,或者在多通道src矩阵的情况下,与源矩阵有相同数量的通道。
cv::LUT()函数使用src中的相应值作为索引,从查找表lut中找到对应数值填充到目标矩阵dst中。
如果src是8位有符号数,会自动偏移+128,使范围对查找表的索引来说有意义。如果查找表是多通道(并且索引也是多通道的),src中的值被用作lut的多维索引,结果矩阵dst江苏单通道的。如果lut是一维的,则结果矩阵将是多通道的,每个通道的相应索引和一维查找表分别计算。