好吧,這就像第5次,我不得不問這個問題,仍然沒有人能夠給我一個答案或解決方案。但在這裏,我們又來了......爲什麼不會隨機化(MATLAB)?
我想運行一個非常簡單的小MATLAB程序。它所做的只是隨機顯示目錄中的圖像。這裏是我的代碼:
files = dir(fullfile(matlabroot,'toolbox','semjudge',bpic,'*.png'));
nFiles = numel(files);
combos = nchoosek(1:nFiles, 2);
index = combos(randperm(size(combos, 1)), :);
picture1 = files(index(nRep,1)).name;
picture2 = files(index(nRep,2)).name;
image1 = fullfile(matlabroot,'toolbox','semjudge',bpic,picture1);
image2 = fullfile(matlabroot,'toolbox','semjudge',bpic,picture2);
subplot(1,2,1); imshow(image1);
subplot(1,2,2); imshow(image2);
我已經嘗試了幾次不同的迭代,包括用「randsample」替換「nchoosek」。
但它不工作!每次運行程序時,腳本都會以相同的順序運行相同的圖像文件。它爲什麼這樣做?這就像是隨機的圖像文件,我第一次運行它,但現在它只能運行在它們的順序,而不是每次腳本運行時隨機他們。
有人可以幫我這個嗎?
看看這裏:http://www.mathworks.co.uk/support/solutions/en/data/1-18WH6/index.html?product=CO&solution=1-18WH6 – BeRecursive
我不能相信你之前已經問過這個問題5次了,沒有人告訴你這個簡單的事實:matlab每次啓動時都使用相同的默認隨機種子。所以我回顧了過去的問題,而且你沒有多次問過這個問題。 – 2012-05-04 13:54:34
@woodchips:我問這個問題多次,沒有人告訴我。謝謝。 ypnos:我週末不在這個城市,沒有電腦來檢查這個。 –