How to predict each pixel of image using regression model?

9 Ansichten (letzte 30 Tage)
Zoe
Zoe am 7 Jul. 2017
Kommentiert: Philku Lee am 28 Jun. 2021
I have the following code that loops over each pixel of a .tif image to predict responses using ensemble of regression models.
X is a 753*6 numeric array which has 6 variables (also columns), and 753 rows. NR = 1380, NC = 1464.
I understand the error's meaning (The dimensions on both sides do not match each other), but I really do not know how to fix it. I imagine the result I need should be a 1380*1464 numeric array.
a = imread('LE71250521999276_b1.tif')
[NR,NC] = size(a);
Yfit = zeros(NR,NC);
for i = 1:NR
for j = 1:NC
Yfit(i,j) = predict(Mdl1999276,X);
end
end
ERROR: Assignment has more non-singleton rhs dimensions than non-singleton subscripts
Thank you for helping!!

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 7 Jul. 2017
Why are you using all of X to do the prediction each time?
Why are you reading in the image if you are not going to predict based on its values?
Ensembles often make one prediction per ensemble member per sample; if so then you might need to analyze a vector of results to decide what one output you want.
Predictions sometimes output a probability per class rather than a single class number.
  5 Kommentare
Noor Abbas
Noor Abbas am 19 Mär. 2018
Does any paper or research that relevant with predict number of pixel using machine learning, Best Regards,
Philku Lee
Philku Lee am 28 Jun. 2021
It might be related to
https://www.sciencedirect.com/science/article/pii/S0016236121003203

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by