zoukankan      html  css  js  c++  java
  • Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结

    Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结

     

    1.1. 原理,主要使用像素模糊后的差别会变小1

    1.2. 具体流程1

    1.3. 提升性能 可以使用采样法即可。。1

    1.4. 实现代码1

     

    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表示 huesaturationvalue(色调) HSB 表示 huesaturationbrightness(明度)。

     *

     * @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://blog.csdn.net/attilax

    Atiend

     

  • 相关阅读:
    WebView自适应屏幕
    shell脚本:遍历删除
    查看Mysql执行计划
    Spring 源码学习(八) AOP 使用和实现原理
    Java:控制反转(IoC)与依赖注入(DI)
    浏览器-开发者工具
    查看kafka消息消费情况
    shell脚本:遍历删除文本内路径上文件
    聚簇索引与非聚簇索引(也叫二级索引)
    有关MySQL
  • 原文地址:https://www.cnblogs.com/attilax/p/15198334.html
Copyright © 2011-2022 走看看