How to convert image .mat back to the mlreportgen.dom.Image object?

3 vues (au cours des 30 derniers jours)
John
John le 5 Jan 2021
Modifié(e) : John le 19 Jan 2021
In report generator, an Image object can be inserted in the report in this way:
mlreportgen.dom.*
rpt = Document('my_report','pdf');
img = Image('my_image.jpg');
img.Style = {Width('5in'),HAlign('center')};
append(rpt, img);
Now, the image is already read into .mat data with:
read_img = imread('my_image.jpg'); % now, read_img is in 640x480x3 uint8 format
How to create an Image object as above but from this later read_img data?
img = Image(anyway_some_function(read_img));

Réponse acceptée

Sean de Wolski
Sean de Wolski le 19 Jan 2021
You'll need to write the image back to disk as the report generator needs to deserialize it from this format into the report. If the image is in a figure, you can use print, exportgraphics or use my FigureDeployer class which wraps around it and makes it easy.
Alternatively, you could use the Figure command with the mlreportgen.report.* api but this would require changing other things about your reporter structure.
  1 commentaire
John
John le 19 Jan 2021
Modifié(e) : John le 19 Jan 2021
I thought it wasn't beautiful, but did in the same way as yours.

Connectez-vous pour commenter.

Plus de réponses (1)

Nitin Kapgate
Nitin Kapgate le 13 Jan 2021
You can create an Image Object from the "read_img" data using the following code:
read_img = imread('my_image.jpg'); % Read the image
img = image(read_img);
You can refer to the documentation of "image" function to learn more about it.
  1 commentaire
John
John le 19 Jan 2021
This doesn't resolve the issue:
import mlreportgen.dom.*
read_img = imread('my_image.jpg');
img = image(read_img); % this runs, but forces an image display
report_image = Image(img); % this still give error below
What we want is an mlreportgen.dom.Image object. Above command generates the error:
Error using mlreportgen.dom.Image
Invalid input for argument 1 (p0):
Value must be a character vector or string scalar.
Error in Untitled (line 4)
report_image = Image(img);

Connectez-vous pour commenter.

Catégories

En savoir plus sur Images dans Help Center et File Exchange

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by