autojs-查看图片平均亮度

简介: 思路: 把图片转为hsv得到Mat中各个通道的均值,提取亮度通道的平均值

思路:

把图片转为hsv

得到Mat中各个通道的均值,

提取亮度通道的平均值

console.time("导入类");
runtime.images.initOpenCvIfNeeded();
importClass(org.opencv.core.MatOfByte);
importClass(org.opencv.core.Scalar);
importClass(org.opencv.core.Point);
importClass(org.opencv.core.CvType);
importClass(java.util.List);
importClass(java.util.ArrayList);
importClass(java.util.LinkedList);
importClass(org.opencv.imgproc.Imgproc);
importClass(org.opencv.imgcodecs.Imgcodecs);
importClass(org.opencv.core.Core);
importClass(org.opencv.core.Mat);
importClass(org.opencv.core.MatOfDMatch);
importClass(org.opencv.core.MatOfKeyPoint);
importClass(org.opencv.core.MatOfRect);
importClass(org.opencv.core.Size);
importClass(org.opencv.features2d.DescriptorExtractor);
importClass(org.opencv.features2d.DescriptorMatcher);
importClass(org.opencv.features2d.FeatureDetector);
importClass(org.opencv.features2d.Features2d);
importClass(org.opencv.core.MatOfPoint2f);
importClass(org.opencv.core.MatOfPoint);
importClass(org.opencv.android.Utils);
console.timeEnd("导入类");
// 第一种写法, 参数为文件路径
function getBrightnessHsv(imgPath) {
  let hsv = new Mat();
  let src = Imgcodecs.imread(imgPath);
  Imgproc.cvtColor(src, hsv, Imgproc.COLOR_RGB2HSV);
  let avg = Core.mean(hsv);
  hsv.release();
  src.release();
  let result = avg.val[2];
  log("the average brightness(HSV) is " + result);
}
getBrightnessHsv();
// 第二种写法, 参数为autojs的图片
function getBrightnessHsv(img) {
  let bitmap = img.getBitmap();
  let src = new Mat();
  Utils.bitmapToMat(bitmap, src);
  let hsv = new Mat();
  Imgproc.cvtColor(src, hsv, Imgproc.COLOR_RGB2HSV);
  let avg = Core.mean(hsv);
  hsv.release();
  src.release();
  bitmap.recycle();
  let result = avg.val[2];
  log("the average brightness(HSV) is " + result);
}
getBrightnessHsv();


声明

部分内容来自网络

本教程仅用于学习, 禁止用于其他用途

相关文章
|
7月前
|
编解码 JavaScript 算法
通过PHAsset获取的图片上传后变大和图像被旋转90度问题完美解决方案
通过PHAsset获取的图片上传后变大和图像被旋转90度问题完美解决方案
102 4
|
计算机视觉 C++ Python
Python相片图片编辑工具-翻转旋转亮度磨皮裁剪添加文字
这篇博客针对<<Python相片图片编辑工具-翻转旋转亮度磨皮裁剪添加文字>>编写代码,代码整洁,规则,易读。 学习与应用推荐首选。
113 0
|
算法 计算机视觉 iOS开发
iOS使用OpenCV之调整图片亮度和对比度(一)
iOS使用OpenCV之调整图片亮度和对比度(一)
iOS使用OpenCV之调整图片亮度和对比度(一)
|
编解码
音视频开发: ffmpeg保持原视频比例增加黑色背景(画黑边)
音视频开发: ffmpeg保持原视频比例增加黑色背景(画黑边)
991 0
音视频开发: ffmpeg保持原视频比例增加黑色背景(画黑边)
|
机器学习/深度学习 人工智能 JavaScript
一键生成人脸像素图,还能上传到动森!这个项目很好玩
云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 日本独立开发者 Sato 曾因阿斯伯格综合征辍学离职,后来自学 AI 开发 AI Gahaku 项目(AI 大师级画家),在日美引起轰动,10 天覆盖百万用户。
一键生成人脸像素图,还能上传到动森!这个项目很好玩
|
Python
Python3 使用pli优化图片大小,相机或手机拍图片根据exif旋转、纠正方向
首先安装 pip install pillow 如果报错,请根据报错的信息去搜索一下,一般都能得到解决,未找到请升级pip python -m pip install --upgrade pip 或者 pip install --upgrade pip 那么写个方法 from PIL import.
1112 0
|
Shell 数据安全/隐私保护
怎么将图片压缩到规定大小和规定尺寸之内
上个项目做了一个图片批量上传,要求压缩到规定大小和尺寸,并且加文字跟图片水印。花了好长时间才完成,在此记录一下以方便以后使用。 阿里云代金券1000元免费领取地址:https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=2a7uv47d 新老阿里云账户均可领取!可用于购买阿里云服务器ECS、云数据库RDS、虚拟主机、安骑士、DDoS高防IP等100多云计算产品。
2417 0