小编Cap*_*lfz的帖子

如何计算两个图像之间的 Delta E

我目前正在尝试使用 OpenCV 确定我们的输出图像与使用 Python 绘制的莫奈画之间的色差。

通过我的研究,我发现 Delta E 是确定色差的最佳选择。我尝试使用提取两个图像的 BGR 通道,然后采用用于计算每个颜色通道差异的平均“蓝色”、“绿色”和“红色”颜色。

output_chans = cv2.split(image)
monet_chans = cv2.split(best_painting)
colors = ("Blue", "Green", "Red")

for (output_chan, monet_chan, color) in zip(output_chans, monet_chans, colors):
    output_mean = np.mean(output_chan)
    monet_mean = np.mean(monet_chan)

    color1_rgb = None
    color2_rgb = None

    if color == "Blue":
            color1_rgb = sRGBColor(0.0, 0.0, output_mean)
            color2_rgb = sRGBColor(0.0, 0.0, monet_mean)
    elif color == "Green":
            color1_rgb = sRGBColor(0.0, output_mean, 0.0);
            color2_rgb = sRGBColor(0.0, monet_mean, 0.0);
    elif color == "Red":
            color1_rgb = sRGBColor(output_mean, 0.0, 0.0);
            color2_rgb …
Run Code Online (Sandbox Code Playgroud)

python opencv image-processing histogram

5
推荐指数
1
解决办法
3349
查看次数

标签 统计

histogram ×1

image-processing ×1

opencv ×1

python ×1