2017-04-25 13 views
0

私は画像を持っており、それを2組の画素に分割したいと考えています。 これらはランダムにピクセルの半分を含む必要があります。ランダムに画像を分割する、Matlab

誰でも手助けできますか? MATLAB

答えて

3

では全くの初心者は、ピクセル数を取得します:

npix=length(image); % or npix=prod(size(image)); 

ランダムrandomn順

set1=image(randpix(1:end/2)); 
set2=image(randpix(end/2+1:end)); 

の半分を使ってセットします

randpix=randperm(npix); 

それらを注文しますNOTE:これはgrで動作しますayscaleイメージのみですが、考え方を理解するとかなり簡単にRGBに変更できます

+0

エラー "randpermを使用しているエラー サイズ入力はスカラーでなければなりません。それについてのアイデアを持っていますか? – noclue123

+0

@ noclue123申し訳ありません私はそれを実行せずにコードを書き留める。あなたがドキュメントを読むなら、それは問題を解決します。私の編集を参照してください –

+0

素晴らしい、それは動作します!理解のために:1. npixですべてのピクセル位置を保存しますか? 2. randpixはランダムに順序付けられたピクセル位置ですか? 3. "randperm"というだけでなく、 "rand"関数がなぜですか? – noclue123

関連する問題