Image shows with imshowpair, but not with imshow

5 visualizzazioni (ultimi 30 giorni)
I am writing a function that reads an image and converts it to BW. I am able to use imshowpair to display the unedited and edited images next to each other, but can't individually show just the edited (BW) image. What should I do?
midAirImage = imread("MidAirTest.jpg");
bwImage = imbinarize(midAirImage,'adaptive','ForegroundPolarity','dark','Sensitivity',0.4);
imshowpair(midAirImage, bwImage, 'montage')

Risposta accettata

Abhishek Gangwar
Abhishek Gangwar il 22 Lug 2020
Modificato: Abhishek Gangwar il 22 Lug 2020
Your binary image should be 2 dimensional, if it is not convert the original image into gray cale and then create binary image,
midAirImage = imread("MidAirTest.jpg");
midAirImage = rgb2gray(midAirImage);
bwImage = imbinarize(midAirImage,'adaptive','ForegroundPolarity','dark','Sensitivity',0.4);
imshowpair(midAirImage, bwImage, 'montage')
imshow(bwImage);

Più risposte (1)

Constantino Carlos Reyes-Aldasoro
You have two options, use subplots
subplot(121)
imagesc(midAirImage)
subplot(122)
imagesc( bwImage)
Alternatively you can concatenate your images like this
imagesc( [ midAirImage bwImage])
Notice that the binary will be between 0 and 1 and the original between 0 and 255 so you need to scale:
imagesc( [ midAirImage 255*bwImage])
Hope this helps to solve your problem.

Categorie

Scopri di più su Images in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by