Update several SE recipes and bash scripts#5327
Conversation
| local/simu_ext_chime4_data_prep.sh --track 6 isolated_6ch_track ${odir}/audio/16kHz | ||
| # (2) {tr05,dt05,et05}_real_isolated_6ch_track | ||
| local/real_ext_chime4_data_prep.sh --track 6 isolated_6ch_track ${CHIME4}/data/audio/16kHz/isolated_6ch_track | ||
|
|
There was a problem hiding this comment.
Will you also update the corresponding results in the README?
There was a problem hiding this comment.
Yes, I can reuse previous models to do the evaluation.
| sed -E "s#isolated_1ch_track/(.*)\.wav#isolated_6ch_track/\1.CH0.wav#g" ${x}_wav.scp > ${x}_spk1_wav.scp | ||
| done | ||
|
|
||
| elif [[ "$track" == "2" ]]; then |
There was a problem hiding this comment.
Can we get the same results if we follow the 6-ch track? If so, we can probably combine 2-ch and 6-ch track. E.g.
# 2-ch track
for ch in $(seq 1 2); do
find ${audio_dir}/ -name "*.CH${ch}.wav" | grep 'tr05_bus_real\|tr05_caf_real\|tr05_ped_real\|tr05_str_real' | sort -u > tr05_real_$enhan.CH${ch}.flist
find ${audio_dir}/ -name "*.CH${ch}.wav" | grep 'dt05_bus_real\|dt05_caf_real\|dt05_ped_real\|dt05_str_real' | sort -u > dt05_real_$enhan.CH${ch}.flist
if $eval_flag; then
find ${audio_dir}/ -name "*.CH${ch}.wav" | grep 'et05_bus_real\|et05_caf_real\|et05_ped_real\|et05_str_real' | sort -u > et05_real_$enhan.CH${ch}.flist
fi
# make a scp file from file list
for x in $list_set; do
cat $x.CH${ch}.flist | awk -F'[/]' '{print $NF}'| sed -e "s/\.CH${ch}\.wav/_REAL/" > ${x}_wav.CH${ch}.ids
paste -d" " ${x}_wav.CH${ch}.ids $x.CH${ch}.flist | sort -k 1 > ${x}_wav.CH${ch}.scp
done
done
for x in $list_set; do
sed -E "s#${audio_dir}/(.*)\.CH1.wav#${audio_dir}/\1.CH0.wav#g" ${x}_wav.CH1.scp > ${x}_spk1_wav.scp
mix-mono-wav-scp.py ${x}_wav.CH{1,2}.scp > ${x}_wav.scp
done
There was a problem hiding this comment.
No, actually only the 1ch and 2ch tracks provide the audio list, while the 6ch track does not. So we have to use different logic to prepare the data.
| paste -d" " ${x}_wav.ids $x.flist | sort -k 1 > ${x}_wav.scp | ||
| paste -d" " ${x}_wav.ids ${x}_spk1.flist | sort -k 1 > ${x}_spk1_wav.scp | ||
| done | ||
|
|
There was a problem hiding this comment.
A stupid question at line 111, why was CH2 not included?
There was a problem hiding this comment.
It is a convention for the CHiME-4 data because of microphone failures.
There was a problem hiding this comment.
I see. Do you use CH2 in 2-ch track?
There was a problem hiding this comment.
No, the channels are specified by the official audio list.
There was a problem hiding this comment.
CH2 is on the back side of the tablet, and the recording condition is the worst and also different from the others. Thus, we usually do not include them in enhancement (but we include them in ASR training)
| sed -E "s#\.Clean\.wav#\.Noise\.wav#g" ${x}_spk1_wav.scp > ${x}_noise_wav.scp | ||
| done | ||
|
|
||
| elif [[ "$track" == "2" ]]; then |
There was a problem hiding this comment.
Similar to the above. Can we merge 2-ch and 6-ch track?
There was a problem hiding this comment.
No, actually only the 1ch and 2ch tracks provide the audio list, while the 6ch track does not. So we have to use different logic to prepare the data.
egs2/librimix/enh1/local/data.sh
Outdated
|
|
||
| mkdir -p data/local | ||
| for dset in "train-clean-100" "train-clean-360" "dev-clean" "test-clean"; do | ||
| for reader_dir in $(find -L "${LIBRISPEECH}/${dset}" -mindepth 1 -maxdepth 1 -type d | sort); do |
There was a problem hiding this comment.
can we simply reuse librispeech/asr1/local/data_prep.sh here?
There was a problem hiding this comment.
I try to minimize the data needed for the data preparation here. For this data, we only need the clean data to prepare the transcript here.
There was a problem hiding this comment.
I think it is called on every single set.
if [ ${stage} -le 2 ] && [ ${stop_stage} -ge 2 ]; then
log "stage 2: Data Preparation"
for part in dev-clean test-clean dev-other test-other train-clean-100 train-clean-360 train-other-500; do
# use underscore-separated names in data directories.
local/data_prep.sh ${LIBRISPEECH}/LibriSpeech/${part} data/${part//-/_}
done
fi
There was a problem hiding this comment.
OK. Now I reused it.
Codecov Report
@@ Coverage Diff @@
## master #5327 +/- ##
==========================================
+ Coverage 72.52% 76.21% +3.68%
==========================================
Files 658 669 +11
Lines 59156 59565 +409
==========================================
+ Hits 42902 45395 +2493
+ Misses 16254 14170 -2084
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 73 files with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
This PR updates some SE recipes to add more subsets or data files:
egs2/chime4/enh1: added the dev and test subsets for the 2ch trackegs2/librimix/enh1: added data preparation of the transcriptions; updated README.md