Split an image into two sets

2 ビュー (過去 30 日間)
Simona Neacsu
Simona Neacsu 2019 年 10 月 27 日
コメント済み: Simona Neacsu 2019 年 10 月 30 日
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 日
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

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

製品

Community Treasure Hunt

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

Start Hunting!

Translated by