performing without randperm function

1 view (last 30 days)
from code below i get 10 matrix values,using randperm function,please can anyone tell how to perform without using randperm,
A=imread('dock.jpg');
A=rgb2gray(A);
A=imresize(A,[256 256])
A=double(A)
n = numel(A);
A1_10 = repmat(A,[1,1,10]);
t = ones(size(A));
for j1 = 1:size(A1_10,3)
p = t;
k = randperm(n);
k1=[1:n];
p(k(1:6000)) = 0;
A1_10(:,:,j1) = A1_10(:,:,j1).*p;
end
A1_10

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 14 Feb 2012
A=imread('dock.jpg');
A=rgb2gray(A);
A=imresize(A,[256 256])
A=double(A)
n = numel(A);
A1_10 = repmat(A,[1,1,10]);
t = ones(size(A));
for j1 = 1:size(A1_10,3)
p = t;
p(randi(n,6000,1)) = 0;
A1_10(:,:,j1) = A1_10(:,:,j1).*p;
end
A1_10

More Answers (0)

Categories

Find more on Numeric Types in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!