[學習opencv]高斯、中值、均值、雙邊濾波


四種經典濾波算法,在opencv文檔中都能找到的,熟悉一下調用規范。

#include "cv.h"
#include "highgui.h"
#include <iostream>

using namespace std;
using namespace cv;

int main(int argc, char* argv[])
{
        Mat src = imread("misaka.jpg");
        Mat dst;

        //參數是按順序寫的

        //高斯濾波
        //src:輸入圖像
        //dst:輸出圖像
        //Size(5,5)模板大小,為奇數
        //x方向方差
        //Y方向方差
        GaussianBlur(src,dst,Size(5,5),0,0);
        imwrite("gauss.jpg",dst);
        
        //中值濾波
        //src:輸入圖像
        //dst::輸出圖像
        //模板寬度,為奇數
        medianBlur(src,dst,3);
        imwrite("med.jpg",dst);
        
        //均值濾波
        //src:輸入圖像
        //dst:輸出圖像
        //模板大小
        //Point(-1,-1):被平滑點位置,為負值取核中心
        blur(src,dst,Size(3,3),Point(-1,-1));
        imwrite("mean.jpg",dst);

        //雙邊濾波
        //src:輸入圖像
        //dst:輸入圖像
        //濾波模板半徑
        //顏色空間標准差
        //坐標空間標准差
        bilateralFilter(src,dst,5,10.0,2.0);//這里濾波沒什么效果,不明白
        imwrite("bil.jpg",dst);

        waitKey();

        return 0;
}

處理效果:

原圖:

高斯濾波:

中值濾波:

均值濾波:

雙邊濾波,大家看真的有效果嗎,我怎么調參數都是這幅圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM