Split an image into two sets

Hi, I need to split an image into two sets of pixels A and B, each randomly containing half of the pixels (using the rand function). Thanks in advance for any help.

回答 (1 件)

Matt J
Matt J 2019 年 10 月 27 日

2 投票

N=numel(yourImage);
indices=randperm(N,round(N/2));
A=yourImage(indices);
B=yourImage; B(indices)=[];

1 件のコメント

Simona Neacsu
Simona Neacsu 2019 年 10 月 30 日
Thanks! This helped a lot. This is how I finally did it:
randomind=randperm(numel(inital_image), numel(inital_image)/2);
imageA=image1;
imageA(randomind)=0;
imageB=imageA;
for i=1:size(imageA,1)
for j=1:size(imageA,2)
if (imageA(i,j)==0) imageA(i,j)=image1(i,j);
elseif (imageA(i,j)~=0) imageA(i,j)=0; end
end
end

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeImage Processing Toolbox についてさらに検索

製品

質問済み:

2019 年 10 月 27 日

コメント済み:

2019 年 10 月 30 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by