Commit 84caa9d2 authored by Pavel KORSHUNOV's avatar Pavel KORSHUNOV

modifications for asvspoof2017 competition

parent 4e843d96
Pipeline #7726 passed with stages
in 20 minutes and 9 seconds
......@@ -5,6 +5,7 @@ extractor = bob.bio.spear.extractor.CepstralExtended(
# the parameters emulate the ones in the paper "A Comparison of Features for Synthetic Speech Detection" by
# Md Sahidullah, Tomi Kinnunen, Cemal Hanilci
# keep_only_deltas=False, # keep them as well temporarily
pre_emphasis_coef=0.97, # as per the algorithm implemented in the paper
n_ceps=20, # number of Inversed MFCC coefficients should be 20 - this is the number we cut off from whole Cepstrum
n_filters=20, # number of filters in the bank is also 20
......
......@@ -5,6 +5,7 @@ extractor = bob.bio.spear.extractor.CepstralExtended(
# the parameters are as specified in the paper "A Comparison of Features for Synthetic Speech Detection" by
# Md Sahidullah, Tomi Kinnunen, Cemal Hanilci
# keep_only_deltas=False, # keep them as well temporarily
pre_emphasis_coef=0.97, # as per the algorithm implemented in the paper
n_ceps=20, # number of LFCC coefficients should be 20 - this is the number we cut off from whole Cepstrum
n_filters=20, # number of filters in the bank is also 20
......
......@@ -17,5 +17,6 @@ extractor = bob.bio.spear.extractor.CepstralExtended(
energy_filter =True, # The paper uses power of FFT magnitude
dct_norm = True, # The paper uses normed DCT-II variant
delta_win=1, # the paper computes deltas on window of size 1
# keep_only_deltas=False, # keep them as well temporarily
)
......@@ -5,6 +5,7 @@ extractor = bob.bio.spear.extractor.CepstralExtended(
# the parameters emulate the ones in the paper "A Comparison of Features for Synthetic Speech Detection" by
# Md Sahidullah, Tomi Kinnunen, Cemal Hanilci
# keep_only_deltas=False, # keep them as well temporarily
pre_emphasis_coef=0.97, # as per the algorithm implemented in the paper
n_ceps=20, # number of RFCC coefficients should be 20 - this is the number we cut off from whole Cepstrum
n_filters=20, # number of filters in the bank is also 20
......
......@@ -6,6 +6,7 @@ extractor = bob.bio.spear.extractor.CepstralExtended(
# Md Sahidullah, Tomi Kinnunen, Cemal Hanilci
# SCMC features as per paper that compares different features
# keep_only_deltas=False, # keep them as well temporarily
pre_emphasis_coef=0.97, # as per the algorithm implemented in the paper
n_ceps=20, # number of SCMC coefficients should be 20 - this is the number we cut off from whole Cepstrum
n_filters=20, # number of filters in the bank is also 20
......
......@@ -4,6 +4,7 @@ import bob.bio.spear.extractor
extractor = bob.bio.spear.extractor.CepstralExtended(
# SSFC features as per paper that compares different features
# keep_only_deltas=False, # keep them as well temporarily
pre_emphasis_coef=0.97, # as per the algorithm implemented in the paper
n_ceps=20, # number of SSFC coefficients should be 20 - this is the number we cut off from whole Cepstrum
n_filters=20, # number of filters in the bank is also 20
......
......@@ -4,11 +4,11 @@
# Tue 11 Oct 15:43:22 2016
"""
This is the implementation of ASVspoof2017 Competition database high level interface that can be used in
This is the implementation of ASVspoof2017 Competition database high level interface that can be used in
`bob.bio.base` framework. IMPORTANT: this interface is not suitable for running the verification experiments,
since ASVspoof2017 does not have verification protocols. This interface is just a simple wrapper around
presentation attack detection protocols, providing data for `licit` (real access) and `spoof` (attacks) scenarios,
so that training scripts provided by `bob.bio.base` can be run on this database.
so that training scripts provided by `bob.bio.base` can be run on this database.
Also, this is an extension of a FileList based database interface.
"""
......@@ -79,6 +79,14 @@ class ASVspoof2017BioDatabase(BioDatabase):
if not protocol:
protocol = 'competition'
print (matched_groups)
if protocol == 'largetrain':
protocol = 'competition'
if matched_groups == 'train' or 'train' in matched_groups:
matched_groups = ('train', 'dev')
if matched_groups == 'dev':
matched_groups = 'eval'
print (matched_groups)
correct_purposes = purposes
# licit protocol is for real access data only
if appendix == 'licit':
......
......@@ -59,7 +59,7 @@ class CepstralExtended(Extractor):
keep_only_deltas=True,
log_filter=True,
energy_filter=False,
vad_filter="no_filter", # we do apply any trim filter by default
vad_filter="no_filter", # we do not apply any trim filter by default
normalize_feature_vector = False,
**kwargs
):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment