hetchyy/quranic-universal-ayahs
收藏Hugging Face2026-03-28 更新2026-03-29 收录
下载链接:
https://hf-mirror.com/datasets/hetchyy/quranic-universal-ayahs
下载链接
链接失效反馈官方服务:
资源简介:
---
license: apache-2.0
task_categories:
- automatic-speech-recognition
language:
- ar
tags:
- quran
- recitation
- forced-alignment
- word-timestamps
- audio-segmentation
- speech-recognition
- asr
- vad
- phoneme
version: v0.2.2
pretty_name: Qur'anic Universal Ayahs
size_categories:
- 1K<n<10K
configs:
- config_name: hafs_an_asim
data_files:
- split: minshawy_murattal
path: hafs_an_asim/minshawy_murattal-*
- split: ali_jaber
path: hafs_an_asim/ali_jaber-*
dataset_info:
config_name: hafs_an_asim
features:
- name: audio
dtype: audio
- name: surah
dtype: int32
- name: ayah
dtype: int32
- name: text
dtype: string
- name: segments
sequence:
sequence: int32
- name: words
sequence:
sequence: int32
splits:
- name: minshawy_murattal
num_bytes: 1571705367
num_examples: 6236
- name: ali_jaber
num_bytes: 0
num_examples: 6236
download_size: 1569809077
dataset_size: 1571705367
---
<p align="center">
<a href="https://huggingface.co/spaces/hetchyy/Quran-multi-aligner"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Demo-Qur'an%20Multi--Aligner-yellow" alt="Demo - Qur'an Multi-Aligner"></a>
<a href="https://huggingface.co/spaces/hetchyy/Quran-reciter-requests"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Request-New%20Reciter-ff69b4" alt="Request - New Reciter"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio/releases/latest"><img src="https://img.shields.io/github/v/release/Wider-Community/quranic-universal-audio?label=Release" alt="Latest Release"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio/blob/main/data/RECITERS.md"><img src="https://img.shields.io/badge/Reciters-337%20Available%20%7C%202%20Aligned-green" alt="Reciters"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio/blob/main/data/RECITERS.md"><img src="https://img.shields.io/badge/Riwayat-14%20%2F%2020-green" alt="Riwayat"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-Apache%202.0-orange" alt="License"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio"><img src="https://img.shields.io/github/stars/Wider-Community/quranic-universal-audio?style=social" alt="GitHub stars"></a>
</p>
# Qur'anic Universal Ayahs
Word-level aligned Qur'an recitation audio with precise timestamps derived from phoneme-level forced alignment.
## Dataset Description
Each row is one verse (ayah) of the Qur'an, with:
- **Audio clip** of the verse recitation, trimmed to speech boundaries
- **Word-level timestamps** in milliseconds, relative to the audio clip
- **Pause-based segments** showing how the recitation was naturally divided by silences
- **Arabic text** from alignment matching (reflects what was actually recited, including any repetitions)
## Usage
```python
from datasets import load_dataset
# Load a specific reciter (subset = riwayah, split = reciter)
ds = load_dataset("hetchyy/quranic-universal-ayahs", "hafs_an_asim", split="minshawy_murattal")
# Access a verse
verse = ds[0]
print(verse["surah"], verse["ayah"]) # 1 1
print(verse["text"]) # Arabic text
print(verse["words"]) # [[1, 0, 400], [2, 400, 800], ...]
# Play audio (in a notebook)
from IPython.display import Audio
Audio(verse["audio"]["array"], rate=verse["audio"]["sampling_rate"])
```
## Schema
| Column | Type | Description |
|--------|------|-------------|
| `audio` | `Audio` | Verse audio clip, trimmed to speech boundaries |
| `hafs_an_asim` | `ali_jaber` | Ali Jaber | 6,236 | everyayah.com |
| `surah` | `int32` | Surah number (1-114) |
| `ayah` | `int32` | Verse number within surah |
| `text` | `string` | Arabic text of the verse from alignment |
| `segments` | `[[int, int, int, int]]` | Pause-based segments (ms, relative to clip) |
| `words` | `[[int, int, int]]` | Word-level timestamps (ms, relative to clip) |
### Column Details
**`segments`** — Each segment is `[word_from, word_to, start_ms, end_ms]`. Represents a continuous speech region between pauses. Word indices are 1-based.
**`words`** — Each word is `[word_index, start_ms, end_ms]`. Word-level timestamps from phoneme-level forced alignment (MFA). Word indices are 1-based.
## Configs
Subset (config) is the riwayah, split is the reciter.
| Subset | Split | Reciter | Verses | Audio Source |
|--------|-------|---------|--------|-------------|
| `hafs_an_asim` | `minshawy_murattal` | Mohamed Siddiq El-Minshawi (Murattal) | 6,236 | everyayah.com |
## Pipeline
Audio is processed through a multi-stage pipeline:
1. **VAD segmentation** — Detect speech regions using a recitation-specific VAD model
2. **Phoneme-level ASR** — CTC-based recognition with wav2vec2
3. **Dynamic programming alignment** — Match recognized phonemes against known Qur'anic reference text
4. **MFA forced alignment** — Montreal Forced Aligner produces phoneme-level timestamps, from which word boundaries are derived
## Notes
- All timestamps are in **milliseconds**, relative to the start of the audio clip
- Word indices are **1-based**
- Word timestamps are padded forward within each segment so there are no gaps between consecutive words. Gaps only occur across segment boundaries (pauses in recitation).
- Text is derived from segment alignment and preserves any repetitions in the recitation
- Audio clips are trimmed to the first/last word boundaries (silence before/after is removed)
## License
[Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0)
license: apache-2.0
task_categories:
- 自动语音识别(Automatic Speech Recognition)
language:
- ar(阿拉伯语)
tags:
- 古兰经(Quran)
- 诵读(recitation)
- 强制对齐(forced-alignment)
- 词级时间戳(word-timestamps)
- 音频分割(audio-segmentation)
- 语音识别(speech-recognition)
- ASR(Automatic Speech Recognition)
- VAD(Voice Activity Detection,语音活动检测)
- 音素(phoneme)
version: v0.2.2
pretty_name: 古兰经通用经文(Qur'anic Universal Ayahs)
size_categories:
- 1K<n<10K
configs:
- config_name: hafs_an_asim
data_files:
- split: minshawy_murattal
path: hafs_an_asim/minshawy_murattal-*
- split: ali_jaber
path: hafs_an_asim/ali_jaber-*
dataset_info:
config_name: hafs_an_asim
features:
- name: audio(音频)
dtype: audio
- name: surah(章号)
dtype: int32
- name: ayah(经文节数)
dtype: int32
- name: text(文本)
dtype: string
- name: segments(分段)
sequence:
sequence: int32
- name: words(词)
sequence:
sequence: int32
splits:
- name: minshawy_murattal
num_bytes: 1571705367
num_examples: 6236
- name: ali_jaber
num_bytes: 0
num_examples: 6236
download_size: 1569809077
dataset_size: 1571705367
<p align="center">
<a href="https://huggingface.co/spaces/hetchyy/Quran-multi-aligner"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Demo-Qur'an%20Multi--Aligner-yellow" alt="Demo - 古兰经多对齐工具"></a>
<a href="https://huggingface.co/spaces/hetchyy/Quran-reciter-requests"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Request-New%20Reciter-ff69b4" alt="Request - 申请新增诵读家"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio/releases/latest"><img src="https://img.shields.io/github/v/release/Wider-Community/quranic-universal-audio?label=Release" alt="Latest Release - 最新版本"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio/blob/main/data/RECITERS.md"><img src="https://img.shields.io/badge/Reciters-337%20Available%20%7C%202%20Aligned-green" alt="Reciters - 可用诵读家337位 | 已对齐2位"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio/blob/main/data/RECITERS.md"><img src="https://img.shields.io/badge/Riwayat-14%20%2F%2020-green" alt="Riwayat - 传述体系14/20"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-Apache%202.0-orange" alt="License - 许可证"></a>
<a href="https://github.com/Wider-Community/quranic-universal-audio"><img src="https://img.shields.io/github/stars/Wider-Community/quranic-universal-audio?style=social" alt="GitHub stars - GitHub星标"></a>
</p>
# 古兰经通用经文数据集(Qur'anic Universal Ayahs)
本数据集包含经词级对齐的古兰经诵读音频,其精确时间戳由音素级强制对齐生成。
## 数据集说明
每一行对应古兰经的一节经文(ayah),包含以下内容:
- **音频片段**:该经文诵读的音频,已裁剪至语音起止边界
- **词级时间戳**:以毫秒为单位,相对于音频片段的起始点
- **基于停顿的分段信息**:展示诵读过程中由自然停顿划分的连续语音区域
- **阿拉伯语文本**:来自对齐匹配的结果,可反映实际诵读内容,包括重复部分
## 使用方法
python
from datasets import load_dataset
# 加载指定诵读家的子集(配置项对应传述体系,拆分集对应诵读家)
ds = load_dataset("hetchyy/quranic-universal-ayahs", "hafs_an_asim", split="minshawy_murattal")
# 访问某一节经文
verse = ds[0]
print(verse["surah"], verse["ayah"]) # 输出示例:1 1(章数1,经文节数1)
print(verse["text"]) # 阿拉伯语文本
print(verse["words"]) # 格式:[[1, 0, 400], [2, 400, 800], ...]
# 在Notebook中播放音频
from IPython.display import Audio
Audio(verse["audio"]["array"], rate=verse["audio"]["sampling_rate"])
## 数据结构
| 列名 | 数据类型 | 描述 |
|--------|------|-------------|
| `audio` | `Audio` | 经文音频片段,已裁剪至语音起止边界 |
| `surah` | `int32` | 章号(1-114) |
| `ayah` | `int32` | 该章内的经文节数 |
| `text` | `string` | 来自对齐匹配的经文章节阿拉伯语文本 |
| `segments` | `[[int, int, int, int]]` | 基于停顿的分段信息(毫秒,相对于音频片段) |
| `words` | `[[int, int, int]]` | 词级时间戳信息(毫秒,相对于音频片段) |
### 列详情
**`segments`(分段信息)**:每个分段的格式为`[起始词索引, 结束词索引, 起始毫秒数, 结束毫秒数]`,代表一次停顿间的连续语音区域。词索引采用1-based(从1开始计数)。
**`words`(词信息)**:每个词的格式为`[词索引, 起始毫秒数, 结束毫秒数]`,时间戳由音素级强制对齐(Montreal Forced Aligner,MFA)生成。词索引采用1-based(从1开始计数)。
## 配置项说明
配置项(subset)对应古兰经诵读的传述体系(riwayah),拆分集(split)对应诵读家。
| 传述体系 | 诵读家拆分集 | 诵读家 | 经文总数 | 音频来源 |
|--------|-------|---------|--------|-------------|
| `hafs_an_asim` | `minshawy_murattal` | 穆罕默德·西迪克·埃尔·明沙维(穆拉塔尔风格诵读) | 6236 | everyayah.com |
## 数据处理流程
音频将通过以下多阶段流程处理:
1. **语音活动检测(VAD)分段**:使用针对诵读场景优化的VAD模型识别语音区域
2. **音素级自动语音识别(ASR)**:基于wav2vec2的CTC(联结主义时间分类)识别
3. **动态规划对齐**:将识别出的音素与已知的古兰经参考文本进行匹配
4. **MFA强制对齐**:通过蒙特利尔强制对齐工具(Montreal Forced Aligner,MFA)生成音素级时间戳,并由此推导词边界信息
## 注意事项
- 所有时间戳单位均为**毫秒**,相对于音频片段的起始点
- 词索引采用**1-based(从1开始计数)**
- 同一分段内的词时间戳会向前补全,确保连续词之间无间隙;仅在分段边界(即诵读停顿处)存在间隙
- 文本来自分段对齐结果,可保留诵读中的所有重复内容
- 音频片段已裁剪至首个和末次词的边界(移除前后的静音片段)
## 许可证
[Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0)
提供机构:
hetchyy


