DSP Lab Report

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 27

University of Chittagong

Department of Electrical & Electronic Engineering


Lab Report

Course Title : Laboratory on Digital Signal Processing


Course Code : EEE 712
Experiment No : 01
Experiment Name : Write a MATLAB program for: (a) generation of continues time
Signals and (b) generation of discrete time signals.

Submitted To
Abu Zahed Chowdhury
Associate Professor
Department of Electrical & Electronic Engineering
University of Chittagong

Submitted By
Name: Md Arman Kabir
ID: 20702061
Department of Electrical & Electronic Engineering
University of Chittagong

Date of Submission: 05.07.24


Experiment Name: Write a MATLAB program for (a) generation of continues time
signals and (b) generation of discrete time signals.

Objective:
 To write the MATLAB code for the generation of continuous time signal.

Apparatus required:
 Hardware: Personal computer.
 Software: Matlab 2014a or above

Theory:
Continuous Time Signals:

Continuous-time signals are defined along a continuum of time and are thus, represented by
a continuous independent variable. Continuous-time signals are often referred to as analog
signals. This type of signal shows continuity both in amplitude and time. These will have

values at each instant of time. Sine and cosine functions are the best example of Continuous
time signal.

The signal shown above is an example of continuous time signal because we can get value of
signal at each instant of time.
Mathematical Representation:
A continuous-time signal is mathematically represented as a function of time, denoted by
x(t), where "t" is the independent variable representing time. The function x(t) describes the
amplitude of the signal at each instant in time "t." The function can be any mathematical
expression or formula that relates the time variable to the signal's amplitude.
For example, a simple continuous-time sinusoidal signal can be represented as:
x(t) = A * sin(ωt + φ)
where A is the amplitude, ω is the angular frequency, and φ is the phase angle of the
sinusoidal signal.

Discrete Time signals:


The signals, which are defined at discrete times are known as discrete signals. Therefore,
every independent variable has distinct value. Thus, they are represented as sequence of
numbers. Although speech and video signals have the privilege to be represented in both
continuous and discrete time format; under certain circumstances, they are identical.
Amplitudes also show discrete characteristics. Perfect example of this is a digital signal;
whose amplitude and time both are discrete.
It is a sequence of numbers x, where nth number in the sequence is represented as x[n].

Mathematical Representation:
A discrete-time signal is mathematically represented as a sequence of numbers, denoted by
x[n], where "n" is the discrete-time index. Each value of x[n] corresponds to the amplitude of
the signal at a specific time instant "n." For example, a simple discrete-time sequence
representing a unit impulse can be written as: x[n] = δ[n] where δ[n] is the Kronecker delta
function, which is equal to 1 when "n" is zero and 0 otherwise.

Procedure:
 Start the MATLAB program.
 Write the program.
 Compile and Run the program.
 Define the time vector (t) and sampling rate (Fs)
 Choose the type of continuous-time signal to generate (e.g., sine, cosine, square,etc.)
 Determine the signal parameters (frequency, amplitude, phase, etc.)
 Generate the continuous-time signal using MATLAB functions (e.g., sin, cos, etc.)
 Plot the continuous-time signal
 Optional: Add labels, titles, and legends to the plot
 Display the plot
 End
FlowChart:
Program Code:
Continuous Time Signal :

