Clear Filters
Clear Filters

How to read image matrix stored in a structure

8 views (last 30 days)
I have a letters.mat file which has one variable dataset which is a struct and dataset has 2 more fields as train , test which both are also structures, In train structures 2 fields are images and labels ...images is of 124800*784 unit8 type... I want to read those images and store them in a folder. How can I do that? I used the code load('dataset.mat') train = dataset.train images = train.images; Now when I show the image using imshow() it displays error that Error using imread>parse_inputs (line 450) The file name or URL argument must be a character vector.
Error in imread (line 322) [filename, fmt_s, extraArgs, was_cached_fmt_used] = parse_inputs(cached_fmt, varargin{:});
Error in ex (line 46) imgArray = imread(images)
Can anyone help me with the code? Thanks in advance
  12 Comments
KSSV
KSSV on 12 Jul 2018
YOu have the data already in hand...you cannot use imread.
HJ Akhtar
HJ Akhtar on 12 Jul 2018
No, I am not sure... Actually i dont know how to access images from dataset.train.images which is of type uint8 and size 124800*784 #KSSV

Sign in to comment.

Accepted Answer

Guillaume
Guillaume on 12 Jul 2018
Edited: Guillaume on 12 Jul 2018
If you want to see the image, it's simply:
imshow(dataset.train.images);
The image is a grayscale image. However, it is puzzling why the field is called images since it contains just one (very big image).
If you want to save the image to disk in its own file:
imwrite(dataset.train.images, 'C:\somewhere\somename.png');
edit: Again, your training dataset contains just one image. However, since it's so big, it's possible that that single image is the result of stitching together several images.

More Answers (0)

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!