高斯混合图像

我正在编写一个iPhone应用程序,需要帮助来确定如何拍摄图像并将其混合成单一颜色。我假设我需要做一个高斯混合,但不确定这是否正确或如果它是如何做到的。 你有任何建议,指向高斯混合代码片段的样本,或者我是否朝着错误的方向前进,从图像到混合彩色图像? 似乎我不能用现有的iPhone框架做到这一点,或者公共框架中是否有私有方法可以使这项工作更容易?     
已邀请:
因此,您想拍摄图像并“将其混合成单一颜色”。您是否想要获得图像的“平均颜色”? 如果是这样,使用高斯滤波器可能会使它过于复杂,因为您需要的输出只是一个RGB值。最简单的方法是计算每个颜色通道(红色,绿色和蓝色)的平均值:
int r,g,b;
r=g=b=0;

for (y=0 ; y<image_height ; y++)
    for (x=0 ; x<image_width ; x++)
    {
        r = r + image[y,x,0];
        g = g + image[y,x,1];
        b = b + image[y,x,2];
    }

num_pixels = image_height * image_width;
average_r = r / num_pixels;
average_g = g / num_pixels;
average_b = b / num_pixels;
高斯滤波器是中心加权滤波器,意味着滤波窗口中心的像素比其他像素的权重更大。如果你想模糊图像,那么这是合适的,但是对于混合整个图像,同样地加权所有像素,如上面的伪代码,同样有效。     

要回复问题请先登录注册