OpenCV_tutorials资料学习笔记
颜色缩减方法:将现有颜色空间值除以某个输入值,获得较少的颜色数。例如,颜色值0到9可取为新值0,10到19可取为10等等。
颜色空间缩减算法为:
1)遍历图像矩阵的每一个像素
2)对像素应用上述公式
ps:乘法和除法运算特别费时,尽可能用低代价的加、减、赋值等运算替换。对于较大的图像,有效的方法是预先计算所有可能的值,然后需要这些值的时候,利用查找表直接赋值即可。查找表是一维或多维数组,存储了不同输入值所对应的输出值,其优势在于只需读取、无需计算。
颜色空间缩减中的查找表计算:
uchar table[256]; //存储查找表
for (int i = 0; i < 256; ++i)
table[i] = (uchar)(divideWith * (i/divideWith)); //设置查找表,颜色空间缩减公式计算得到
计时:
OpenCV提供了两个简便的可用于计时的函数 getTickCount() 和 getTickFrequency()。第一个函数返回你的CPU自某个事件(如启动电脑)以来走过的时钟周期数,第二个函数返回你的CPU一秒钟所走的时钟周期数。
以秒为单位对某运算计时:
double t = (double)getTickCount();
// 做点什么 ...
t = ((double)getTickCount() - t)/getTickFrequency();
cout << "Times passed in seconds: " << t << endl;