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

2 ビュー (過去 30 日間)
John
John 2021 年 1 月 5 日
編集済み: John 2021 年 1 月 19 日
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));

採用された回答

Sean de Wolski
Sean de Wolski 2021 年 1 月 19 日
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 件のコメント
John
John 2021 年 1 月 19 日
I thought it wasn't beautiful, but did in the same way as yours.

サインインしてコメントする。

その他の回答 (1 件)

Nitin Kapgate
Nitin Kapgate 2021 年 1 月 13 日
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 件のコメント
John
John 2021 年 1 月 19 日
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);

サインインしてコメントする。

製品


リリース

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by