0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

MATLAB對數(shù)字圖像處理有各種函數(shù)支持

電子工程師 ? 來源:未知 ? 作者:李倩 ? 2018-08-24 10:27 ? 次閱讀

在圖像采集和生成中會不可避免的引入噪聲,圖像噪聲是指存在于圖像數(shù)據(jù)中的不必要的或多余的干擾信息,這對我們對圖像信息的提取造成干擾,所以要進行去噪聲處理,常見的去除噪聲的方法有均值濾波、中值濾波、高斯濾波等,這一篇要實現(xiàn)的是均值濾波。

均值濾波的方法是將圖像數(shù)據(jù)生成3x3的矩陣或是5x5等其他模板,然后對這個矩陣模板進行處理。在圖像上對目標像素給一個模板,該模板包括了其周圍的臨近像素(以目標象素為中心的周圍 8 個像素,構成一個濾波模板,即去掉目標像素本身),再用模板中的全體像素的平均值來代替原來像素值。說白了就是對這九個數(shù)求個平均值代替中間的那個數(shù)。在FPGA中我們?yōu)榱撕啽氵\算只將目標像素周圍八個點求和然后除以8,取代目標像素點。

MATLAB對數(shù)字圖像處理有各種函數(shù)支持,各種濾波和邊緣檢測都可以之間用幾行函數(shù)實現(xiàn),但是博主本著學習算法的基本原理,所以不用函數(shù)自己根據(jù)濾波原理寫代碼。本設計是在上一篇RGB轉(zhuǎn)Gray后的灰度圖進行濾波處理。

添加噪聲污染函數(shù)

g = imnoise(I,type,parameters)

g=imnoise(f,'salt & pepper',d)用椒鹽噪聲污染圖像f,其中d是噪聲密度(即包括噪聲值的圖像區(qū)域的百分比)。因此,大約有d*numel(f)個像素受到影響。默認的噪聲密度為0.05。

本設計只用到了對椒鹽噪聲的處理,所以僅記錄這一種噪聲的添加。

均值濾波代碼

1 %Mean Filter 2 clc; 3 clear all; 4 close all; 5 6 RGB_data = imread('lena.jpg'); 7 8 R_data = RGB_data(:,:,1); 9 G_data = RGB_data(:,:,2);10 B_data = RGB_data(:,:,3)11 12 %imshow(RGB_data);13 14 [ROW,COL, DIM] = size(RGB_data); 15 16 Y_data = zeros(ROW,COL);17 Cb_data = zeros(ROW,COL);18 Cr_data = zeros(ROW,COL);19 Gray_data = RGB_data;20 21 for r = 1:ROW 22 for c = 1:COL23 Y_data(r, c) = 0.299*R_data(r, c) + 0.587*G_data(r, c) + 0.114*B_data(r, c);24 Cb_data(r, c) = -0.172*R_data(r, c) - 0.339*G_data(r, c) + 0.511*B_data(r, c) + 128;25 Cr_data(r, c) = 0.511*R_data(r, c) - 0.428*G_data(r, c) - 0.083*B_data(r, c) + 128;26 end27 end 28 29 Gray_data(:,:,1)=Y_data;30 Gray_data(:,:,2)=Y_data;31 Gray_data(:,:,3)=Y_data;32 33 figure;34 imshow(Gray_data);35 36 %Gray Mean Filter37 38 Gray_data = im2double(Gray_data);39 imgn = imnoise(Gray_data,'salt & pepper',0.05); 40 41 %imgn = Gray_data;42 43 figure;44 imshow(imgn);45 46 for r = 2:1:ROW-147 for c = 2:1:COL-148 Mean_Img(r,c) = (imgn(r-1, c-1) + imgn(r-1, c) + imgn(r-1, c+1) + imgn(r, c-1) + imgn(r, c) + imgn(r, c+1) + imgn(r+1, c-1) + imgn(r+1, c) + imgn(r+1, c+1)) / 9;49 end50 end51 52 figure;53 imshow(Mean_Img);

處理前后圖片結果比較

Gray lena

Mean_Filter lena

從處理前后的圖片中可以看到處理過后的圖片變模糊了一些,這是因為均值濾波就是將圖像做平滑處理,像素值高的像素會被拉低,像素值低像素會被拉高,趨向于一個平均值,所以圖像會變模糊一些。

加入椒鹽噪聲后的lena

加入椒鹽噪聲后Mean_Filter lena

