高斯噪聲模擬
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <opencv2/highgui.hpp>
#include "opencv2/imgproc.hpp"
#include <iostream>
#include <fstream>
#define PIXEL_MAX 255.f
float get_float_0_1()
{
return ((float)rand())/RAND_MAX;
}
void normal(float rou, float *z1, float *z2)
{
float r = get_float_0_1();
float miu = get_float_0_1();
float tmp = sqrtf((-2)*logf(r));
float tmp1 = cosf(M_PI * miu);
float tmp2 = sinf(M_PI * miu);
*z1 = rou * tmp1 * tmp;
*z2 = rou * tmp2 * tmp;
return;
}
void update_pixel(float z1, float *out)
{
float tmp = z1 + *out;
if(tmp < 0.f)
*out = 0.f;
else if (tmp > PIXEL_MAX)
*out = PIXEL_MAX;
else
*out = tmp;
}
int main(int argc,char *argv[] )
{
float rou = atof(argv[2]);
cv::Mat srcImg = cv::imread(argv[1], cv::IMREAD_GRAYSCALE);
cv::Mat fImg;
cv::Mat dstImg;
cv::imwrite("in.bmp", srcImg);
srcImg.convertTo(fImg, CV_32F);
for(int i = 0; i < fImg.rows; i++)
{
float *pRow = fImg.ptr<float>(i);
for(int j = 0; j < fImg.cols-1; j++)
{
float z1, z2;
normal(rou, &z1, &z2);
update_pixel(z1, pRow+j);
update_pixel(z2, pRow+j+1);
}
}
fImg.convertTo(dstImg, CV_8U);
cv::imwrite("out.bmp", dstImg);
return 0;
}
相關文章
- 隨機過程(高斯隨機過程、譜分析、白噪聲)隨機
- 模擬積體電路設計系列部落格——8.2.3 振盪器的相位噪聲
- 感測器噪聲
- 模擬積體電路設計系列部落格——8.3.2 PLL中的抖動與相位噪聲
- ros(2) 模擬slam定位和高斯渲染通訊ROSSLAM
- 影像噪聲學習記錄(1)
- Shader 中的隨機與噪聲隨機
- Book of Shaders 04 - 網格噪聲:Worley Noise
- 利用噪聲構建美妙的 CSS 圖形CSS
- 應用噪聲函式製作火焰特效函式特效
- Vivado使用技巧(16):SSN轉換噪聲分析
- 頻率域濾波去除週期性噪聲
- 視覺化學習 | 如何使用噪聲生成紋理視覺化
- 從DDPM到DDIM(四) 預測噪聲與後處理
- 時間序列平穩性、白噪聲、隨機遊走隨機
- 關於噪聲標籤的一點看法和見解
- 隨機不只是 Math.random —— 前端噪聲應用隨機random前端
- 05 -2 Scipy中 face()新增噪聲、濾波器的使用、
- “噪聲對比估計”雜談:曲徑通幽之妙
- Book of Shaders 03 - 學習隨機與噪聲生成演算法隨機演算法
- opencv-9-影像噪聲以及評估指標 PSNR 與SSIMOpenCV指標
- 解決android studio 模擬器取法啟動聲音的錯誤Android
- 華為雲會議AI智慧降噪3.0,可抑制200種噪聲!AI
- 基於FPGA的MSK調製解調系統verilog開發,包含testbench,同步模組,高斯通道模擬模組,誤位元速率統計模組FPGA
- 【翻譯】擬合與高斯分佈 [Curve fitting and the Gaussian distribution]
- 模擬
- 小波去噪演算法的簡易實現及其擴充套件(小波銳化、高斯拉普拉斯金字塔去噪及銳化)之二。演算法套件
- 小波去噪演算法的簡易實現及其擴充套件(小波銳化、高斯拉普拉斯金字塔去噪及銳化)之一。演算法套件
- 用深度卷積自編碼器在10分鐘內降低影像噪聲卷積
- 2024.11.20 NOIP模擬 - 模擬賽記錄
- 10.6 模擬賽(NOIP 模擬賽 #9)
- ICLR 2024 Spotlight | NoiseDiffusion: 矯正擴散模型噪聲,提高插值圖片質量ICLR模型
- 有限元模擬 有限體積模擬
- 解決:視訊中有噪聲(電流聲)怎麼辦的問題(簡單實用高效的視訊降噪方法)
- 模擬賽
- 模擬題
- ACP模擬
- git 模擬Git