当前位置: 首页 > news >正文

OpenCV给图像添加噪声

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

如果你已经有了一张干净的图像,并希望通过编程方式向其添加噪声,可以使用 OpenCV 来实现这一点。以下是一个简单的例子,展示如何在现有图像上添加高斯噪声:

#include <iostream>
#include <opencv2/opencv.hpp>using namespace cv;
using namespace std;// 函数:给图像添加高斯噪声
void addGaussianNoise( Mat& src, Mat& dst, double mean = 0.0, double stddev = 25.0 )
{RNG rng( getTickCount() );  // 在这里初始化RNG对象Mat noise( src.size(), src.type() );rng.fill( noise, RNG::NORMAL, mean, stddev );  // 创建高斯噪声add( src, noise, dst );                        // 将噪声添加到原始图像
}int main()
{// 加载一张干净的图像Mat src = imread( "/media/dingxin/data/study/OpenCV/sources/images/Lenna.png", IMREAD_GRAYSCALE );if ( src.empty() ){cout << "Could not open or find the image!" << endl;return -1;}Mat noisyImage;addGaussianNoise( src, noisyImage );imwrite( "noisy_image_1.jpg", noisyImage );  // 保存带噪声的图像imshow( "Original Image", src );imshow( "Noisy Image", noisyImage );waitKey( 0 );return 0;
}

运行结果

在这里插入图片描述

http://www.lryc.cn/news/542200.html

相关文章:

  • 湖北中医药大学谱度众合(武汉)生命科技有限公司研究生工作站揭牌
  • 欢乐力扣:快乐数
  • 【聊天室后端服务器开发】功能设计-框架与微服务
  • 国标28181协议在智联视频超融合平台中的接入方法
  • 让网页“浪“起来:打造会呼吸的波浪背景
  • linux-多进程基础(1) 程序、进程、多道程序、并发与并行、进程相关命令,fork
  • 美颜相机1.0
  • Docker内存芭蕾:优雅调整容器内存的极限艺术
  • gitlab初次登录为什么登不上去
  • 单链表相关操作(基于C语言)
  • SPRING10_SPRING的生命周期流程图
  • 从零到一学习c++(基础篇--筑基期十一-类)
  • Java String 类
  • P8665 [蓝桥杯 2018 省 A] 航班时间
  • Vue3项目与pnpm使用教程
  • C++初阶——简单实现list
  • C/C++后端开发面经
  • linux 编辑器
  • 【事件驱动框架OSAL】二.消息的管理机制
  • 《论多源数据集成及应用》审题技巧 - 系统架构设计师
  • 【企业微信开发工具,获取位置】
  • HTML之JavaScript DOM编程获取元素的方式
  • 如何安装vm和centos
  • docker 安装redis 7.4.2并挂载配置文件以及设置密码
  • 计算机毕业设计SpringBoot+Vue.js在线教育系统(源码+文档+PPT+讲解)
  • Linux-C-函数栈-SP寄存器
  • vi的基本使用
  • clickhouse--表引擎的使用
  • LeetCode刷题零碎知识点整理
  • GLTFLoader.js和OrbitControls.js两个 JavaScript 文件都是 Three.js 生态系统中的重要组成部分