- 博客(8)
- 收藏
- 关注
原创 JavaScript图像处理(5) - 曲线操作(Curve Manipulation)
直方图均衡作为一个自动的方法虽然可以在大多数情况下获得不错的效果,但是很多时候也受限于其单一的功能而无法满足多样化的图像处理需求。尤其是在图像的艺术处理方面,直方图均衡往往并不能达到期望的效果——有时候我们需要增强图像中的高光或者是明亮的背景来突出主体,有时候又需要降低图像的整体对比度而提高某些区域的对比度来增强图像的视觉冲击力。在这些情况下,我们都需要能够直接操作图像的直方图,并且在一个不断尝试
2013-11-17 03:53:11 1862
原创 JavaScript图像处理(4) - 自适应直方图均衡(Adaptive Histogram Equalization)
直方图均衡虽然可以显著改善图像质量,但是它是一个全局修改的方法——图像的每一个像素值都用完全相同的变换函数来修改。这样做的弊端在于图像局部的细节很可能因为受到其他区域的属性的影响而丢失。例如在下图的高亮度区域,全局直方图均衡调整之后,由于亮度过高而呈现一片亮白,很难再看清楚海豹的细节纹理。原图直方图均衡后既然全局调整效果不太理想,一个直接的想法就是进行局部调整。将图
2013-11-16 06:00:26 4070 1
原创 JavaScript图像处理(3) - 直方图均衡(Histogram Equalization)
对图像调整亮度和对比度通常可以稍微改善图像质量,但是想要获得一个较好的效果往往需要反复尝试不同的参数组合。一个自动的调整图像亮度对比度的方法可以省下不少麻烦。直方图均衡就是这样一个算法。该算法通过统计图像中像素亮度值的分布,自动地估算出一个最优的变换——变换之后像素的亮度值“均匀”地分布在0到255之间,最大化地利用了所有有效的像素值。直方图均衡的原理很简单,就是先统计图像像素亮度值I
2013-11-16 05:02:16 2851
原创 JavaScript图像处理(2) - 亮度对比度调整(Brightness/Contrast)
基本的图像处理操作之一是颜色操作,也就是根据一定的规则修改图像中像素的值。例如说改变图像的亮度、对比度,进行色彩替换,或者是对图像进行曲线操作,复杂一点的还有色彩空间矢量化等。修改图像的亮度和对比度实际上是对像素值进行线性变换:r = r * alpha + betag = g * alpha + betab = b * alpha + beta亮度变化比较简单,就是在上面
2013-11-15 03:39:08 8845
原创 JavaScript图像处理(1) - 获取图像(Image Acquisition)
利用JavaScript进行图像处理的第一步是获取图像。这可以通过读取html文档里面的图像来完成。首先,我们需要一个图像类来存储图像数据。这个图像类支持最基本的几个图像操作:新建图像,设置、取出像素点以及双线性插值采样。function RGBAImage( w, h, data ){ this.type = 'RGBAImage'; this.w = w; this.
2013-11-15 02:16:49 3622
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人