Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tbmoon/kalman_filter

Kalman Filter in Python (파이썬으로 구현하는 칼만 필터)
https://github.com/tbmoon/kalman_filter

Last synced: 26 days ago
JSON representation

Kalman Filter in Python (파이썬으로 구현하는 칼만 필터)

Awesome Lists containing this project

README

        

# 파이썬으로 구현하는 칼만 필터 (Kalman Filter in Python)
"[칼만 필터는 어렵지 않아 (저자: 김성필 님)](http://www.hanbit.co.kr/store/books/look.php?p_code=B4956047798)"에서 소개된 예제 코드를 파이썬으로 구현합니다.

* 알고리즘은 동일하지만 가독성, 시각화 등을 위해 책의 예시와 다르게 구현한 부분이 있을 수 있습니다.
* 데이터는 저작권 보호를 위해 아래 "데이터 준비"에 따라 [공식 자료실](http://www.hanbit.co.kr/support/supplement_list.html)에서 다운로드하셔야 합니다.
* "Part 02. 칼만 필터 기초"에는 이론을 다루기 때문에 예제 문제 및 구현 과정이 없습니다.
* "Part 05. 고주파 통과 필터와 상보 필터"는 구현을 생략합니다.

![Unscented Kalman Filter](./Ch12.ExtendedKalmanFilter/png/radar_ekf.png)

## 목차 (Contents)
* Part 01. 재귀 필터 (Recursive Filter)
+ [Chapter 01. 평균 필터 (Average Filter)](./Ch01.AverageFilter)
+ [Chapter 02. 이동평균 필터 (Moving Average Filter)](./Ch02.MovingAverageFilter)
+ [Chapter 03. 저주파 통과 필터 (Low-pass Filter)](./Ch03.LowPassFilter)
* Part 02. 칼만 필터 기초 (Basic Kalman Filter)
+ Chapter 04. 칼만 필터 (Kalman Filter)
+ Chapter 05. 추정 과정 (Estimation)
+ Chapter 06. 예측 과정 (Prediction)
+ Chapter 07. 시스템 모델 (System Model)
* Part 03. 칼만 필터 응용 (Application)
+ [Chapter 08. 초간단 칼만 필터 예제 (Simple Example)](./Ch08.SimpleKalmanFilter)
+ [Chapter 09. 위치로 속도 추정하기 (Position to Velocity Estimation)](./Ch09.Pos2VelKF)
+ [Chapter 10. 영상 속의 물체 추적하기 (Object Tracking)](./Ch10.ObjectTrackingKF)
+ [Chapter 11. 기울기 자세 측정하기 (Pose Orientation)](./Ch11.PoseOrientation)
* Part 04. 칼만 필터와 비선형 시스템 (Kalam Filter and Nonlinear System)
+ [Chapter 12. 확장 칼만 필터 (Extended Kalman Filter)](./Ch12.ExtendedKalmanFilter)
+ [Chapter 13. 무향 칼만 필터 (Unscented Kalman Filter)](./Ch13.UnscentedKalmanFilter)
+ [Chapter 14. 파틱클 필터 (Particle Filter)](./Ch14.ParticleFilter)

* Part 05. 고주파 통과 필터와 상보 필터 (High-pass Filter and Complementary Filter)
+ Chapter 15. 고주파 통과 필터 (High-pass Filter)
+ Chapter 16. 상보 필터 (Complementary Filter)

## 발표 슬라이드 (Presentation)
* [재귀 필터 (Recursive Filter)](./Slides/2020.01.08_kf.pdf)
* [칼만 필터 기초 및 초간단 칼만 필터 예제 (Basic Kalman Filter & Simple Example)](./Slides/2020.01.15_kf.pdf)
* [갈만 필터 기초 및 위치로 속도 추정하기 (Basic Kalman Filter & Position to Velocity Estimation)](./Slides/2020.01.22_kf.pdf)
* [무향 칼만 필터 (Unscented Kalman Filter)](./Slides/2020.03.11_ukf.pdf)

## 데이터 준비 (Prerequisite)
* 아래 스크립트를 사용하여 데이터를 [공식 자료실](http://www.hanbit.co.kr/support/supplement_list.html)에서 다운로드한 후 "data" 디렉터리로 옮깁니다.
+ tc 쉘 환경:
```bash
$ ./download_dataset.csh
```
+ bash 쉘 환경:
```bash
$ ./download_dataset.sh
```

## 참고 자료 (Reference)
* 책 (Book): [칼만 필터는 어렵지 않아 with MATLAB Examples (저자: 김성필 님)](http://www.hanbit.co.kr/store/books/look.php?p_code=B4956047798)
* 데이터 (Data): [한빛출판네트워크 자료실 (Hanbit)](http://www.hanbit.co.kr/support/supplement_list.html)
* 발표 자료 모음: [풀잎 스쿨 10기 파이썬으로 구현하는 칼만 필터 Notion](https://www.notion.so/2a75c1d571934fd7b71ee5c4780a6138)
* OpenCV: [데이터 사이언스 스쿨 (Data Science School)](https://datascienceschool.net/view-notebook/f9f8983941254a34bf0fee42c66c5539)
* OpenCV: [pyimagesearch](https://www.pyimagesearch.com/2017/06/19/image-difference-with-opencv-and-python)