How can i make vector lengths the same?

5 Ansichten (letzte 30 Tage)
Lucaci Diana
Lucaci Diana am 26 Nov. 2020
Kommentiert: Lucaci Diana am 26 Nov. 2020
%%read normal image first
im = imread('thing.jpeg');
subplot(311);
imshow(im);
title('Normal Image');
%%read infrared image
im1 = imread('thing_infrared.jpeg');
subplot(312);
imshow(im1);
title('Infrared Image');
%%convert normal inamge to gray scale
b = rgb2gray(im);
b = double(b);
%%covnert infrared image to gray scale
c = rgb2gray(im1);
c = double(c);
%%reading pixels for normal image
b1 = imshow(b);
impixelinfo(b1);
vector = reshape(b, [1600*1200 1]);
%%reading pixels for infrared image
c1 = imshow(c);
impixelinfo(c1);
vector1 = reshape(c, [1280*960 1]);
%%before plotting you need to make the vectors of the same length
%%plot(vector_lower(1:minlen) + vector1_lower(1:minlen), y);
%%maxlen = max(length(vector_lower), length(vector1_lower));
%%plot(vector_lower(1:maxlen) + vector1_lower(1:maxlen));
I have found this maxlen and minlen functions, but they aren t working. Should it be something to do with 255? Like divide somewhere to get 255 pixels?
Thank you
  2 Kommentare
KSSV
KSSV am 26 Nov. 2020
To make vectors lengths same, have a look on interp1. You can do interpolation.
Lucaci Diana
Lucaci Diana am 26 Nov. 2020
thank you

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

LO
LO am 26 Nov. 2020
To solve a similar issue I use imresize
First get the size of the image (with the function "size"),
then resize image 2 according to the dimensions you got (see code below)
image_size = size(your_image);
resized_image = imresize(your_image, [image_size(1) image_size(2)]);

Weitere Antworten (0)

Kategorien

Mehr zu Convert Image Type finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by