Draw a circle inside a black image

3 visualizaciones (últimos 30 días)
Maha Almuaikel
Maha Almuaikel el 6 de Mzo. de 2022
Comentada: Maha Almuaikel el 6 de Mzo. de 2022
I want to draw a circle in this 500x500 black matrix, but it deos not appear idk
here is the code
E = zeros(500,500);
E2 = insertShape(E, 'Circle',[250 250 100], ...
'Color','white', 'LineWidth',5);
figure(5),imshow(uint8(E2));

Respuesta aceptada

Voss
Voss el 6 de Mzo. de 2022
E = zeros(500,500);
E2 = insertShape(E, 'Circle',[250 250 100], ...
'Color','white', 'LineWidth',5);
figure(5);
% imshow(uint8(255*E2));
% or:
imshow(E2);
  4 comentarios
Image Analyst
Image Analyst el 6 de Mzo. de 2022
Do you need double? You just cast the whole thing to double at the end, so why didn't you like my solution where I just start out with the matrix being double right from the start, thus avoiding the need to cast it to double?
Or you can leave it as double - don't cast to uint8 - and it works fine:
E = zeros(500,500);
E2 = insertShape(E, 'Circle',[250 250 100], ...
'Color','white', 'LineWidth',5);
figure(5),imshow(E2);
Maha Almuaikel
Maha Almuaikel el 6 de Mzo. de 2022
@_ @Image Analyst Thank you! got it

Iniciar sesión para comentar.

Más respuestas (1)

Image Analyst
Image Analyst el 6 de Mzo. de 2022
Try this:
E = zeros(500,500, 'uint8'); % Make image as uint8 right from the beginning.
E2 = insertShape(E, 'Circle', [250 250 100], ...
'Color','white', 'LineWidth',5);
imshow(E2, []); % Display it with [] to expand the contrast.

Categorías

Más información sobre Read, Write, and Modify Image en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by