clear all
%Program for Exponential Growing signal
t=0:0.1:10;
%Program for Sine Wave y=exp(t);
t= 0 : 0.01 : 6 ; subplot(4,2,5)
y= sin(2*pi*t); plot(t,y,"r"); grid on
subplot(4,2,1) ylabel ('Amplitude');
plot(t,y); grid on xlabel ('Time Index');
axis([0 t(end) -1.2 1.2]) title('Exponential growing Signal');
title("Sine Wave")
xlabel("Time")
ylabel("Amplitude") %Program for Exponential decaying signal
t=0:0.1:10;
y=exp(-t);
%Program for Cosine Wave subplot(4,2,6)
t= 0 : 0.01 : 6 ; plot(t,y,"r"); grid on
y= cos(2*pi*t); ylabel ('Amplitude');
subplot(4,2,2) xlabel ('Time Index');
plot(t,y); grid on title('Exponential decaying Signal');
axis([0 t(end) -1.2 1.2])
title("Cosine Wave")
xlabel("Time") %Program for Sawtooth wave
ylabel("Amplitude") t= 0:0.001:19 ;
z= sawtooth(t);
subplot(4,2,7)
%Program for Square wave plot(t,z,"m"); grid on
t= 0:0.001:12 ; title('Sawtooth Wave');
z= square(t); xlabel('Time');
subplot(4,2,3) ylabel('Amplitude');
plot(t,z,"g"); grid on axis([0 t(end) -1.2 1.2])
title('Square wave');
xlabel('Time');
ylabel('Amplitude'); %Program for Triangular wave
axis([0 t(end) -1.2 1.2]) t= 0:0.1:19 ;
z= sawtooth(t,0.5);
subplot(4,2,8)
%Program for Sinc Pulse plot(t,z,"m"); grid on
t=-10:.01:10; title('Triangular Wave');
y=sinc(t); xlabel('Time');
subplot(4,2,4) ylabel('Amplitude');
plot(t,y,"g") axis([0 t(end) -1.2 1.2])
axis([-10 10 -2 2]);
ylabel ('Amplitude');
xlabel ('Time');
title('Sinc Pulse');
Output:
Discrete time signals:
clear all

%Program for Unit step sequence %Program for Cosine sequence


n= 0:10 ; n= 0:0.1:2;
y= 0*n + 1 ; y=cos(2*pi*n);
subplot(4,2,1) subplot(4,2,5)
stem(n,y,"filled","r"); grid on stem(n,y,"filled"); grid on
axis([-1 n(end)+1 -0.2 1.2]); axis([ 0 n(end) -1.2 1.2]);
title("Unit step sequence"); title(" Cosine sequence");
xlabel('n') xlabel('Time')
ylabel('x(n)') ylabel('Amplitude')

%Program for unit ramp sequence %Program for exponential sequence


n= 0:10 ;y= n ; n= 0:0.2:5;
subplot(4,2,2) y= exp(n);
stem(n,y,"filled","r"); grid on subplot(4,2,6)
axis([-1 n(end)+1 -1 n(end)+1]); stem(n,y,"filled"); grid on
title("Unit ramp sequence"); axis([ 0 n(end) -20 160]);
xlabel('n') title("Exponential sequence");
ylabel('x(n)') xlabel('Time')
ylabel('Amplitude')

%Program for Discreate time signal


n=[-3:1:4]; %Program for unit impulse
x=[2,1,-1,0,1,4,3,7]; n=-3:1:3;
subplot(4,2,3) y=[zeros(1,3),ones(1,1),zeros(1,3)]
stem(n,x,"filled","g"); grid on ;
axis([-4 5 -2 8]) subplot(4,2,7)
title('Discreate time signal') stem(n,y,"filled","m"); grid on
xlabel('n') axis([ -3 3 -0.2 1.2]);
ylabel('x(n)') title('Unit impulse');
xlabel('Time');
ylabel('Amplitude');
%Program for sinusoidal sequence
n= 0:0.1:2;
y= sin(2*pi*n); %Program for Sawtooth Function
subplot(4,2,4) n= 0:40 ;y= n ;
stem(n,y,"filled","g"); grid on subplot(4,2,8)
axis([ 0 n(end) -1.2 1.2]); Sawt = sawtooth(.62*y);
title("sinusoidal sequence"); stem(y,Sawt,"filled","m")
xlabel('Time') title('Sawtooth Wave'); grid on
ylabel('Amplitude') xlabel('time(n)');
ylabel("Amplitude")
ylim([-1 1]);
Output:
Result:
Thus, the MATLAB programs for continuous time signal and discrete time signal have written
and the results were plotted.

Discussion:
In this lab, we successfully generated and visualized both continuous and discrete-time signals
using MATLAB. The continuous-time signal, represented by a sine wave, was created using a
finely sampled time vector, resulting in a smooth waveform that effectively models real-world
phenomena. The discrete-time signal, represented by a cosine wave, was generated using discrete
time points and visualized with the `stem` function, highlighting its distinct and discrete nature.
The comparison between continuous and discrete-time signals emphasized their respective
applications: continuous signals are crucial in analog domains such as audio processing and
communications, while discrete signals are essential in digital signal processing. MATLAB's
capabilities in signal generation and visualization proved invaluable in exploring these
fundamental concepts.
This lab reinforced theoretical knowledge from lectures, providing practical experience in
generating and analyzing signals. It demonstrated the transition from continuous to discrete
representations and their significance in various fields, including communications, control
systems, and medical imaging.

