使用javascript分析图像的对比度
Using javascript to analyse contrast of image
我想知道是否有可能从api调用分析图像,以找出图像是否具有高或低水平的对比度。我知道有个类似的。js可以找出两个图像之间的差异。所以我认为我想做的是可能的。
我该如何分析图像的对比度水平?如果在javascript中无法实现,那么在其他语言中有什么解决方案?
大多数解决方案都基于
-
图片的获取
-
创建内存画布
-
使用
drawImage
将图像绘制到画布上 使用
getImageData
恢复像素数据。你得到一个数组,其中每个像素都由四个数字(RGBA)序列定义任何算法在这些像素上的应用。确定对比度的算法有很多,每一个都有优点和缺点,你必须选择一个适合你需要的
第一步的例子(最后一步取决于你的需要):
var canvas = document.createElement('canvas');
canvas.width = myImage.width;
canvas.height = myImage.height;
var context = tempCanvas.getContext('2d');
context.drawImage(myImage, 0, 0);
var pixels = context.getImageData(0, 0, myImage.width, myImage.height).data;
Pixastic是一个JavaScript库,它允许您使用一点点JavaScript对图像执行各种操作,过滤器和花哨的效果。它使用HTML5 Canvas元素
加载图像后,
params.options.contrast
给出对比度的值。
更多信息和演示在这里
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- nodejs-expressjs上传图像并显示它们
- 使用JSP从服务器检索和显示图像
- 角度:在ng重复上切换图像
- 画廊图像未显示
- Phonegap-(安卓/iphone)多个图像的图像库出现问题
- Javascript排序的图像弹出窗口..可以't单独弹出
- 画布数据到图像
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 使图像在单击时展开到不大于浏览器
- Html页面上的多个Base64图像和平滑加载
- UIAutomation放大图像
- 使用javascript在Flash中加载外部图像
- 可以在这里为背景图像设置滤镜吗
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 使用 js 将背景图像设置为 HTML
- Javascript将图像src更改为淡入淡出
- 无法在本地计算机中将画布另存为图像
- 谷歌地球Api改变图像对比度
- 使用javascript分析图像的对比度