How do I insert a picture into a script?

504 visualizaciones (últimos 30 días)
DKonk
DKonk el 19 de Nov. de 2022
Comentada: DKonk el 19 de Nov. de 2022
I need to have an image in my code for users to reference. I don't want to imread or imload, I just want an immage pasted almost like a comment. Off to the side and not affecting the code at all. Can I do that?

Respuesta aceptada

Steven Lord
Steven Lord el 19 de Nov. de 2022
If your script is a live script that you have open in the Live Editor, select the Insert tab of the Toolstrip then click the Image button.
  4 comentarios
Steven Lord
Steven Lord el 19 de Nov. de 2022
This also works in live functions.
If you're asking if you can somehow embed a picture into a plain code file with the .m extension and have it automatically displayed in the Editor the answer is no. MATLAB program files with the .m are text files.
Depending on how much effort you want to put into this project, if this is part of a toolbox that you're writing you could create custom documentation.
Or you could create a simple app that allows users to enter the data then have the app call your computational function to compute the answer.
DKonk
DKonk el 19 de Nov. de 2022
This is unfortunately the answer I was looking for. The asnwer is no. Thanks!

Iniciar sesión para comentar.

Más respuestas (1)

Jan
Jan el 19 de Nov. de 2022
Editada: Jan el 19 de Nov. de 2022
It depends on how you would like to see the image. It cannot be displayed in the editor, because scripts are M-files and therefore pure text files. Of course ASCII-art would be possible.
If you want to display it by imshow you can embed base64 encoded data:
% Create the data stream as ASCII:
img = randi([0, 255], 20, 30, 'uint8'); % Example image
B64 = org.apache.commons.codec.binary.Base64;
str = char(B64.encode(img(:))).';
% Store in the file:
img64 = ['0Ocg6aEYR4z19yj49XzMJGvqyvWnCdnvrcG+ZKcrtAhGCxjSsVHzCH', ...
'Bhw8svfXKltcFGrqcpHn/1V5U5wEGBsuT1jCMmQddB0D7tWTJAnXla1JWM6', ...
'knBwGGREw2Hx+8hkXgDVinLT4cqmkOnsL9zFTrpJ9OJ/xRxG/YBxtHeFWZC', ...
'zG7pLkMlIt6UjCXan1mDZhM9Hy89agzn8X19VuZeHMdjPWcYIfH0kw88WtI', ...
'DCyumu6VzjEu+MK8uXqDHFO3GfG9yToKC0cukYM+IWfDgjJ+WNU14O9gxOS', ...
's6b0/sbi/n+nAcQmiYQ5q2OB5LUWyCFUPNB+26fZQ8dfaLhTt9n61lXvwJ4', ...
'unLGUNVriK4G6d+x7fn5FWyMge+gHrnnJ7czpMuPeIHfSr6toB4D64KEoUY', ...
'0dG4JqiE+abMdG7TFSIsZNTND2aGaqigSm4D+yobXzJ9VvPrDbxEbIzxavt', ...
'Ns6qKsqotIP8rCI/hqzBedfso26VgMG17HpY5YpVASp1D0/u6WJUb6OHRQp', ...
'gFbFApLWwYmXiys6MIEVGHp2jRt/eIUxucx2wXRCdHcIZ14ITxo/U9rUqrs', ...
'RFBOarYWMesAZpj6gB2bHXFUsh4CS24eSdXmzG9PupEwzBJF5Oui2ykpa2i', ...
'8TW1PB6bc3WpxVmpatfVQZ2Vit5DUR7wpXqji6WLuIX+NxscEGdyXcOgxe7', ...
'5MSOyGIaH3Hxkq72FWSaWQwvBPnGwW7xlrrRxBVRsRTLSbuNkxGXOwWA3yv', ...
'NTq3DVxCrc/YPiliczaL/TylGIFxwirX4wfiUO'];
B64 = org.apache.commons.codec.binary.Base64;
img = uint8(B64.decode(uint8(img64));
imshow(reshape(img, 20, 30));

Categorías

Más información sobre Convert Image Type en Help Center y File Exchange.

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by