Fourier-Transform
所属分类:人工智能/神经网络/深度学习
开发工具:Python
文件大小:260KB
下载次数:1
上传日期:2020-05-29 10:34:07
上 传 者:
王玥666
说明: 傅立叶变换(FT)将时间函数(信号)分解为构成它的频率,其方式类似于如何将音乐和弦表示为其组成音符的频率(或音调)。在这个排序库中,我将实现一个通用的傅立叶变换算法,对于>0个的常数a,b,...它能够分解函数f(x)=sin(2apix)+sin(2bpix)...。
作者
Fotios Kapotos-初始工作
这个项目是根据麻省理工学院的许可证授权的-参见LICENSE.md许可证文件以获取详细信息
(The Fourier transform (FT) decomposes a function of time (a signal) into the frequencies that make it up, in a way similar to how a musical chord can be expressed as the frequencies (or pitches) of its constituent notes. In this sort repository I will be implementing a general Fourier Transform algorithm capable of decomposing a function f(x) = sin(2apix) + sin(2bpix) ... for constants a,b,.. > 0.
Authors
Fotios Kapotos - Initial work
This project is licensed under the MIT License - see the LICENSE.md file for details)
文件列表:
CONTRIBUTING (708, 2018-08-28)
LICENSE (1069, 2018-08-28)
__pycache__ (0, 2018-08-28)
__pycache__\utils.cpython-36.pyc (1469, 2018-08-28)
images (0, 2018-08-28)
images\250px-Fourier2.jpg (30133, 2018-08-28)
images\Decomposed_signal1.png (17259, 2018-08-28)
images\Decomposed_signal2.png (17424, 2018-08-28)
images\Decomposed_signal3.png (17696, 2018-08-28)
images\signa2.png (78728, 2018-08-28)
images\signal1.png (43855, 2018-08-28)
images\signal3.png (69693, 2018-08-28)
run.py (672, 2018-08-28)
utils.py (2208, 2018-08-28)
# Fourier Transform
The Fourier transform (FT) decomposes a function of time (a signal) into the frequencies that make it up, in a way similar to how a musical chord can be expressed as the frequencies (or pitches) of its constituent notes. In this sort repository I will be implementing a general Fourier Transform algorithm capable of decomposing a function f(x) = sin(2*a*pi*x) + sin(2*b*pi*x) ... for constants a,b,.. > 0.
Here is an image of the man who came up with this idea.\
## Prerequisites
The Code is written in Python 3.6.5 . If you don't have Python installed you can find it [here](https://www.python.org/downloads/). If you are using a lower version of Python you can upgrade using the pip package, ensuring you have the latest version of pip.
To install pip run in the command Line
```
python -m ensurepip -- default-pip
```
to upgrade it
```
python -m pip install -- upgrade pip setuptools wheel
```
to upgrade Python
```
pip install python -- upgrade
```
Additional Packages that are required are: [Numpy](http://www.numpy.org/) and [MatplotLib](https://matplotlib.org/)\
You can donwload them using [pip](https://pypi.org/project/pip/)
```
pip install numpy MatplotLib
```
or [conda](https://anaconda.org/anaconda/python)
```
conda install numpy MatplotLib
```
## Usage
* Create a fake signal and apply the fourier Transform with ```run.py```
* Basic Usage : ```python run.py -s a b ... ```
* Plots the signal, then the decomposition and saves the figures
* Option:
* ```python run.py -s a b --n True```
* Uses my own implementation of the FFT
## Examples
```python run.py -s 10 20``` \
```python run.py -s 50 200```\
```python run -s 50 100 250 600```\
## Contributing
Please read [CONTRIBUTING](https://github.com/fotisk07/Fourier-Transform/blob/master/CONTRIBUTING) for the process for submitting pull requests.
## Authors
* **Fotios Kapotos** - *Initial work*
This project is licensed under the MIT License - see the [LICENSE.md](https://github.com/fotisk07/fourier-Transform/blob/master/LICENSE) file for details
近期下载者:
相关文件:
收藏者: