Im trying to classify dental xray images in jpg format using SqueezeNet but there is error in the first input layer as it accepts only 227x227x3 whereas the jpg image data

2 views (last 30 days)
Im trying to classify dental xray images in jpg format using SqueezeNet but there is error in the first input layer as it accepts only 227x227x3 whereas the jpg image data of only 1 layer in gray. How to solve this issue kindly help?

Answers (1)

Rik
Rik on 28 Aug 2023
The common strategy for using grayscale images in networks designed for color input, is to either replicate the images or to use only a single channel. Sometimes one of the channels is used for some sort of mask, but that depends on the actual project.
IM = uint8(randi([0 255],227,227,1)); % generate example image data
%option 1:
IM_replicated = repmat(IM,1,1,3);
size(IM_replicated)
ans = 1×3
227 227 3
%option 2:
IM_extended = cat(3,IM,uint8(zeros([size(IM) 2])));
size(IM_extended)
ans = 1×3
227 227 3

Categories

Find more on Image Data Workflows in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!