Review Question and Answer:

1. What is a continuous-time signal?


Answer: A continuous-time signal is a type of signal that is defined for every time instant within
a given range. It can be represented as a smooth and continuous function, such as a sine or cosine
wave.
2. How to generate a continuous-time signal in MATLAB?
Answer: To generate a continuous-time signal in MATLAB by defining a finely sampled time
vector and using functions like `sin` or `cos`. For example:
t = 0:0.001:1;
x = sin(2*pi*5*t);
plot(t, x);

3. What is a discrete-time signal?


Answer: A discrete-time signal is defined only at specific intervals or time points. It consists of
individual samples rather than a continuous function, often used in digital signal processing.
4. How to generate a discrete-time signal in MATLAB?
Answer: To generate a discrete-time signal in MATLAB, define a discrete time vector and use
functions like `cos` or `sin`. For example:
n = 0:20;
x = cos(2*pi*0.1*n);
stem(n, x, 'filled');

5. Why is the `stem` function used for discrete-time signals?


Answer: The `stem` function is used to plot discrete-time signals because it clearly displays
individual data points, making it easier to visualize the discrete nature of the signal.
6.What are some applications of continuous-time signals?
Answer: Continuous-time signals are used in analog applications such as audio processing,
communications, and control systems, where signals vary smoothly over time.
7. What are some applications of discrete-time signals?
Answer: Discrete-time signals are essential in digital signal processing, including digital
communications, digital audio, image processing, and medical imaging techniques like MRI and
CT scans.
8. How does sampling relate to discrete-time signals?
Answer: Sampling is the process of converting a continuous-time signal into a discrete-time
signal by measuring its amplitude at regular intervals. This is crucial for digital signal
processing.
9. What is the significance of the time vector in signal generation?
Answer: The time vector defines the points in time at which the signal is evaluated. For
continuous-time signals, it has a fine resolution to approximate continuity, while for discrete-
time signals, it consists of specific intervals.
10. How does MATLAB facilitate the understanding of signal characteristics?
Answer: MATLAB provides robust functions and visualization tools that allow for the easy
generation, manipulation, and plotting of both continuous and discrete-time signals, enhancing
the understanding of their properties and applications.
University of Chittagong
Department of Electrical & Electronic Engineering
Lab Report

Course Title : Laboratory on Digital Signal Processing


Course Code : EEE 712
Experiment No : 02
Experiment Name : Write a MATLAB program to illustrate:
a) Correlation Sequences.
b) Linear and Circular Convolutions.

Submitted To
Abu Zahed Chowdhury
Associate Professor
Department of Electrical & Electronic Engineering
University of Chittagong

Submitted By
Name: Md Arman Kabir
ID: 20702061
Department of Electrical & Electronic Engineering
University of Chittagong

Date of Submission: 05.07.24


Experiment Name: Write a MATLAB program to illustrate:
c) Correlation Sequences.
d) Linear and Circular Convolutions.
Objective:
 To write MATLAB programs for auto correlation and cross correlation.
 To write MATLAB programs to find out the linear convolution and Circular
convolution of two sequences.

Apparatus required:
 Hardware: Personal computer.
 Software: Matlab 2014a.

Theory:

The concept you've described is related to the auto-correlation function of a stationary


random process (x(t)). However, there appears to be a slight misunderstanding in your
provided expression. Allow me to clarify and provide the correct definition of the
autocorrelation function.
The auto-correlation function of a continuous-time stationary random process (x(t)) is
defined as follows:
Rx(Z)=E[x(t).E(t+Z)]
The auto-correlation function is a fundamental concept in signal processing and statistics and
is often used in applications like time series analysis, random signal characterization, and
communication system design.

Properties of Auto-Correlation Function R(Z):

1. The mean square value of a random process can be obtained from the auto-
correlation function R(Z).
2. R(Z) is even function Z.
3. R(Z) is maximum at Z = 0 e.e. |R(Z)| ≤ R (0). In other words, this means the
maximum value of R(Z) is attained at Z = 0.
4. If R(Z) is the auto-correlation of a stationary random process {x(t)} with no periodic
components and with non-zeros means then limz→∞R(Z)=[E(x)]2.

