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