zoukankan      html  css  js  c++  java
  • 数字图像处理实验(10):PROJECT 05-01 [Multiple Uses],Noise Generators 标签: 图像处理MATLAB 2017-05-26 23:36

    实验要求:

    Objective:
    To know how to generate noise images with different probability density functions (distributions). The noise images are useful in simulation for image enhancement and image restoration.
    Main requirements:
    Ability of programming with C, C++, or Matlab.
    Instruction manual:
    This is a generic project, in the sense that the programs developed here are used in several of the projects that follow. See Fig. 5.2 for the shapes and parameters of the following noise probability density functions.
    (a) Find (or develop) a program to add Gaussian noise to an image. You must be able to specify the noise mean and variance.
    (b) Find (or develop) a program to add salt-and-pepper (impulse) noise to an image. You must be able to specify the probabilities of each of the two noise components.

    本实验比较简单,目的就只是往图片中添加各种噪声,比如高斯噪声或者椒盐噪声。还有一点要求就是要能够向程序指定概率等等的一些参数。

    给出原图像:
    这里写图片描述

    实验代码:

    % PROJECT 05-01 [Multiple Uses] Noise Generators
    close all;
    clc;
    clear all;
    
    % 原图像
    img =imread('Fig5.03.jpg');
    figure;
    subplot(1,3,1);
    imshow(img);
    title('original image');
    
    % 添加高斯噪声
    img_nse1 = imnoise(img, 'gaussian', 0.2, 0.01);
    subplot(1,3,2);
    imshow(img_nse1);
    title('Plus gaussian noise');
    
    disp('高斯噪声');
    disp(['mean: ', num2str(0.2), ' variance: ', num2str(0.01)]);
    
    % 添加泊松噪声
    % img_nse2 = imnoise(img, 'poisson');
    % figure;
    % imshow(img_nse2);
    % title('Plus poisson noise');
    
    % 添加椒盐噪声
    img_nse3 = imnoise(img, 'salt & pepper', 0.2);
    subplot(1,3,3);
    imshow(img_nse3);
    title('Plus salt & pepper noise');
    
    disp('椒盐噪声');
    disp(['probability: ', num2str(0.2)]);

    实验结果:
    这里写图片描述

    注释主要在代码中,实验现象也很明显,分别显示了添加高斯噪声和椒盐噪声的图像。

  • 相关阅读:
    Django——基于类的视图源码分析 三
    python——深刻理解Python中的元类(metaclass)
    Django——静态文件配置
    Django——如何使用Template以及如何向template传递变量
    Django—— 缓存框架
    Django——META内部类选项
    Django——20141014深入理解Django HttpRequest HttpResponse的类和实例
    Django——如何在Django模板中注入全局变量?——part2
    Mysql查找如何判断字段是否包含某个字符串
    Mysql分表和分区的区别
  • 原文地址:https://www.cnblogs.com/xuhongbin/p/7134160.html
Copyright © 2011-2022 走看看