什么叫图像的高斯噪声?并附添加高斯噪声的OpenCV代码和MATLAB代码

图像的高斯噪声(Gaussian noise)是一种常见的图像噪声类型,其特征在于噪声的概率分布服从高斯(正态)分布。高斯噪声通常出现在传感器或电子传输过程中,是由多个小的、独立的扰动叠加而成。其数学表示通常为:

在这里插入图片描述
这里,μ是均值,通常取 0(即噪声的平均值为零,不偏离原图像的亮度值),
在这里插入图片描述是方差,表示噪声的强度。

高斯噪声的具体特点和影响包括:

  1. 均值和方差:噪声值围绕均值对称分布,方差决定了噪声的强度。方差越大,图像受干扰的程度越高。
  2. 全局影响:高斯噪声影响整个图像,每个像素点都可能受到影响,且噪声的值与像素值无关。
  3. 可叠加性:由于高斯噪声的独立性,可以简单地通过叠加多次生成的高斯噪声来模拟更复杂的噪声模型。

生成图像高斯噪声的方法通常包括在图像的每个像素值上添加随机采样的高斯噪声值。这样可以模拟出因成像设备或传输过程中的随机误差而导致的噪声。

例如,在灰度图像中,如果一个像素的原始值为I,而噪声值为N,则添加噪声后的像素值为:

在这里插入图片描述

其中,N 服从在这里插入图片描述 的高斯分布。总的来说,高斯噪声是一种重要的噪声模型,用于研究和处理图像中的随机干扰,许多图像处理和分析方法都针对这种噪声进行了优化和处理。

利用OpenCV实现添加高斯噪声的C++代码:

#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;
using namespace std;

// Function to add Gaussian noise
void addGaussianNoise(const Mat &src, Mat &dst, double mean, double stddev) {
    Mat noise(src.size(), src.type());
    randn(noise, mean, stddev);  // generate Gaussian noise
    dst = src + noise;
}

int main() {
    // Load the image
    Mat image = imread("path_to_your_image.jpg", IMREAD_GRAYSCALE);
    if (image.empty()) {
        cout << "Could not open or find the image" << endl;
        return -1;
    }

    // Add Gaussian noise
    Mat noisyImage;
    addGaussianNoise(image, noisyImage, 0, 25);  // mean = 0, stddev = 25

    // Display the original and noisy images
    imshow("Original Image", image);
    imshow("Noisy Image", noisyImage);

    // Wait for a key press indefinitely
    waitKey(0);

    return 0;
}

利用OpenCV实现添加高斯噪声的Pyhton代码、利用MATLAB实现添加高斯噪声的代码见下面这个页面:
https://www.hhai.cc/thread-243-1-1.html

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-18 16:14:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-18 16:14:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-06-18 16:14:01       87 阅读
  4. Python语言-面向对象

    2024-06-18 16:14:01       96 阅读

热门阅读

  1. 浅谈AI技术在不同经济体系的应用

    2024-06-18 16:14:01       37 阅读
  2. 力扣668.乘法表中第k小的数

    2024-06-18 16:14:01       33 阅读
  3. Html_Css问答集(7)

    2024-06-18 16:14:01       33 阅读
  4. 医疗图像中的图像语义理解

    2024-06-18 16:14:01       35 阅读
  5. Docker 仓库管理

    2024-06-18 16:14:01       30 阅读
  6. HTML|02HTML标签

    2024-06-18 16:14:01       32 阅读
  7. 通用大模型VS垂直大模型对比

    2024-06-18 16:14:01       30 阅读
  8. 206. 反转链表

    2024-06-18 16:14:01       35 阅读
  9. 编程旋转代码怎么编程:深入探索与实用指南

    2024-06-18 16:14:01       34 阅读
  10. 43.139.152.26 P2315 分数计算

    2024-06-18 16:14:01       31 阅读