The presentation covers sampling theorem, ideal sampling, flat top sampling, natural sampling, reconstruction of signals from samples, aliasing effect, zero order hold, upsampling, downsampling, and discrete time processing of continuous time signals.
This presentation describes the Fourier Transform used in different mathematical and physical applications.
The presentation is at an Undergraduate in Science (math, physics, engineering) level.
Please send comments and suggestions to improvements to solo.hermelin@gmail.com.
More presentations can be found at my website http://www.solohermelin.com.
introduction to pulse shaping and equalization in advanced digital communication, it's characterisation, signal design of band limited signal, design of bandlimited signal for no ISI and design of bandlimited signal with controlled ISI-partial response, linear equalization,
These filters have properties that lie between those of the Butterworth and Chebyshev filters. So it is appropriate to call this kind of filters as transitional Butterworth-Chebyshev filters.
Spectral Analysis of Signed Graphs for Clustering, Prediction and VisualizationJérôme KUNEGIS
We study the application of spectral clustering, prediction and
visualization methods to graphs with negatively weighted edges. We show
that several characteristic matrices of graphs can be extended to graphs
with positively and negatively weighted edges, giving signed spectral
clustering methods, signed graph kernels and network visualization
methods that apply to signed graphs. In particular, we review a signed
variant of the graph Laplacian. We derive our results by considering
random walks, graph clustering, graph drawing and electrical networks,
showing that they all result in the same formalism for handling
negatively weighted edges. We illustrate our methods using examples
from social networks with negative edges and bipartite rating graphs.
The presentation covers sampling theorem, ideal sampling, flat top sampling, natural sampling, reconstruction of signals from samples, aliasing effect, zero order hold, upsampling, downsampling, and discrete time processing of continuous time signals.
This presentation describes the Fourier Transform used in different mathematical and physical applications.
The presentation is at an Undergraduate in Science (math, physics, engineering) level.
Please send comments and suggestions to improvements to solo.hermelin@gmail.com.
More presentations can be found at my website http://www.solohermelin.com.
introduction to pulse shaping and equalization in advanced digital communication, it's characterisation, signal design of band limited signal, design of bandlimited signal for no ISI and design of bandlimited signal with controlled ISI-partial response, linear equalization,
These filters have properties that lie between those of the Butterworth and Chebyshev filters. So it is appropriate to call this kind of filters as transitional Butterworth-Chebyshev filters.
Spectral Analysis of Signed Graphs for Clustering, Prediction and VisualizationJérôme KUNEGIS
We study the application of spectral clustering, prediction and
visualization methods to graphs with negatively weighted edges. We show
that several characteristic matrices of graphs can be extended to graphs
with positively and negatively weighted edges, giving signed spectral
clustering methods, signed graph kernels and network visualization
methods that apply to signed graphs. In particular, we review a signed
variant of the graph Laplacian. We derive our results by considering
random walks, graph clustering, graph drawing and electrical networks,
showing that they all result in the same formalism for handling
negatively weighted edges. We illustrate our methods using examples
from social networks with negative edges and bipartite rating graphs.
Explaining about one of the popular theorems in electrical engineering, Thevenin's theorem. it gives direct idea about the theorem and its different cases of applicability. Some of easy tricks and facts are also included for convenience.
Transfer Function and Mathematical Modeling
Transfer Function
Poles And Zeros of a Transfer Function
Properties of Transfer Function
Advantages and Disadvantages of T.F.
Translation motion
Rotational motion
Translation-Rotation counterparts
Analogy system
Force-Voltage analogy
Force-Current Analogy
Advantages
Example
Short-time homomorphic wavelet estimation UT Technology
Wavelet estimation plays an important role in many seismic processes like impedance inversion, amplitude versus offset (AVO) and full waveform inversion (FWI). Statistical methods of wavelet estimation away from well control are a desirable tool to support seismic signal processing. One of these methods based on Homomorphic analysis has long intrigued as a potentially elegant solution to the wavelet estimation problem. Yet a successful implementation has proven difficult. We propose here a method based short-time homomorphic analysis which includes elements of the classical cepstrum analysis and log spectral averaging. Our proposal increases the number of segments, thus reducing estimation variances. Results show good performance on realistic synthetic examples.
COntents:
Signals & Systems, Classification of Continuous and Discrete Time signals, Standard Continuous and Discrete Time Signals
Block Diagram Representation of System, Properties of System
Linear Time Invariant Systems (LTI)
Convolution, Properties of Convolution, Performing Convolution
Differential and Difference Equation Representation of LTI Systems
Fourier Series, Dirichlit Condition, Determination of Fourier Coefficeints, Wave Symmetry, Exponential Form of Fourier Series
Fourier Transform, Discrete Time Fourier Transform
Laplace Transform, Inverse Laplace Transform, Properties of Laplace Transform
Z-Transform, Properties of Z-Transform, Inverse Z- Transform
Text Book
Signal & Systems (2nd Edition) By A. V. Oppenheim, A. S. Willsky & S. H. Nawa
Signal & Systems
By Prentice Hall
Reference Book
Signal & Systems (2nd Edition)
By S. Haykin & B.V. Veen
Signals & Systems
By Smarajit Gosh
A brief presentation of our work in establishing the MSc in Health Data Science and MSc in Health Informatics programes at Swansea University.
This was presented at the "Best Practices" set of talks at the UK eHealth Week conference (http://ukehealthweek.com/)
A practical workshop focusing on the HANDI-HOPD platform to host and process electronic health records that is to be held at the upcoming Open Innovation Conference (http://www.digitalhealthassembly.com/) in February 2015
A poster for the "Lure of the new" conference that was held in Plymouth University on 20-22 March 2013. The conference marked the launch of Plymouth University's COGNITION institute too. (http://cognition.plymouth.ac.uk/)
An introduction to Digital Image Processing as a continuation of a classic Digital Signal Processing course delivered at the University of Plymouth (2011)
The presentation that accompanied the paper submission to ITAB2010. The paper will become available from IEEE Xplore (http://ieeexplore.ieee.org/Xplore/dynhome.jsp)
This presentation accompanied a practical demonstration of Amazon's Elastic Computing services to CNET students at the University of Plymouth on 16/03/2010.
The practical demonstration involved an obviously parallel problem split on 5 Medium size AMIs. The problem was the calculation of the Clustering Coefficient and the Mean Path Length (Based on the original work done by Watts and Strogatz) for large networks. The code was written in Python taking advantage of the scipy, pyparallel and networkx toolkits
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
The field of Information retrieval (IR) is currently undergoing a transformative shift, at least partly due to the emerging applications of generative AI to information access. In this talk, we will deliberate on the sociotechnical implications of generative AI for information access. We will argue that there is both a critical necessity and an exciting opportunity for the IR community to re-center our research agendas on societal needs while dismantling the artificial separation between the work on fairness, accountability, transparency, and ethics in IR and the rest of IR research. Instead of adopting a reactionary strategy of trying to mitigate potential social harms from emerging technologies, the community should aim to proactively set the research agenda for the kinds of systems we should build inspired by diverse explicitly stated sociotechnical imaginaries. The sociotechnical imaginaries that underpin the design and development of information access technologies needs to be explicitly articulated, and we need to develop theories of change in context of these diverse perspectives. Our guiding future imaginaries must be informed by other academic fields, such as democratic theory and critical theory, and should be co-developed with social science scholars, legal scholars, civil rights and social justice activists, and artists, among others.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
When stars align: studies in data quality, knowledge graphs, and machine lear...
The FFT And Spectral Analysis
1. Spectral Analysis &
The Fourier Transform
Athanasios Anastasiou
Signal Processing and Multimedia
Communications Research Group
University of Plymouth - UK
2. Learning Objectives
• Familiarise yourselves with the Fourier
Transform and its properties
• Make sense of Fourier spectra
• Carry out basic operations on various signals
in MATLAB
– Forward / Inverse Transform
– Visualisation of spectra
3. Topics
• Signals In:
– Time Domain
– Frequency Domain
• The Fourier Transform
• The Fourier Spectra
• Practical application in MATLAB
4. Fourier Transform (?)
• It was named after Jean Baptiste Joseph Fourier (1768 – 1830)
• The Fourier Transform
– Changes the representation of a signal
– Fundamental characteristics of the signal (power, phase) remain the
same, only their representation changes
– Representation (?)
• Time Domain
• Frequency Domain
– Enables us to observe signals and change them far more easily in the
Frequency Domain, than it would be in the Time Domain.
• The same concepts apply similarly to other transforms as well
5. What is so special about the
Fourier Transform?
• An extremely versatile tool
• Time Series Analysis / Processing / Synthesis
– Tidal observations
– Mechanical Vibration Analysis
– Lossy Compression
– Image Reconstruction
– Signal Features / Classification
• Speech Recognition / Animal Species Recognition
– Electromagnetic Spectrum
• SETI
• …and some special cases:
– Fast Fluid Simulation (for computer graphics)
6. Time Domain
Frequency Domain
• One Signal
– x(n)
– Amplitude samples of some quantity over time
• Many Different Representations
– X(ω)
– A series of weights to:
• Trigonometric functions
• Other functions
• How do we pass from one domain to the other?
7. Integral Transforms
Transformed Signal
Signal Kernel (Time Domain)
(Some Domain)
t2
X U t, x(t ) dt Forward Transform
t1
t2
1
xt U ,t X d Inverse Transform
t1
What about the Fourier Transform?
8. The Fourier Transform
Frequency Domain Kernel Time Domain
i2 t
X e x t dt
ei cos i sin Euler’s Formula
Re-expresses the signal x(t) as a series of weights X(ω)
of sinusoids and co-sinusoids of
different frequencies ω
9. The Inverse Fourier Transform
Time Domain Kernel Frequency Domain
xt ei 2 t
X d
Re-composes the signal x(t) as a remix of
sinusoids and co-sinusoids at different frequencies (ω) and
different “strengths” X(ω)
10. The Discrete Fourier Transform
Remember, DSP is all about sampled signals…
N 1 i2 k n
1 N
k e xn
N n 0
k N 1 i2 k n
N
xn e X k
k 0
…and this has some consequences on the properties of the Fourier Transform
(Key properties: Linearity, Periodicity, Shifting, Convolution
Duality, Interpolation, Frequency & Time Scaling)
Please Note:This is the 1-Dimensional case of the Fourier Transform.
It can be generalised to higher dimensions with applications to
Image Processing, Volumetric Data processing and others
11. Digression: Fast Fourier Transform
The Discrete Fourier Transform (DFT) as a matrix operation
X U x
Re U
Im U
Perform The Unique Operations Only
12. Fourier Spectra
• “Spectrum” is another name for X(k)
– The strength X(k) by which sinusoids and co-sinusoids of
frequency k contribute to signal x(t)
• “Fourier Spectrum” is synonymous with “Signal
Spectrum”
– Usually, “Spectral Analysis” refers to observing the Fourier
Spectra of a signal
• Hold on….Fourier Spectra?...There’s more than one?
– Oh, yeah!
13. Fourier Spectra
Ak X k Amplitude
2
Pk X k Power
1 Im X k Phase
k tan
Re X k
Please note:
• X(k) is a complex number
• The power spectrum is not the same as the Amplitude spectrum!
• How do these “spectra” look like and how do we make sense of them?
14. Fourier Spectra
Amplitude Spectrum
Time Domain Frequency Domain
5
1 10
0.8
0.6
0
10
0.4
0.2
X(k)
x(t)
-5
0 10
-0.2
-0.4
-10
10
-0.6
-0.8
-15
-1 10
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0 0.5 1 1.5 2 2.5
time (sec) Frequency x 10
4
What are the units of the Frequency Axis?
Where are the 0, Fs/2 and Fs points on the Frequency Axis?
What can the units of X(k) be?
15. Fourier Spectra
Amplitude Spectrum
Time Domain Frequency Domain
0
1 10
0.8 -2
10
0.6 -4
10
0.4
-6
10
0.2
-8
10
X(k)
x(t)
0
-10
10
-0.2
-12
10
-0.4
-14
10
-0.6
-16
-0.8 10
-18
-1 10
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0 1000 2000 3000 4000 5000 6000 7000 8000
time (sec) Frequency (Hz)
Physical Frequency k
VS f Fs
Normalised Frequency
N
Any general observations on X(k)?
What about the relationship between X(k) and x(t)?
16. Fourier Spectra
Spectral Resolution
Time Domain Frequency Domain
0
1 10
0.8 -2
10
0.6 -4
10
0.4
-6
10
0.2
-8
10
X(k)
x(t)
0
-10
10
-0.2
-12
10
-0.4
-14
10
-0.6
-16
-0.8 10
-18
-1 10
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0 1000 2000 3000 4000 5000 6000 7000 8000
time (sec) Frequency (Hz)
Physical Frequency k
VS f Fs
Normalised Frequency
N
What happens when some (f) falls between two kn,kn+1?
17. Fourier Spectra
Digression: Windowing Functions
To reduce spectral leakage in x(n):
x* n xn W n
X* k F x n *F W n
Where W(n) is some “Window Function”
2 5
1 10 1 10
0.8 0 0.8
10
0
10
0.6 0.6
-2
A
A
10
A
A
0.4 0.4 -5
10
-4
10
0.2 0.2
-10
-6 0 10
0 10 0 50 100 150 0 0.1 0.2 0.3 0.4 0.5
0 50 100 0 0.1 0.2 0.3 0.4 0.5
n k n k
Hamming Window Blackman Window
18. Fourier Spectra
Power Spectrum
Time Domain Frequency Domain
0
1 10
0.8
-5
10
0.6
-10
0.4 10
0.2 -15
10
P(k)
x(t)
0
-20
10
-0.2
-0.4 10
-25
-0.6
-30
10
-0.8
-35
-1 10
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0 1000 2000 3000 4000 5000 6000 7000 8000
time (sec) Frequency (Hz)
What does P(k) shows and what could be its units?
19. Fourier Spectra
Power Spectrum (Parseval’s Theorem)
Time Domain Frequency Domain
0
1 10
0.8
-5
10
0.6
-10
0.4 10
0.2 -15
10
P(k)
x(t)
0
-20
10
-0.2
-0.4 10
-25
-0.6
-30
10
-0.8
-35
-1 10
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0 1000 2000 3000 4000 5000 6000 7000 8000
time (sec) Frequency (Hz)
N 1 N 1
2 1 2
xn X k
n 0 N k 0
20. Fourier Spectra
(Phase)
Time Domain Frequency Domain
1
4
0.8
3
0.6
2
0.4
0.2 1
x(t)
phi(k)
0
0
-0.2
-1
-0.4
-2
-0.6
-0.8 -3
-1 -4
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0 1000 2000 3000 4000 5000 6000 7000 8000
time (sec) Frequency (Hz)
What does the φ(k) axis shows?
21. Fourier Spectra
(Phase)
Time Domain Frequency Domain
4
1 3
2
1
0.8
phi(k)
0
3 -1
-2
0.6 -3
-4
0 1000 2000 3000 4000 5000 6000 7000 8000
Frequency (Hz)
0.4
2
0.2
x(t)
0
1
-0.2
phi(k)
-0.4
0
-0.6
-0.8 -1
X: 440
Y: -1.571
-1
0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016
time (sec)
-2
-3
380 400 420 440 460 480 500 520 540
Frequency (Hz)
What is the phase of x(n)?
22. Fourier Spectra
Summary
Harmonics
Fundamental 5
10
0
10
|A(k)|
-5
10
1
-10
10
0.5
-15
10
0 2000 4000 6000 8000
x(n)
0 Frequency (Hz)
X(k)=F(x(n)) 4
3
-0.5
2
1
-1
phi(k)
0 0.2 0.4 0.6 0.8 1 1.2 1.4
0
time (sec) x 10
-4
-1
-2
-3
-4
0 2000 4000 6000 8000
Frequency (Hz)
0 Hz Fs/2 Hz FsHz
Time Domain Frequency Domain
23. Digression (1): Phase & Phase Shift
• Positive Phase Shift
– x(n)=x(n+a)
– Phase Is Advancing
– Signal Appears Shifted To The LEFT!
• Negative Phase Shift
– x(n)=x(n-a)
– Phase Is Lagging
– Signal Appears Shifted To The RIGHT!
• This is also important for “Filter Causality”
24. Digression(2): The Phase Spectrum!
• The Phase Spectrum is extremely important
– It encodes the “structure” of the signal
– Two signals can have the same A(k)=A1(k)=A2(k) but
different φ1(k), φ2(k)
• This implies two completely different x1(n), x2(n)
• Practical Example
– Draw bars on an Organ
– Additive Sound Synthesis
– The importance of phase in speech enhancement
26. Spectral Analysis &
The Fourier Transform
• We will be using MATLAB
• Create / Acquire Some Signals
• Perform Forward / Inverse Fourier Transform
• Visualise and read the spectra of some basic signals
• Explore some properties of the Fourier Transform
– And their consequences to DSP
• Brief Case Study On Sound Analysis
27. Creating / Acquiring Some Signals
• Task 1 - For some…
– Sampling Fequency Fs (Hz)
– Signal Duration D (Sec)
– Fs=8000; D=3;
n=0:(1./Fs):D;
p=2*pi*n;
• What are the (n) and (p)?
• …generate some basic signals (for some frequency f of your choice)
– x1=sin(f*p); #Sin
– x2=cos(f*p); #Cos
– x3=square(f*p) #...
– x4=sawtooth(f*p); #...
– x5=sawtooth(f*p,0.5); #Triangle
– x6=zeros(size(t));x6(1)=1; #Delta
28. Creating / Acquiring Some Signals
• Task 1.1 - Other signals?
– Text Format
• MATLAB can load a list of numbers very easily through the
command “load”
• Start “Notepad”, enter a coma separated list of
numbers, save the file in your current path, load the file in
MATLAB.
– WAV Format
• Sound files can be acquired from “freesound.org” and be
loaded into your workspace through “wavread”
• Locate a .wav file, load it into matlab using
[x7, Fs]=wavread(‘path/to/some/file.wav’);
29. Digression:
Visualising / Sonifying Some Signals
• Visualisation
– Any time series data
• plot(x*);
– plot(n,x*)
• stem(x*);
• Sonification
– How does a time series of values sounds like?
– sound(x*,Fs)
– soundsc(x*,Fs)
30. The Forward / Inverse Fourier
Transform
• Select some signal (x*) from your workspace
• Perform Forward Fourier Transform
– Fx*=fft(x*);
• Perform Inverse Fourier Transform
– IFx*=ifft(Fx*)
• Please note: The “*” symbol stands for some signal
created in the previous step
• What can we observe about Fx*?
• Was IFx* the same as x?
31. Visualising Signal Spectra
• Task 2
– Select some Fx* from your workspace
– Derive its Amplitude spectrum
• A(Fx*) = abs(Fx*);
– Derive its Power spectrum
• P(Fx*) = abs(Fx*)^2;
– Derive its Phase Spectrum
• Phi(Fx*) = angle(Fx*);
• How do they look like?
– How can we improve their presentation?
• How does the spectrum of the “cos” function looks like?
– How is it different to the sin spectrum?
• How does the spectrum of the “Delta” function looks like?
– Why? What does this mean?
• How does the spectrum of the “square” signal looks like?
32. Exploring Some Properties Of The
Fourier Transform
• Shifting In Time / Frequency
– How would you shift your x(n) by 5 samples in the
time domain?
• x(n)=x(n+5); %Yes…I know…
• But how can it be done through the Fourier Transform?
• After you have shifted your signal
– What was put in the place of these 5 values?
– Why?
33. Brief Case Study Of
Real World Signal Spectra
200
150
100
Amplitude
50
0
-50
-100
-150
0 0.5 1 1.5 2 2.5 3
Sample (n) x 10
4
6
10
5
10
4
10
Amplitude
3
10
2
10
1
10
0
10
0 20 40 60 80 100 120
Frequency (Hz)
Human EEG: “Reading” The Spectrum
Signals courtesy of Javier Escudero Rodriguez
34. What Does The Spectrum “Tells” Us
2
Power Line
Amplitude
Hum / 0
Other
E.M.I. -2
0 20 40 60 80 100 120
Sample (n)
200
Actual Amplitude
Signal 0
From the + xn
Brain -200
0 0.5 1 1.5 2 2.5 3
Sample (n) x 10
4
Heart’s
Amplitude
10
Electrical
Activity 0
-10
7000 7500 8000 8500 9000
Sample (n)
35. Brief Case Study Of
Real World Signal Spectra
0.6
0.4
0.2
Amplitude
0
-0.2
-0.4
-0.6
-0.8
0 500 1000 1500 2000 2500 3000 3500
Sample (n)
5
10
0
10
Amplitude
-5
10
-10
10
-15
10
0 10 20 30 40 50 60 70 80 90 100
Frequency (Hz)
Pendulum Net Acceleration (on Earth): “Reading” The Spectrum
36. What Does The Spectrum “Tells” Us
• Data Acquisition Fault
– The MCU was not sampling the Accelerometer
while writing data to the SD card.
– Phase Modulation
• Very limited actual bandwidth
• Did not have a huge impact on the actual
application because of the nature of the signal
37. Questions for further experimentation
• What is the meaning of the DC component? (0Hz)
– As far as sampled signals are concerned what other condition can lead to a sampled signal of
0Hz Frequency?
• What happens when the FT is evaluated over less / more frequency points than
there are samples in a signal?
• How would the spectra change if the FS was increased / decreased?
• If some x(n) expresses calibrated “Sea Level” measurements sampled every day in
a particular location, what is the unit of the Frequency Axis (k) and what is the
interpretation of the spectrum?
– Is the Frequency Axis still reading in Hz? If not, what can it be interpreted in?
• If some x(n) expressed “Hours Of Sleep” measurements sampled every night for a
particular person over the course of 10 years, what is the unit of the Frequency
Axis (k) and what is the interpretation of the spectrum?
39. Appendix:
Crash Course On Complex Numbers
Real Part Re(Z)
Imaginary Part Im(Z)
The Complex Number (Z): Z a i b
You can think of it as a vector i 1
And because Z is a vector, it has “Magnitude” and “Orientation” (angle)
b
rZ a 2 b2 Z tan
a
And through these, Z can be expressed in “Polar Form”:
z rZ cos Z i sin or z rZ ei Z
The basic operations between two Complex Numbers Z,Y in each form are as follows:
Z a i b, Y c i d
z rZ e i Z , y rY e i Y
Z Y a c i b d
z y rZ rY e i Z Y
Z Y ac bd i bc ad
Z ac bd bc ad
z rZ i
i e Z Y
Y c2 d 2 c2 d 2 y rY
40. Appendix:
Properties Of The Fourier Transform
Please Note: In all of the following properties, capitalised letters are
the Fourier Transforms of the corresponding small case time series
Periodicit
y X k N X k
Convolutio
n xn yn X k Y k and x n y n X k Y k
i2 i2
nm nm
N N
Shifting X k m xn e and x n m X k e
Linearity a xn b yn a X k b Y k
1 k
Scaling xa n X
a a
Editor's Notes
X(k) is not different than x(t), it’s just a different representationAlternative name for series is “a set of coefficients”Need to observe the series of operations. X(k) is evaluated for each k
X(k) is not different than x(t), it’s just a different representation
What is the different between the forward and the inverse Fourier Transform?Point out the differences between the formulas that MATLAB uses. Mention the 1/N term
Please note, you can generate this matrix in MATLAB by typing dftmtx (“doc dftmtx” will tell you all about it)Notice how the matrix is composed of a very small set of coefficients that repeat themselves over and over again.
The frequency axis is not in Hz (yet)Average amplitude WITHIN the window consideredWhat happened here? How has the representation of the signal changed? (Changing one coefficient we change many values in the time domain at once)What is a harmonic?
After applying this transformation we can move between normalised frequency to physical frequency and back.
When the signal (x(n)) contains a frequency that does not fit exactly within one of the “bins” effected by the spectral resolution of the FFT, it is distributed (“spills”) to the nearest “bins”.
Windowing functions are used to reduce “spectral leakage”N=128;NF=512;W=blackman(N);F=fft(W,NF);subplot(121);plot(W);grid on;xlabel('n');ylabel('A');subplot(122);semilogy((1:round(NF./2))./NF,abs(F(1:round(NF./2))));xlabel('k');ylabel('A');grid on
Please note that the power spectrum will be different depending on whether you have added the 1/N term or not.
Parseval’s theorem allows you to produce an equivalent measurement of power from the frequency domain. Please note that the summation (in the frequency domain) does not have to include the whole signal, it could just be a subset of the harmonics that compose the signal.
What sort of phase shift do the +φ1 and –φ1 terms imply?
Please pay attention to the variables Fs, D, n and p we will be re-using them in the next few slides.
plot(n,x*) will provide a plot of x3 in the time domain. That is, a plot of x3 versus the time variable which in our case is n.
Just as we did in the time domain, we now need to “plot” the signal in the frequency domain. And just as we did with the time domain we now need to come up with a “frequency” variable that is equivalent to n.Fv = Fs * (0: (length(x3)-1)./length(x3);plot(Fv,abs(Fx3));Ah! At last we have a plot of the frequency domain (Amplitude of the fourier spectrum abs(Fx3) versus physical frequency Fv). The problem is that because of the way the FFT is calculated, X(k) can contain very big numbers (10^4) along with some very small numbers (0.0001), to get a more objective view of the spectrum we need a way to look at both small and very big numbers on the same scale. We do this by setting the Y axis of our plot (above) to a logarithmic scale:semilogy(Fv,abs(Fx3));Now we can observe both the very low amplitude and very high amplitude harmonics on the same plot.
You can shift your signal in the time domain through the Fourier transform. In fact this is something that you have been doing all the time during your FFT lectures. Can you work out the term and the way through which you could achieve a phase shift of your x(n) just by working with the X(k) coefficients? (You can’t “touch” x(n) –as is suggested in these slides-. You should only work with X(k)….You can add, subtract, multiply, divide or do any other thing you think is necessary ON X(k) ONLY to effect a 5 sample phase shift on x(n))After you have shifted your signal, observe what was put in the place that these 5 samples occupied before. Can you work out an explanation for your observations through the properties of the Fourier Transform? (You can find a small collection of these properties at the appendix of this presentation).
The frequency spectrum X(k) of this signal is telling us a story. It is telling us about things that were occurring during the data acquisition of the signal that we don’t have the chance to observe in the time domain.
…and this is the story that the spectrum tells us. Because of the linearity property of the Fourier Transform (please refer to the appendix), the spectrum in the previous page is a superposition of the spectra of the different phenomena that were going on at the same time during data acquisition. Besides the neurons going on and off inside the person’s head, the EEG is also picking up the variable electric field that is caused by the heart as it beats, pumping blood around the body of the subject*. At the same time, the so called “Mains Noise” has crept up within the recorded signal. The “mains noise” although most of the times we refer to it as a single sinusoid it is not (!), if you notice the spectrum in the previous slide, there are two spectral lines close to the frequency of the power line (50Hz for this part of the world). Their relative powers create a signal that is a bit more complex than a sinusoid and contaminates the signal.Please note, that the cardiac signal was extracted from these same noisy signals by Javier Escudero Rodriguez through a signal processing technique called Independent Component Analysis (ICA). Unfortunately, we do not have the time to cover ICA but it is a very interesting technique and touches upon the concepts of spectral analysis we have been talking about in these lectures. More information on the subject can be found in: http://research.ics.tkk.fi/ica/book/
Can you guess just by looking at the spectrum what is going on with this signal?
Also, an excellent resource that can be used as a quick reference book as well is:http://www.numbertheory.org/book/
DSP text books will usually contain a larger list of the FT properties and you can refer to them depending on your needs. This small collection includes all the properties we will be coming across in these lectures.