Cross Correlation Function: The cross-correlation function is a metric used to quantify the
degree of similarity or coherence between two distinct signals. It assesses how one signal
aligns with a time-delayed version of another signal. Notably, the cross-correlation function
is defined differently for energy (aperiodic) signals and power (periodic) signals.

Properties of Cross -Correlation Function:


1. The cross-correlation functions of energy signals exhibit conjugate symmetry
property, that is, R12(τ)=R 21(−τ).
2. The cross-correlation functions of energy signals are not in general commutative, i.e.
R12(τ)eqR21(−τ)
3. If R12(0) = ∫∞−∞x1(t)x 2(t)dt=0. Then, the two energy signals x1(t) and x2(t) are
said to be orthogonal signals over the entire time interval. The cross correlation of
orthogonal signals is zero.

Linear Convolution: In linear systems, convolution is used to describe the relationship


between three signals of interest: the input signal, the impulse response, and the output
signal.
If the input and impulse response of a system are x[n] and h[n] respectively, the convolution
is given by the expression, x[n] * h[n] = ε x[k] h[n-k].
Circular Convolution: It is defined for periodic sequences, whereas convolution is defined
for aperiodic sequences. The circular convolution of two N-point periodic sequences x(n)
and y(n) is the N-point sequence, a(m) = x(n)* y(n).

Procedure:
 Start the MATLAB program.
 Type the program.
 Compile and Run the program.
 For the output see command window\ Figure window.

Flowchart:
Program Code:
Correlation Sequence:
 Autocorrelation Sequence:

clear all
n= 0:1:5*pi ;
x= sin (n);
subplot(2,1,1)
stem(x,'filled');
grid minor
xlabel('n');
ylabel('Amplitude');
title('Input sequence (Sine Wave)');
z= xcorr(x,x);
subplot(2,1,2)
stem(z,'filled',"r");
grid minor
xlabel('n');
ylabel('Amplitude');
title('Output sequence');

Input and Output:


 Cross-Correlation of the Sequences:

clc grid minor


n= 0:1:5*pi ; xlabel('n');
x= sin (n); ylabel('Amplitude');
subplot(3,1,1) title('Input sequence 2 (Cosine
stem(x,'filled',"r"); Wave)');
grid minor z= xcorr(x,y);
xlabel('n'); subplot(3,1,3)
ylabel('Amplitude'); stem(z,'filled');
title('Input sequence 1 (Sine grid minor
Wave)'); xlabel('n');
y= cos (n); ylabel('Amplitude');
subplot(3,1,2) title('Output sequence');
stem(y,'filled',"g");

Input and Output:


Linear and Circular Convolutions:

clc
clear all
n= 0:1:3*pi ;
x= sin (n);
y= cos (n);
%) Linear Convolutions
lin = conv(x,y);
subplot(2,1,1)
stem(lin,'filled',"r")
grid minor
xlabel('n');
ylabel('Amplitude');
title('Linear Convolution of x and y')
%) Linear Convolutions
circ = ifft(fft(x).*fft(y));
subplot(2,1,2)
stem(circ,'filled',"g")
grid minor
xlabel('n');
ylabel('Amplitude');
title('Circular Convolution of x and y')

Output:
Result:
Thus, the MATLAB programs for auto correlation, cross correlation, linear convolution and
circular convolution have written and the results were plotted.

Discussion:
The experiment successfully illustrated the concepts of correlation sequences, linear convolution,
and circular convolution using MATLAB. Correlation sequences revealed the similarity between
input sequences at different lags, essential for applications like pattern recognition and signal
detection. Linear convolution demonstrated how an input signal is modified by a system's
impulse response, crucial for filtering and system analysis, showing the cumulative effect of the
input on the system's output.
Circular convolution highlighted the periodic nature of signals in digital signal processing,
providing a perspective distinct from linear convolution, especially in applications involving the
Fast Fourier Transform (FFT). This operation showed how periodic extensions of sequences
influence convolution results.
Overall, the experiment provided a practical understanding of these fundamental signal
processing operations, emphasizing their importance in analyzing signal behavior and system
responses, and laying the groundwork for more advanced techniques in the field.

Review Question and Answer:

1. What is the purpose of correlation in signal processing?

Answer: The purpose of correlation in signal processing is to measure the similarity between
two sequences. It helps in identifying patterns, detecting signals, and analyzing the relationship
between sequences at different lags.

