how to resize a given signal?

3 Ansichten (letzte 30 Tage)
Sivakumaran Chandrasekaran
Sivakumaran Chandrasekaran am 25 Mär. 2013
how to resize a given signal? My input signals are y2=[ 1 9385];yh=[1 37508]; I need to find y2+y5.
  2 Kommentare
Azzi Abdelmalek
Azzi Abdelmalek am 25 Mär. 2013
What is y5?
Walter Roberson
Walter Roberson am 25 Mär. 2013
Do the signals occupy exactly the same time duration ?

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Image Analyst
Image Analyst am 27 Mär. 2013
Bearbeitet: Image Analyst am 27 Mär. 2013
You'll probably want to use either interp1() or imresize(). Both are illustrated in the demo below:
clc;
clearvars;
y2 = rand(1, 9385);
y5 = rand(1, 37508);
% The easiest method, using imresize().
% Make y2 the same size as y5
y2Larger = imresize(y2, size(y5));
% Now sum them
output = y2Larger + y5;
% Alternative method using interp1
x = linspace(1, length(y5), length(y2));
xi = 1:length(y5);
y2Larger = interp1(x, y2, xi)
% Now sum them
output = y2Larger + y5;

Ahmed A. Selman
Ahmed A. Selman am 27 Mär. 2013
Use reshape
Y=function(X,m,n)
It works for any input matrix (X) with number of elements (m x n). The output is Y with m-rows by n-columns. The size of X and Y must be the same.

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by