OpenGuitarChordProject Python SDK - A Physics-Aware Guitar Chord Dataset Toolkit
Project description
OGCP-Pilot: A Physics-Aware Guitar Chord Dataset for Robust Recognition
English | 中文介绍
OGCP (Open Guitar Chord Project) Pilot Study v1.0
660 high-fidelity guitar chord samples with physical annotations for domain-robust chord recognition.
Installation
pip install ogcp
Quick Start
from ogcp import OGCPDataset, plot_fretboard
import matplotlib.pyplot as plt
# 1. 加载数据集(首次运行自动从 Hugging Face 下载)
dataset = OGCPDataset(root_dir='dataset/raw')
print(len(dataset)) # 660
# 2. 查看数据集统计
print(dataset.statistics())
# 3. 按和弦类型过滤
dm_dataset = OGCPDataset(root_dir='dataset/raw', chord_filter=['D:min'])
print(len(dm_dataset)) # 只含 Dm 样本
# 4. 获取某个和弦的所有样本
samples = dataset.get_by_chord('C:maj')
sample = samples[0]
print(sample) # ChordSample(C:maj, open/down, fretboard=[x, 3, 2, 0, 1, 0])
# 5. 生成把位图
fig = plot_fretboard(
sample.fretboard,
chord_name=sample.chord_name,
position=sample.position
)
plt.show()
# 6. 查看和弦分布
print(dataset.get_chord_distribution())
For training and inference, see
ml/ml_README.md.
Data Distribution
| Component | Location |
|---|---|
| Code & SDK | This GitHub repo |
| Audio + Annotations | Hugging Face (auto-downloaded to dataset/raw/ on first use) |
Dataset Statistics
| Attribute | Value |
|---|---|
| Total Samples | 660 |
| Chord Classes | 14 |
| Recording Device | Enya NEXG2xCCS |
中文介绍
OGCP (Open Guitar Chord Project) Pilot Study v1.0
660 个高保真吉他和弦样本,包含物理标注,用于鲁棒性和弦识别研究。
安装
pip install ogcp
快速开始
from ogcp import OGCPDataset, plot_fretboard
import matplotlib.pyplot as plt
# 1. 加载数据集(首次运行自动从 Hugging Face 下载)
dataset = OGCPDataset(root_dir='dataset/raw')
print(len(dataset)) # 660
# 2. 查看数据集统计
print(dataset.statistics())
# 3. 按和弦类型过滤
dm_dataset = OGCPDataset(root_dir='dataset/raw', chord_filter=['D:min'])
print(len(dm_dataset)) # 只含 Dm 样本
# 4. 获取某个和弦的所有样本
samples = dataset.get_by_chord('C:maj')
sample = samples[0]
print(sample) # ChordSample(C:maj, open/down, fretboard=[x, 3, 2, 0, 1, 0])
# 5. 生成把位图
fig = plot_fretboard(
sample.fretboard,
chord_name=sample.chord_name,
position=sample.position
)
plt.show()
# 6. 查看和弦分布
print(dataset.get_chord_distribution())
训练与推理说明请见
ml/ml_README.md。
数据分布
| 组件 | 位置 |
|---|---|
| 代码与 SDK | 本 GitHub 仓库 |
| 音频 + 标注文件 | Hugging Face(首次使用时自动下载到 dataset/raw/) |
数据集统计
| 属性 | 数值 |
|---|---|
| 总样本数 | 660 |
| 和弦类别 | 14 |
| 录音设备 | Enya NEXG2xCCS |
Citation / 引用
@dataset{qiao2026ogcp,
author = {Qin Qiao},
title = {OGCP Pilot: A Physics-Aware Guitar Chord Dataset},
year = {2026},
version = {1.0},
publisher = {Zenodo},
doi = {10.5281/zenodo.18979053},
url = {https://doi.org/10.5281/zenodo.18979053}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ogcp-1.0.0.tar.gz.
File metadata
- Download URL: ogcp-1.0.0.tar.gz
- Upload date:
- Size: 13.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2560e7801e1992a42f17ec360d4797e3040d81fbe60d1be80ee3cb675ae57643
|
|
| MD5 |
ba5c5d8252da3e36efb3a07da49a41ec
|
|
| BLAKE2b-256 |
21366e235fc8a46983accde7d04bded132de9aa618020104980cbb4f2712f251
|
File details
Details for the file ogcp-1.0.0-py3-none-any.whl.
File metadata
- Download URL: ogcp-1.0.0-py3-none-any.whl
- Upload date:
- Size: 12.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b685f985d321b8254869903a04af02fea42d3745afe148c1fd7971a674620b72
|
|
| MD5 |
c465bffec3ac44232d4405e621c14c5e
|
|
| BLAKE2b-256 |
7e923478156a30b1a71ddd546aceebc5acfdd90bbbd46aad4148dcb883b9e664
|