kooBH / kaldi-using-pytorch-mfcc

To make kaldi use MFCC of CHiME4 generated by pytorch
0 stars 0 forks source link

scp, ark #1

Open kooBH opened 3 years ago

kooBH commented 3 years ago
F01_050C0103_BUS_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:22
F01_050C0103_CAF_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:8125
F01_050C0103_PED_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:16228
F01_050C0103_STR_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:24331
F01_050C0105_BUS_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:32434
F01_050C0105_CAF_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:40875
F01_050C0105_PED_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:49316
F01_050C0105_STR_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:57757

scp 파일이 해당 ark 파일의 어디서 부터 어디까지가 어떤 파일인지 나타내는 것 같다.

그럼 ark 파일은 여러 파일의 MFCC가 concat 되어 있는 건가? 어떤 순서로?

scp 파일 양식을 알아야한다.

ark를 char로 하나씩 읽어봄

0 : F
1 : 0
2 : 1
3 : _
4 : 0
5 : 5
6 : 0
7 : C
8 : 0
9 : 1
10 : 0
11 : 3
12 : _
13 : B
14 : U
15 : S
16 : _
17 : S
18 : I
19 : M
20 : U
21 :
22 :
23 : B
24 : C
25 : M
26 :
27 : 
28 : )
29 : |
30 : ?
31 : E
32 : ?
33 : +
34 : C
35 : d
36 : 
37 :
38 :
39 :
40 :
41 :

22부터가 데이터의 시작인가? 다음 구간 까지 넘어가보자.

0 : F
1 : 0
2 : 1
3 : _
4 : 0
5 : 5
6 : 0
7 : C
8 : 0
9 : 1
10 : 0
11 : 3
12 : _
13 : B
14 : U
15 : S
16 : _
17 : S
18 : I
19 : M
20 : U
21 :
22 :
23 : B
24 : C
25 : M
26 :
27 : 
28 : )
29 : |
8099 : c
8100 : <
8101 : .
8102 : ?
8103 : F
8104 : 0
8105 : 1
8106 : _
8107 : 0
8108 : 5
8109 : 0
8110 : C
8111 : 0
8112 : 1
8113 : 0
8114 : 3
8115 : _
8116 : C
8117 : A
8118 : F
8119 : _
8120 : S
8121 : I
8122 : M
8123 : U
8124 :
8125 :
8126 : B
8127 : C
8128 : M
8129 :
8130 : ?
8131 : )
8132 : m
8133 : ?
8134 : ?

scp 에는

F01_050C0103_BUS_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:22
F01_050C0103_CAF_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:8125
F01_050C0103_PED_SIMU /home/kbh/kaldi/egs/chime4_mod/s5_6ch_enhan_clean/mfcc/DCUNET_t12_5/raw_mfcc_dt05_simu_DCUNET_t12_5.1.ark:16228

로 22, 8125, 16228 을 명시하였다. 해당하는 부분은 BCM이 시작하는 부분이다.

파일 명은 신경안쓰는 건가? CHiME4 임을 알고있어서 파일명의 길이를 알고있으니 생략하는 것 같다.

kooBH commented 3 years ago

image

스크립트의 표시위치 뒤에 데이터 포맷 (BCM) 다음에 데이터가 전개

BCM : binary compressed matrix

kaldi에 추출 도구가 존재

image

python 에 변환 도구 패키지가 존재 https://pypi.org/project/kaldiio/