我想比较具有填充颜色的组件是否相等 我执行以下算法,我对 rgb 进行如下平均
double avg1 =(comp[0].Red+comp[0].Blue+comp[0].Green)/3;
double avg2 =(comp[1].Red+comp[1].Blue+comp[1].Green)/3;
然后比较如下
double ratio = avg1/avg2 ;
if(ratio > 0.8 && ratio < 1.2){} //then they are supposed to be equal
但这种方式根本不准确
经过搜索,我发现最好的方法是将图像转换为 HSL 空间并进行比较 但我不知道如何比较 2 种颜色?!! here
换句话说,将图像转换为 HSL 空间后我能做什么?!
请帮忙!!
修改问题以获得更多说明 我的意思是组件(点序列)所以在平均步骤中实际上我重新访问所有点计算每个像素的 rgb 平均值的总和,然后对点的总数进行平均
最佳答案
转换为 HSL 并使用 H(色调)的差异对颜色进行分组。
关于image-processing - 比较两个组件及其颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6687471/