椒鹽噪聲(salt & pepper noise)是數(shù)字圖像的一個常見噪聲,所謂椒鹽,椒就是黑,鹽就是白,椒鹽噪聲就是在圖像上隨機出現(xiàn)黑色白色的像素。椒鹽噪聲是一種因為信號脈沖強度引起的噪聲。這里可以看出均值濾波對雖然是對圖像進行平滑處理,但是對椒鹽噪聲基本無作用,要對椒鹽噪聲處理就要用中值濾波了,博主下一篇再接著做。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 圖像采集
    +關注

    關注

    2

    文章

    298

    瀏覽量

    41174
  • 函數(shù)
    +關注

    關注

    3

    文章

    4235

    瀏覽量

    61965
  • 均值濾波
    +關注

    關注

    0

    文章

    9

    瀏覽量

    7089

原文標題:基于MATLAB的均值濾波算法實現(xiàn)

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    matlab數(shù)字圖像處理基礎編程教程

    matlab數(shù)字圖像處理基礎編程教程
    發(fā)表于 06-22 23:00

    Matlab數(shù)字圖像處理[2]

    matlab數(shù)字圖像處理[2].pdf
    發(fā)表于 12-04 16:45

    數(shù)字圖像處理

    1、圖像的變換和壓縮,利用離散余弦變換(DCT)2、實現(xiàn)圖像的真彩色增強3、實現(xiàn)圖像的灰度變換,利用直方圖均衡化的方法4、使用常用的濾波器對數(shù)字圖像進行
    發(fā)表于 04-11 23:33

    岡薩雷斯數(shù)字圖像處理MATLAB版.中文版

    岡薩雷斯數(shù)字圖像處理MATLAB版.中文版
    發(fā)表于 12-21 09:10

    岡薩雷斯數(shù)字圖像處理MATLAB版(.m代碼)

    岡薩雷斯數(shù)字圖像處理MATLAB版(.m代碼)
    發(fā)表于 12-21 09:21

    【下載】《數(shù)字圖像處理MATLAB實現(xiàn)(第2版)》

    `內(nèi)容簡介  《國外計算機科學經(jīng)典教材:數(shù)字圖像處理MATLAB實現(xiàn)(第2版)》是本介紹圖像處理的基礎理論以及
    發(fā)表于 04-17 17:30

    應用MATLAB語言處理數(shù)字信號與數(shù)字圖像

    應用MATLAB語言處理數(shù)字信號與數(shù)字圖像
    發(fā)表于 05-22 09:19

    MATLAB數(shù)字圖像處理中的應用

    介紹了如何利用MATLAB 及其圖像處理工具箱進行數(shù)字圖像處理,并通過一些例子來說明利用MATLAB
    發(fā)表于 07-08 08:25 ?121次下載

    基于MATLAB數(shù)字圖像二維濾波軟件設計

    基于MATLAB數(shù)字圖像二維濾波軟件設計 本設計采用Matlab程序,設計數(shù)字圖像二維濾波平臺,用戶可任意給定濾波參數(shù)及圖像。。。
    發(fā)表于 05-13 17:22 ?38次下載

    數(shù)字圖像處理試題集

    數(shù)字圖像處理試題集數(shù)字圖像處理試題集數(shù)字圖像處理試題集
    發(fā)表于 12-21 15:13 ?3次下載

    應用MATlAB語言處理數(shù)字信號與數(shù)字圖像

    應用MATlAB語言處理數(shù)字信號與數(shù)字圖像
    發(fā)表于 12-30 15:19 ?1次下載

    基于matlab數(shù)字圖像變換

    基于matlab數(shù)字圖像變換有代碼和注釋。
    發(fā)表于 06-17 14:35 ?5次下載

    數(shù)字圖像處理Matlab

    數(shù)字圖像處理是信息學科一個重要的類別,可以和電子技術結合發(fā)展。
    發(fā)表于 06-24 15:51 ?0次下載

    數(shù)字圖像處理平臺系統(tǒng)方案詳解

    各種需要進行數(shù)字圖像處理的設備和應用而設計的, 例如, 醫(yī)學上的CT, X-ray等圖像增強及處理;
    發(fā)表于 05-30 11:39 ?4597次閱讀
    <b class='flag-5'>數(shù)字圖像</b><b class='flag-5'>處理</b>平臺系統(tǒng)方案詳解

    matlab數(shù)字圖像處理的實現(xiàn)

    圖像增強是數(shù)字圖像的預處理,對圖像整體或局部特征能有效地改善。 我們討論了基于直方圖的均衡化和規(guī)定化處理
    發(fā)表于 02-06 11:08 ?25次下載