Norfair
Lightweight Python library for adding real-time 2D object tracking to any detector.
Features
- 몇줄의 간단한 코드로 다양한 디텍터(Detectron2, YOLOv4등)에 트래킹 기능을 추가
- 트래킹 하는 객체간의 거리 계산 함수를 사용자가 정의 가능
- 복잡한 비디오 처리 파이프라인에도 쉽게 삽입 가능(OpenCV Frame 사용)
Comparison to other trackers
Norfair's contribution to Python's object tracker library repertoire is its ability to work with any object detector by being able to work with a variable number of points per detection, and the ability for the user to heavily customize the tracker by creating their own distance function.
If you are looking for a tracker, here are some other projects worth noting:
- OpenCV includes several tracking solutions like KCF Tracker and MedianFlow Tracker which are run by making the user select a part of the frame to track, and then letting the tracker follow that area. They tend not to be run on top of a detector and are not very robust.
- dlib includes a correlation single object tracker. You have to create your own multiple object tracker on top of it yourself if you want to track multiple objects with it.
- AlphaPose just released a new version of their human pose tracker. This tracker is tightly integrated into their code base, and to the task of tracking human poses.
- SORT and Deep SORT are similar to this repo in that they use Kalman filters (and a deep embedding for Deep SORT), but they are hardcoded to a fixed distance function and to tracking boxes. Norfair also adds some filtering when matching tracked objects with detections, and changes the Hungarian Algorithm for its own distance minimizer. Both these repos are also released under the GPL license, which might be an issue for some individuals or companies because the source code of derivative works needs to be published.