How can I show 10 pixels width in all directions for an image?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hadeel H
am 1 Jun. 2021
Kommentiert: Hadeel H
am 3 Jun. 2021
I am trying to find a block of the image, such as, the perimeter of the image, 10 pixels width in all directions. Can you please advise?
2 Kommentare
Akzeptierte Antwort
Walter Roberson
am 2 Jun. 2021
img = imread('https://www.mathworks.com/matlabcentral/answers/uploaded_files/638445/download.jpg');
n = floor(size(img,2)/2);
leftb = imbinarize(rgb2gray(img(:,1:n,:)));
left = repmat(im2uint8(leftb), [1 1 size(img,3)]);
right = img(:,n+1:end,:);
newimg = [left,right];
imshow(newimg)
Weitere Antworten (1)
Adam Danz
am 1 Jun. 2021
Bearbeitet: Adam Danz
am 2 Jun. 2021
> want to display the same image below but half colored and half binary!
figure();
tiledlayout(1,3,'Padding','none','TileSpacing','tight')
rgb = imread('download.jpg');
nexttile()
imshow(rgb);
title('Original image')
nexttile()
imshow(rgb);
I = rgb2gray(rgb);
hold on
h = imshow(I);
[M,N] = size(I);
halfway = round(N/2);
alpha_data = [ones(M,halfway),false(M,N-halfway)];
set(h, 'AlphaData', alpha_data);
title('Half grayscale')
nexttile()
imshow(rgb);
BW = imbinarize(I);
hold on
h = imshow(BW);
[M,N] = size(I);
halfway = round(N/2);
alpha_data = [ones(M,halfway),false(M,N-halfway)];
set(h, 'AlphaData', alpha_data);
title('Half binary')
13 Kommentare
Adam Danz
am 2 Jun. 2021
Your comment above is clear. If that image was shared from the beginning, it would have save lots and time and back-and-forth Q&A.
But I still don't know what that has to do with your original question, "How can I show 10 pixels width in all directions for an image?"
Siehe auch
Kategorien
Mehr zu Convert Image Type finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


