相关文章推荐
魁梧的伤疤  ·  【错误记录】Android 可执行权限报错 ...·  1 年前    · 
爱健身的木瓜  ·  【建议收藏】MySQL中的自增id超出上限的 ...·  1 年前    · 
呐喊的打火机  ·  PowerShell常用命令 - ...·  1 年前    · 
冷静的消炎药  ·  布局控件之 ...·  1 年前    · 
要出家的鞭炮  ·  一文速学-HiveSQL解析JSON数据详解 ...·  1 年前    · 
Code  ›  获取图像的亮度信息,从Imagemagic或Graphicmagic获取开发者社区
https://cloud.tencent.com/developer/ask/sof/149539
重情义的牛肉面
10 月前
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
提问

问 获取图像的亮度信息,从Imagemagic或Graphicmagic获取

Stack Overflow用户
提问于 2018-02-22 21:48:33
EN

有没有特定于 的函数 ,可以用来通过Graphicmagick或Imagemagick检索图像的亮度信息。我目前正在使用Node.js aws函数来执行其他操作,比如调整图像大小。

但是我找不到一个正确的方法来检索亮度信息(图像有多暗)。

任何帮助或指导都将是真正有帮助的。

我引用了以下URL。 Link 1 Link 2

1 486 0 票数 1
EN
node.js
imagemagick
aws-lambda

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-23 00:17:43

我能想到的最简单的方法是在 .identify 方法中使用 fx 表达式。

代码语言: javascript
复制
var gm = require('gm').subClass({ imageMagick: true });
var filename = 'rose:'
gm(filename).identify({format:'%[fx:lightness]'}, function(err, info){
   console.log('Lightness pixel value : ' + info);
   //=> "Lightness pixel value : 0.182353"
});

正如参考链接所建议的,将图像转换为灰度可能会产生更准确的结果。

代码语言: javascript
复制
var brightness = 0.0;
gm().in(filename).colorspace('GRAY').out('-format').out('%[fx:mean*100]').toBuffer('info', function(err, buffer){
    brightness = parseFloat(buffer.toString())
    console.log('Gray brightness : ' + brightness)
    //=> "Gray brightness : 39.4629"
 
推荐文章
魁梧的伤疤  ·  【错误记录】Android 可执行权限报错 ( Cannot run program “/data/user/0/cn.e/ffmpeg“: error=13,Permission denied )-阿里云开发者社区
1 年前
爱健身的木瓜  ·  【建议收藏】MySQL中的自增id超出上限的问题-腾讯云开发者社区-腾讯云
1 年前
呐喊的打火机  ·  PowerShell常用命令 - 很少更新了 - 简书
1 年前
冷静的消炎药  ·  布局控件之 ConstraintLayout_qq5d510d208e604的技术博客_51CTO博客
1 年前
要出家的鞭炮  ·  一文速学-HiveSQL解析JSON数据详解+代码实战-阿里云开发者社区
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号