2. How is cross-correlation of two sequences defined?


Answer: Cross-correlation of two discrete-time sequences x[n] and y[n] is defined as:
Rxy[m] = ∑nx[n]y[n−m]
where Rxy[m] is the correlation sequence at lag m.
3. What is the difference between linear and circular convolution?
Answer: Linear convolution computes the output of a system when an input signal is applied,
considering the full length of the sequences. Circular convolution treats the sequences as periodic
and computes the output assuming the sequences repeat indefinitely.

4. Why is circular convolution important in digital signal processing?


Answer: Circular convolution is important in digital signal processing because it simplifies the
computation of convolutions using the Fast Fourier Transform (FFT), making it efficient for
analyzing periodic signals and systems.
5. What MATLAB function is used to compute linear convolution?
Answer: The MATLAB function used to compute linear convolution is `conv`.

6. What MATLAB function is used to compute circular convolution?


Answer: The MATLAB function used to compute circular convolution is `cconv`.

7. How does the correlation sequence help in signal detection?


Answer: The correlation sequence helps in signal detection by indicating the degree of similarity
between a received signal and a known reference signal, allowing for the identification and
extraction of the desired signal from noisy data.

8. What are some practical applications of convolution in signal processing?


Answer: Practical applications of convolution in signal processing include filtering, system
response analysis, image processing (e.g., edge detection), and audio signal processing (e.g.,
reverb effects).

9. How to calculate correlation sequences in MATLAB?


Answer:Using the xcorr function in MATLAB to compute cross-correlation sequences.
University of Chittagong
Department of Electrical & Electronic Engineering
Lab Report

Course Title : Laboratory on Digital Signal Processing


Course Code : EEE 712
Experiment No : 03
Experiment Name : Write a MATLAB program to illustrate: a) The effect of up-sampling in
frequency domain. b) The effect of Interpolation process.

Submitted To
Abu Zahed Chowdhury
Associate Professor
Department of Electrical & Electronic Engineering
University of Chittagong

Submitted By
Name: Md Arman Kabir
ID: 20702061
Department of Electrical & Electronic Engineering
University of Chittagong

Date of Submission: 05.07.24


Experiment Name: Write a MATLAB program to illustrate: a) The effect of up-sampling in
frequency domain. b) The effect of Interpolation process.
Objective:
 To write MATLAB programs for calculating the effect of up-sampling in frequency
domain.
 To write MATLAB programs to find out effect of Interpolation process.
Apparatus required:
 Hardware: Personal computer.
 Software: MATLAB R2021a.
Theory:
Up-Sampling in the Frequency Domain: Up-sampling is a signal processing technique used to
increase the sampling rate of a signal by inserting zeros between the original samples. This
process effectively expands the bandwidth of the signal, allowing for higher-frequency
components to be represented. In this section, we will discuss the effect of up-sampling in the
frequency domain.
Effect of Up-Sampling in the Frequency Domain: When a signal is up-sampled, zeros are
inserted between the original samples, effectively increasing the number of samples.
Mathematically, up-sampling a signal x[n] by a factor of M is equivalent to convolving the
signal with a comb function of period M. This operation replicates the original spectrum of x[n]
around multiples of the original Nyquist frequency.
Interpolation Process: Interpolation is a signal processing technique used to estimate the values
of a signal at non-integer time instants based on the known values at integer time instants.
Interpolation is particularly useful when working with discrete-time signals or when resampling
signals at different rates. In this section, we will discuss the effect of the interpolation process on
signals.
Effect of Interpolation Process: Interpolation involves estimating the signal values between
existing data points to create a smoother representation of the signal. The interpolation process
introduces new data points that lie between the original samples, effectively increasing the
number of samples and producing a higher-resolution signal. The primary effect of interpolation
can be observed in both the time and frequency domains.
Procedure:
 Start the MATLAB program.
 Open new M-file.
 Type the program.
 Save in current directory.
 Run the program.
 If any error occurs in the program correct the error and run it again.
 For the output see command window\ Figure window.
 Stop the program.
Flow chart:

Start

Launch MATLAB

Create a new M-file

Input the desired window


function's code

Save the file in the current


directory
Debug and
Correct the
error
Run the program

Error? Yes

No
View the output in the command
window or figure window

End
Source Code:

 The effect of up-sampling in frequency domain:

