zoukankan      html  css  js  c++  java
  • 中值滤波

     

     

    中值滤波

    中值滤波也是消除图像噪声最常见的手段之一,特别是消除椒盐噪声,中值滤波的效果要比均值滤波更好。中值滤波是跟均值滤波唯一不同是,不是用均值来替换中心每个像素,而是将周围像素和中心像素排序以后,取中值,一个3X3大小的中值滤波如下:

      

    //中值滤波
    var medianCounter;

    function median(imgData, size) {
    if (!medianCounter) medianCounter = 0;
    pixelData = tmppixelData = imgData.data,
    size = size || 3;
    for (var i = 0; i < canvas.height; i++) {
    for (var j = 0; j < canvas.width; j++) {
    var tempR = [],
    tempG = [],
    tempB = [];
    for (var dx = 0; dx < size; dx++) {
    for (var dy = 0; dy < size; dy++) {
    var x = i + dx;
    var y = j + dy;
    var p = x * canvas.width + y;
    tempR.push(tmppixelData[p * 4 + 0])
    tempG.push(tmppixelData[p * 4 + 1])
    tempB.push(tmppixelData[p * 4 + 2])
    }
    }
    tempR.sort();
    tempG.sort();
    tempB.sort();
    var index = ~~((size * size) / 2);
    var p = i * canvas.width + j;
    pixelData[p * 4 + 0] = tempR[index];
    pixelData[p * 4 + 1] = tempG[index];
    pixelData[p * 4 + 2] = tempB[index];
    }
    }
    imgData.data = pixelData;
    medianCounter++;
    //迭代次数
    if (medianCounter == 1) {
    return imgData;

    } else {
    return median(imgData, size)
    }
    }
  • 相关阅读:
    nginx限速 原理
    规则引擎 图形界面
    阿里巴巴 规则引擎
    martinfowler Data Guide big data bad things
    Nginx Request URI too large
    linux2.6.30.4内核移植(1)
    根文件系统
    Linux内核配置:定制配置选项
    Linux内核配置:Kconfig
    Linux内核配置:Makefile目标
  • 原文地址:https://www.cnblogs.com/ckAng/p/10904390.html
Copyright © 2011-2022 走看看