我正在尝试通过转换像素值并使用此等式 X(new) = 0.5 * X(old)^2 来实现调光方法来调暗图像。我做了一些谷歌搜索,但未能成功。这是我的代码:import mathfrom PIL import Imageimport numpy as npfrom skimage import color, ioimport matplotlib.pyplot as pltdef load(image_path): out = plt.imread(image_path) out = out.astype(np.float64) / 255 return outdef dim_image(image): out = image.point(lambda x: x*0.5) return outdef display(img): # Show image plt.figure(figsize = (5,5)) plt.imshow(img) plt.axis('off') plt.show()image1 = load(image1_path)image2 = load(image2_path)display(image1)display(image2)new_image = dim_image(image1)display(new_image)
1 回答
有只小跳蛙
TA贡献1824条经验 获得超8个赞
您正在尝试.point在不存在的 numpy 数组上使用。我假设您打算将所有颜色值减少 50% 以使图像变暗,在这种情况下您应该使用np.dot(docs):
def dim_image(image):
out = np.dot(image, 0.5)
return out
添加回答
举报
0/150
提交
取消