clc % Generation of interpolated signal


freq = [0 0.45 0.5 1]; L = 5 ; %Upsampling factor
mag = [0 1 0 0]; y = zeros(1, L*length(x));
x = fir2(99, freq, mag); y([1:L:length(y)]) = x;
% see the effect in frequency
domain [Yz, w] = freqz(y, 1, 512);
[Xz, w] = freqz(x, 1, 512); subplot(2,1,2)
subplot(2,1,1) plot(w/pi, abs(Yz),"g"); grid minor
plot(w/pi, abs(Xz),"r"); grid minor title ('Output Spectrum');
xlabel('\omega/\pi'); xlabel('\omega/\pi');
ylabel('Magnitude'); ylabel('Magnitude');
title('Input Spectrum');

Output:
 The effect of Interpolation process:

clc
t = 0:1/1e3:1;
x = sin(2*pi*30*t) + sin(2*pi*60*t);
y = interp(x,4);
subplot(2,1,1)
stem(0:30,x(1:31),'filled',"g",'MarkerSize',3)
grid on
xlabel('Sample Number')
ylabel('Amplitude')
title('Input sequence')
subplot(2,1,2)
stem(0:120,y(1:121),'filled','MarkerSize',3)
grid on
xlabel('Sample Number')
ylabel('Amplitude')
title('Interpolated output sequence')
Output:

Results:

Thus, the MATLAB programs for the effect of up-sampling in frequency domain and the effect
of Interpolation process written and the results were plotted.

Discussion:

The experiment effectively illustrated the effects of up-sampling in the frequency domain and the
interpolation process using MATLAB. Up-sampling increased the sampling rate by inserting
zeros between the original samples, resulting in an expanded spectrum with replicated copies of
the original signal's spectrum. This demonstrated the importance of filtering to avoid aliasing and
maintain signal integrity.

The interpolation process, which estimates intermediate values to increase signal resolution and
smoothness, was also successfully demonstrated. Interpolation is crucial for applications
requiring high-quality signal reconstruction, such as audio processing and image enhancement.
The practical implementation in MATLAB provided valuable insights into these processes,
showing how they influence both time-domain and frequency-domain characteristics of signals.
Understanding these fundamental operations is essential for various signal processing
applications, enabling efficient manipulation and analysis of signals. This experiment reinforced
the theoretical concepts with practical examples, laying the groundwork for more advanced
signal processing techniques.

Review Question and Answer:

1. What is the purpose of up-sampling in signal processing?

Answer: The purpose of up-sampling is to increase the sampling rate of a signal, which is often
necessary for preparing the signal for further processing, such as digital-to-analog conversion or
filtering.
2. How is up-sampling performed in the time domain?

Answer: Up-sampling in the time domain is performed by inserting zeros between the original
samples of the signal, effectively increasing the number of samples.

3. What is the effect of up-sampling on the signal's spectrum in the frequency domain?

Answer: Up-sampling results in the original spectrum being replicated at multiples of the new
sampling rate, expanding the frequency domain representation of the signal.

4. Why is filtering necessary after up-sampling?

Answer: Filtering is necessary after up-sampling to remove the replicated copies of the original
spectrum and prevent aliasing, ensuring that the up-sampled signal retains its integrity.

5. What MATLAB function is used to perform up-sampling?

Answer: The MATLAB function up-sample is used to perform up-sampling.

6. What is interpolation in the context of signal processing?

Answer: Interpolation is the process of estimating intermediate values between known data
points to increase the resolution or smoothness of a signal.

7. How does interpolation improve signal quality?

Answer: Interpolation improves signal quality by generating a smoother and more continuous
representation of the signal, which is important for applications requiring high-quality
reconstruction.

8. What are some common interpolation methods used in signal processing?

Answer: Common interpolation methods include linear interpolation, cubic interpolation, and
spline interpolation, each offering different levels of smoothness and accuracy.
9. What MATLAB function is used for interpolation?

Answer: The MATLAB function interp is used for interpolation.

10. How do up-sampling and interpolation differ in their effects on a signal?

Answer: Up-sampling increases the sampling rate by inserting zeros, affecting the frequency
domain by replicating the spectrum. Interpolation, on the other hand, estimates intermediate
values to increase resolution and smoothness, enhancing the quality of the signal in the time
domain.

You might also like