本文目錄一覽:
- 1、如何用c語言生成一個正態分布的樣本
- 2、用C語言描述產生泊松雜訊,N(numda)?
- 3、如何用C語言對圖像加入高斯雜訊和椒鹽雜訊?
- 4、急!!!請問各位高手:如何用C語言編程產生高斯白雜訊?萬分感謝啊!
- 5、C語言如何有色雜訊
如何用c語言生成一個正態分布的樣本
不用加分,我做過,用來產生圖像的高斯雜訊,也就是你要的正態分布.
1.首先你的樣本應該是有一定範圍的吧,我假設它是從1-255
2.根據你的方差和期望,把樣本代進去,算出該樣本出現的概率
3.然後根據概率知識,你做一個累積概率
4.接著你用隨機數產生一個0-1之間的均勻分布
5.看這個數落在哪個累積概率區間
6.按你要的樣本數重複4-5
代碼這裡我給個matlab程序你參考一下,很好懂的
function [dest] = GeneGauss(expectation,deviation,width,height)
dest=zeros(width,height);
pz=zeros(256);
tempConst1=1/(sqrt(2*pi)*deviation);
tempConst2=2*deviation*deviation;
for i=1:256
pz(i)=tempConst1*exp(-(i-1-expectation)^2/tempConst2);
end
f=zeros(256);
f(1)=pz(1);
for i=2:256
f(i) = f(i-1)+pz(i);
end
for i=1:width
for j=1:height
n=rand;
for k=1:256
if(nf(k))
dest(i,j)=k-1;
break;
end
end
end
end
end
用C語言描述產生泊松雜訊,N(numda)?
泊松雜訊既不是加性雜訊,也不是乘性雜訊,而是一種信號依賴雜訊。對於一張圖像而言,每個像素點的值都滿足泊松分布,且每個像素點的泊松分布的均值是無噪圖像在該像素點對應的值。所以一個完美的泊松雜訊去除演算法應該是對泊松雜訊圖像每個像素點的值的一個估計,且該估計應該儘可能的接近無噪圖像。
如何用C語言對圖像加入高斯雜訊和椒鹽雜訊?
自己產生[x,y] 2維隨機數,用分布函數為權,取用點的個數就可以了。如考慮中心對稱,用極座標[r,sita] 也許更方便。
2維椒鹽雜訊,即產生[x,y,1] 和 [x,y,0], 1 是白點,0是黑點。
計算機的偽隨機數,就是白雜訊,均勻分布。
急!!!請問各位高手:如何用C語言編程產生高斯白雜訊?萬分感謝啊!
有程序和頭文件
(還有3處更正)
自己添加主程序和參數,調用 mrandom 即可。
C語言如何有色雜訊
雜訊是一個隨機過程,而隨機過程有其功率譜密度函數,功率譜密度函數的形狀則決定了雜訊的「顏色」。
顏色為「白色」的雜訊,即「白雜訊」,其功率譜密度函數在整個實數範圍內為一常數。
有色雜訊的功率譜密度函數則不為常數。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/297375.html