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)
    }
    }
  • 相关阅读:
    Pandas之groupby分组
    Pandas之isna,fillna
    Spark算子
    Spark算子
    常见排序算法
    Ubuntu18关机时出现 A stop job is running for ...导致关机很慢
    攻防世界-crypto-Decode_The_File(base64隐写)
    攻防世界-crypto-Decrypt-the-Message(Poem Codes-诗歌密码)
    ubuntu 安装比特币钱包
    netapp 常用命令
  • 原文地址:https://www.cnblogs.com/ckAng/p/10904390.html
Copyright © 2011-2022 走看看