我有彩色图像。图像由具有阴影的对象组成。我删除了阴影,但阴影部分的颜色与背景颜色不相似。现在如何使用MATLAB编码匹配颜色?
答案 0 :(得分:0)
您可以更改与您的图像对应的matlab矩阵(此处称为IMG)。例如,假设您将阴影的像素更改为-20。 比你可以得到他们的索引
indexes = (IMG == -20)
要将这些值更改为背景颜色,假设等于100,则设置为
IMG(indexes) = 100
由于您正在使用彩色图像,因此您需要对与图像对应的所有三种颜色矩阵执行此操作。在这种情况下,每个图层都有一个背景颜色,而不是重复过程
indexes1 = (IMG(:, :, 1) == shadow_color_layer_1)
indexes2 = (IMG(:, :, 2) == shadow_color_layer_2)
indexes3 = (IMG(:, :, 3) == shadow_color_layer_3)
IMG(indexes,1) = background_color_layer_1
IMG(indexes,2) = background_color_layer_2
IMG(indexes,3) = background_color_layer_3