【发布时间】:2010-09-29 18:45:13
【问题描述】:
我正在为 Silverlight 4.0 构建一个图像编辑器,需要一些洞察力,或者可能需要一些代码或库的 sn-p 来实现对比度/亮度管理。
如果有人能分享它是如何实现的,我将不胜感激。
谢谢!
【问题讨论】:
标签: image silverlight-4.0 brightness contrast
我正在为 Silverlight 4.0 构建一个图像编辑器,需要一些洞察力,或者可能需要一些代码或库的 sn-p 来实现对比度/亮度管理。
如果有人能分享它是如何实现的,我将不胜感激。
谢谢!
【问题讨论】:
标签: image silverlight-4.0 brightness contrast
对比度是指像素亮度值在可能值的总范围之外的“宽度”程度。
亮度是该条带相对于可能的最低水平的“偏移量”。
要增加对比度,请从所有像素值中减去(最小当前值 - 最小可能值)以将条带返回 0。然后将所有值乘以(最大可能值 / 存在最大值)以将“条带”缩放为所有可能值的范围。
要调整亮度,请在每个像素中加上或减去一个绝对值。
您可能希望在 HSL 或 HSV 颜色空间中使用亮度或值通道来执行此操作。
我在这里找到了一些代码。 http://www.dfanning.com/ip_tips/contrast.html
【讨论】:
这是一个很棒的 article on changing brightness 在运行时。它本质上涉及将画笔颜色转换为 HSB,应用新的“亮度”级别,然后再转换回新的画笔颜色。
至于对比度......我想你可以做同样的基本技巧,但这次检查每种颜色的 RGB 值;如果一种颜色恰好支配其他颜色,则增加其颜色值并减少其他颜色值某个因素。你的红色变得更红,你的绿色变得更绿,你的蓝色变得更蓝。这个因素需要调整,但它可能会起作用。
【讨论】: