https://github.com/isolationkernel/tidkc
Trajectory clustering based on Isolation Distributional Kernel
https://github.com/isolationkernel/tidkc
Last synced: 11 months ago
JSON representation
Trajectory clustering based on Isolation Distributional Kernel
- Host: GitHub
- URL: https://github.com/isolationkernel/tidkc
- Owner: IsolationKernel
- License: gpl-3.0
- Created: 2023-09-19T14:20:38.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-09-19T14:22:11.000Z (over 2 years ago)
- Last Synced: 2024-12-04T06:21:18.448Z (about 1 year ago)
- Language: MATLAB
- Size: 8.98 MB
- Stars: 4
- Watchers: 0
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# IDKC-Trajectory
The new IDK-based clustering algorithm, called IDKC, makes full use of the distributional kernel for trajectory similarity measuring and clustering. IDKC identifies non-linearly separable clusters with irregular shapes and varied densities in linear time.
## Requirements
- Python >= 3.5
- Matlab >= R2019a
## Datasets
All datasets are stored in `./datasets` as .mat files, containing trajectory data and labels.
## Similarity measure & trajectory representation
You can use IDK to generate vector embeddings of trajectories. Run `./IDK/traj_embedding.py` under current directory:
```
python ./IDK/traj_embedding.py
```
## Visualization with MDS
The embedding data is stored in `./embeddings`. You can also use MDS to visualize the embedding result:
```
python ./utils/trajMDS.py
```
## Trajectory clustering with IDKC
After generating the embedding of trajectories, run `./TIDKC/IDKC_traj.mlx` to do clustering.