how to resize a given signal?

4 vues (au cours des 30 derniers jours)
Sivakumaran Chandrasekaran
how to resize a given signal? My input signals are y2=[ 1 9385];yh=[1 37508]; I need to find y2+y5.
  2 commentaires
Azzi Abdelmalek
Azzi Abdelmalek le 25 Mar 2013
What is y5?
Walter Roberson
Walter Roberson le 25 Mar 2013
Do the signals occupy exactly the same time duration ?

Connectez-vous pour commenter.

Réponses (2)

Image Analyst
Image Analyst le 27 Mar 2013
Modifié(e) : Image Analyst le 27 Mar 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 le 27 Mar 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.

Catégories

En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by