How to create an image that has random chunks of black and white pixels
8 次查看(过去 30 天)
显示 更早的评论
采纳的回答
Adam Danz
2021-9-27
编辑:Adam Danz
2021-9-28
Specify imageSize and blockScale to create randomly placed blocks of black and white pixels.
imageSize = [1920,1080]; % [width, height]
blockScale = 40; % larger values create larger blocks
blocksize = round(imageSize/blockScale);
data = randi(2,fliplr(blocksize))-1;
B = imresize(data, fliplr(imageSize),'nearest');
imagesc(B)
colormap([0 0 0; 1 1 1])
axis equal
axis tight
set(gca, 'xtick', [], 'ytick', [], 'LineWidth', 5) % add frame
If you just want random black and white pixels,
B = randi(2,[1080,1920])-1;
figure()
imshow(B)
0 个评论
更多回答(1 个)
yanqi liu
2021-9-28
clc; clear all; close all;
% init image (1920 x 1080)
A = zeros(1080,1920);
% choose white
ind1 = randperm(numel(A(:)));
rate = 0.3;
xt = ind1(1:round(length(ind1)*rate));
A(xt) = 1;
A([1 end],:)=0;
A(:,[1 end])=0;
figure; imshow(logical(A));
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!