我需要從正常分佈的0到1920像素範圍內選擇一個像素,但我不知道如何在MatLab中執行此操作。我知道我可以使用normrnd()
來檢索給定mu
和sigma
的隨機值,但是如何將這個應用於我的情況?例如,從一系列正態分佈的數字中進行選擇
mu
可能在500像素和sigma
100像素。
我目前的做法是這樣的
function xpos = apply_normal_distribution(mu, sigma, min_xpos=1, max_xpos=1920)
% Applies normal distribution with median mu and standard deviation sigma
% xpos will always be: min <= xpos <= max
xpos = ceil(normrnd(mu, sigma));
if xpos > max_xpos
xpos = max_xpos;
elseif xpos < min_xpos
xpos = min_xpos;
endif
end
所以我只是用normrnd
和切斷如果該值是比我的界限更高或更低。不知道這有多好,但它有效。
你的代碼在哪裏?你有什麼嘗試? –
沒什麼,因爲我不知道如何開始。只嘗試了'normrnd()'函數,但無法弄清楚如何在這裏應用它。不幸的是,我的統計知識並不是最好的。 – herhuf
你可能不會在這裏得到很多幫助。通常情況下,問題包含特定項目,用戶代碼(努力)作爲問題的一部分。 –