Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结
Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结
1.1. 原理,主要使用像素模糊后的差别会变小
通过计算横向前后俩点像素的差异。。然后累加即可。。
1.2. 具体流程
图片灰度化,这样可以只保留hsv分量了。。。然后读取v分量,就是明亮度了。。
Hs色相和饱和度全部去除了。。 比较v分量的差异即可。。
1.3. 提升性能 可以使用采样法即可。。
1.4. 实现代码
package com.attilax.img;
import java.awt.Color;
import java.awt.image.BufferedImage;
import com.attilax.io.filex;
import com.attilax.json.AtiJson;
import com.jhlabs.image.GrayscaleFilter;
public class DefinTest {
/**
* gray hsv 0,0,218 HSL 表示 hue(色相)、saturation(饱和度)、lightness(亮度),
* HSV表示 hue、saturation、value(色调) 而 HSB 表示 hue、saturation、brightness(明度)。
*
* @param args
*/
public static void main(String[] args) {
String i = "C:\\00clr\\1_gray.jpg";
long dfns = getDefinetionsSum(i);
String blu5 = "C:\\00clr\\2_gray.jpg";
long dfns_blu5 = getDefinetionsSum(blu5);
String blu9 = "C:\\00clr\\blur9_gray.jpg";
long dfns_blu9 = getDefinetionsSum(blu9);
System.out.println("bl0:" + dfns + ",bl5:" + dfns_blu5 + ",bl9:"
+ dfns_blu9);
}
private static long getDefinetionsSum(String i) {
BufferedImage src = imgx.toImg(i);
int sum = 0;
int wid = src.getWidth();
int h = src.getHeight();
for (int w = 0; w < wid; w++)
for (int y = 0; y < h; y++) {
int v = (int) imgx.getHsv(src, w, y).v;
try {
if (y + 1 > (h-1))
continue;
int clr_next = (int) imgx.getHsv(src, w, y + 1).v;
int tsa = Math.abs(v - clr_next);
sum = sum + tsa;
} catch (Exception e) {
System.out.println(e.getMessage()+" w-h:"+w+"-"+y);
}
}
return sum;
}
bl0:2083037,bl5:730898,bl9:600365
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 )
汉字名:艾提拉(艾龙), EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
Atiend
Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结的更多相关文章
- Atitit 图像清晰度 模糊度 检测 识别 评价算法 原理
Atitit 图像清晰度 模糊度 检测 识别 评价算法 原理 1.1. 图像边缘一般都是通过对图像进行梯度运算来实现的1 1.2. Remark: 1 1.3. 1.失焦检测. 衡量画面模糊的主要方 ...
- OpenCV人脸识别LBPH算法源码分析
1 背景及理论基础 人脸识别是指将一个需要识别的人脸和人脸库中的某个人脸对应起来(类似于指纹识别),目的是完成识别功能,该术语需要和人脸检测进行区分,人脸检测是在一张图片中把人脸定位出来,完成的是搜寻 ...
- OpenCV人脸识别Eigen算法源码分析
1 理论基础 学习Eigen人脸识别算法需要了解一下它用到的几个理论基础,现总结如下: 1.1 协方差矩阵 首先需要了解一下公式: 共公式可以看出:均值描述的是样本集合的平均值,而标准差描述的则是样本 ...
- :OpenCV人脸识别Fisherface算法源码分析
https://blog.csdn.net/loveliuzz/article/details/73875904
- mahout算法源码分析之Collaborative Filtering with ALS-WR (四)评价和推荐
Mahout版本:0.7,hadoop版本:1.0.4,jdk:1.7.0_25 64bit. 首先来总结一下 mahout算法源码分析之Collaborative Filtering with AL ...
- mahout算法源码分析之Collaborative Filtering with ALS-WR拓展篇
Mahout版本:0.7,hadoop版本:1.0.4,jdk:1.7.0_25 64bit. 额,好吧,心头的一块石头总算是放下了.关于Collaborative Filtering with AL ...
- mahout算法源码分析之Collaborative Filtering with ALS-WR 并行思路
Mahout版本:0.7,hadoop版本:1.0.4,jdk:1.7.0_25 64bit. mahout算法源码分析之Collaborative Filtering with ALS-WR 这个算 ...
- diff.js 列表对比算法 源码分析
diff.js列表对比算法 源码分析 npm上的代码可以查看 (https://www.npmjs.com/package/list-diff2) 源码如下: /** * * @param {Arra ...
- [Spark内核] 第34课:Stage划分和Task最佳位置算法源码彻底解密
本課主題 Job Stage 划分算法解密 Task 最佳位置算法實現解密 引言 作业调度的划分算法以及 Task 的最佳位置的算法,因为 Stage 的划分是DAGScheduler 工作的核心,这 ...
随机推荐
- Oracle学习指南
Oracle学习指南 你走的那天,我决定不落泪,迎着风撑着眼帘用力不眨眼 创建数据库.创建用户.创建表空间.创建表.插入数据..... 1.用系统用户登录,任选系统用户 代码: >>sql ...
- centos下postgresql的安装与配置[转]
本文摘自:http://blog.chinaunix.net/uid-24846094-id-78490.html 一.安装(以root身份进行) 1.检出最新的postgresql的yum配置从ht ...
- [Python] Removing a non-empty folder
Removing a non-empty folder You will get an ‘access is denied’ error when you attempt to use os.remo ...
- PureCode--iOS--自定义UITableViewCell(含疑问)
纯代码编写的简单自定义UITableViewCell: 1.像处理普通视图一样处理Cell: clsTableViewCell.h: #import <UIKit/UIKit.h> @in ...
- html入门问题_2016-10-29
在mac机器上,用Safari打开html文件 1. 如果html里有中文,则在<head><meta http-equiv="Content-Type" con ...
- VC 单文档视图分割
http://blog.csdn.net/smartwhitehorse/article/details/6707183 主要使用类:CSplitterWnd 问题:分割线的固定,需要重写CSplit ...
- ARCgis已知线裁剪已知面
经常遇到需要在ArcGIS中,根据已知线图层(要素)切分已知面图层(要素).经过研究,利用topology拓扑菜单中的construct features可以实现.具体如下 现有用线图层A.面图层B, ...
- Linux 常用工具小结:(5) lftp工具使用
Linux 常用工具小结:(1) lftp工具使用. 这里会按照一些比较常用的功能列出,并举一个具体的例子逐一解释功能. 通常使用ftp过程是登陆ftp,浏览ftp内容,下载ftp文件,或者上传ftp ...
- Mac OS环境下配置Myeclipse2015的经验
反复测试装了多次,现在把成功安装的方法陈列如下: 1. 相关的资源: (1)下载 myeclipse-2015-stable-2.0-offline-installer-macosx.dmg 链接:h ...
- install openvpn and openvpn manager in ubuntu
sudo apt-get install openvpn sudo apt-get install network-manager-openvpn