Commit 06deef6a authored by Tiago de Freitas Pereira's avatar Tiago de Freitas Pereira
Browse files

First push

parent 5ad8d606
#!/usr/bin/env python
# vim: set fileencoding=utf-8 :
# @author: Elie Khoury <Elie.Khoury@idiap.ch>
# @date: Thu Aug 22 17:43:04 CEST 2013
#
# Copyright (C) 2012-2014 Idiap Research Institute, Martigny, Switzerland
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, version 3 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
"""
Details about the Voxforge database can be found here:
http://www.voxforge.org/
"""
from .query import Database
from bob.db.verification.filelist.models import File, Client
def get_config():
"""Returns a string containing the configuration information.
"""
import pkg_resources
packages = pkg_resources.require(__name__)
this = packages[0]
deps = packages[1:]
retval = "%s: %s (%s)\n" % (this.key, this.version, this.location)
retval += " - python dependencies:\n"
for d in deps: retval += " - %s: %s (%s)\n" % (d.key, d.version, d.location)
return retval.strip()
# gets sphinx autodoc done right - don't remove it
__all__ = [_ for _ in dir() if not _.startswith('_')]
#!/usr/bin/env python
# vim: set fileencoding=utf-8 :
# Laurent El Shafey <laurent.el-shafey@idiap.ch>
# Fri Aug 23 16:51:41 CEST 2013
#
# Copyright (C) 2011-2014 Idiap Research Institute, Martigny, Switzerland
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, version 3 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
"""Commands the CASIA NIR-VIS 2.0 database can respond to.
"""
import os
import sys
from bob.db.base.driver import Interface as BaseInterface
def dumplist(args):
"""Dumps lists of files based on your criteria"""
from .query import Database
db = Database()
r = db.objects(
purposes=args.purpose,
groups=args.group,
)
output = sys.stdout
if args.selftest:
from bob.db.base.utils import null
output = null()
for f in r:
output.write('%s\n' % f.make_path(directory=args.directory,extension=args.extension))
return 0
def checkfiles(args):
"""Checks existence of files based on your criteria"""
from .query import Database
db = Database()
r = db.objects()
# go through all files, check if they are available on the filesystem
good = []
bad = []
for f in r:
if os.path.exists(f.make_path(args.directory, args.extension)): good.append(f)
else: bad.append(f)
# report
output = sys.stdout
if args.selftest:
from bob.db.base.utils import null
output = null()
if bad:
for f in bad:
output.write('Cannot find file "%s"\n' % f.make_path(args.directory, args.extension))
output.write('%d files (out of %d) were not found at "%s"\n' % \
(len(bad), len(r), args.directory))
return 0
class Interface(BaseInterface):
def name(self):
return 'voxforge'
def version(self):
import pkg_resources # part of setuptools
return pkg_resources.require('bob.db.%s' % self.name())[0].version
def files(self):
return ()
def type(self):
return 'text'
def add_commands(self, parser):
from . import __doc__ as docs
subparsers = self.setup_parser(parser,
"Voxforge database", docs)
import argparse
# the "dumplist" action
parser = subparsers.add_parser('dumplist', help=dumplist.__doc__)
parser.add_argument('-d', '--directory', default='', help="if given, this path will be prepended to every entry returned.")
parser.add_argument('-e', '--extension', default='', help="if given, this extension will be appended to every entry returned.")
parser.add_argument('-u', '--purpose', help="if given, this value will limit the output files to those designed for the given purposes.", choices=('enrol', 'probe', ''))
parser.add_argument('-g', '--group', help="if given, this value will limit the output files to those belonging to a particular protocolar group.", choices=('dev', 'eval', 'world', 'optional_world_1', 'optional_world_2', ''))
parser.add_argument('--self-test', dest="selftest", action='store_true', help=argparse.SUPPRESS)
parser.set_defaults(func=dumplist) #action
# the "checkfiles" action
parser = subparsers.add_parser('checkfiles', help=checkfiles.__doc__)
parser.add_argument('-l', '--list-directory', required=True, help="The directory which contains the file lists.")
parser.add_argument('-d', '--directory', dest="directory", default='', help="if given, this path will be prepended to every entry returned.")
parser.add_argument('-e', '--extension', dest="extension", default='', help="if given, this extension will be appended to every entry returned.")
parser.add_argument('--self-test', dest="selftest", action='store_true', help=argparse.SUPPRESS)
parser.set_defaults(func=checkfiles) #action
This database has 5 protocols.
For the moment only one protocol is developed
CUHK protocol, 188 pairs in total
57 for training
56 for development
75 for testing
photos/f-005-01 f005
sketches/F2-005-01-sz1 f005
photos/f-006-01 f006
sketches/F2-006-01-sz1 f006
photos/f-007-01 f007
sketches/F2-007-01-sz1 f007
photos/f-008-01 f008
sketches/F2-008-01-sz1 f008
photos/f-009-01 f009
sketches/F2-009-01-sz1 f009
photos/f-010-01 f010
sketches/F2-010-01-sz1 f010
photos/f-011-01 f011
sketches/F2-011-01-sz1 f011
photos/f-012-01 f012
sketches/F2-012-01-sz1 f012
photos/f-013-01 f013
sketches/F2-013-01-sz1 f013
photos/f-014-01 f014
sketches/F2-014-01-sz1 f014
photos/f-015-01 f015
sketches/F2-015-01-sz1 f015
photos/f-016-01 f016
sketches/F2-016-01-sz1 f016
photos/f-017-01 f017
sketches/F2-017-01-sz1 f017
photos/f-018-01 f018
sketches/F2-018-01-sz1 f018
photos/f-019-01 f019
sketches/F2-019-01-sz1 f019
photos/f-020-01 f020
sketches/F2-020-01-sz1 f020
photos/f-021-01 f021
sketches/F2-021-01-sz1 f021
photos/f-022-01 f022
sketches/F2-022-01-sz1 f022
photos/f-023-01 f023
sketches/F2-023-01-sz1 f023
photos/f-024-01 f024
sketches/F2-024-01-sz1 f024
photos/f-025-01 f025
sketches/F2-025-01-sz1 f025
photos/f-026-01 f026
sketches/F2-026-01-sz1 f026
photos/f-027-01 f027
sketches/F2-027-01-sz1 f027
photos/f-028-01 f028
sketches/F2-028-01-sz1 f028
photos/f-029-01 f029
sketches/F2-029-01-sz1 f029
photos/f-030-01 f030
sketches/F2-030-01-sz1 f030
photos/f-031-01 f031
sketches/F2-031-01-sz1 f031
photos/f-032-01 f032
sketches/F2-032-01-sz1 f032
photos/f-033-01 f033
sketches/F2-033-01-sz1 f033
photos/f-034-01 f034
sketches/F2-034-01-sz1 f034
photos/f-035-01 f035
sketches/F2-035-01-sz1 f035
photos/f-036-01 f036
sketches/F2-036-01-sz1 f036
photos/f-037-01 f037
sketches/F2-037-01-sz1 f037
photos/f-038-01 f038
sketches/F2-038-01-sz1 f038
photos/f-039-01 f039
sketches/f-039-01-sz1 f039
photos/f-040-01 f040
sketches/f-040-01-sz1 f040
photos/f-041-01 f041
sketches/f-041-01-sz1 f041
photos/f-042-01 f042
sketches/f-042-01-sz1 f042
photos/f-043-01 f043
sketches/f-043-01-sz1 f043
photos/f1-001-01 f1001
sketches/f1-001-01-sz1 f1001
photos/f1-002-01 f1002
sketches/f1-002-01-sz1 f1002
photos/f1-003-01 f1003
sketches/f1-003-01-sz1 f1003
photos/f1-004-01 f1004
sketches/f1-004-01-sz1 f1004
photos/f1-005-01 f1005
sketches/f1-005-01-sz1 f1005
photos/f1-006-01 f1006
sketches/f1-006-01-sz1 f1006
photos/f1-007-01 f1007
sketches/f1-007-01-sz1 f1007
photos/f1-008-01 f1008
sketches/f1-008-01-sz1 f1008
photos/f1-009-01 f1009
sketches/f1-009-01-sz1 f1009
photos/f1-010-01 f1010
sketches/f1-010-01-sz1 f1010
photos/f1-011-01 f1011
sketches/f1-011-01-sz1 f1011
photos/f1-012-01 f1012
sketches/f1-012-01-sz1 f1012
photos/f1-013-01 f1013
sketches/f1-013-01-sz1 f1013
photos/f1-014-01 f1014
sketches/f1-014-01-sz1 f1014
photos/f1-015-01 f1015
sketches/f1-015-01-sz1 f1015
photos/m-008-01 m008
sketches/M2-008-01-sz1 m008
photos/m-009-01 m009
sketches/M2-009-01-sz1 m009
photos/m-010-01 m010
sketches/M2-010-01-sz1 m010
photos/m-011-01 m011
sketches/M2-011-01-sz1 m011
photos/m-012-01 m012
sketches/M2-012-01-sz1 m012
photos/m-013-01 m013
sketches/M2-013-01-sz1 m013
photos/m-014-01 m014
sketches/M2-014-01-sz1 m014
photos/m-015-01 m015
sketches/M2-015-01-sz1 m015
photos/m-016-01 m016
sketches/M2-016-01-sz1 m016
photos/m-017-01 m017
sketches/M2-017-01-sz1 m017
photos/m-018-01 m018
sketches/M2-018-01-sz1 m018
photos/m-019-01 m019
sketches/M2-019-01-sz1 m019
photos/m-021-01 m021
sketches/M2-021-01-sz1 m021
photos/m-022-01 m022
sketches/M2-022-01-sz1 m022
photos/m-023-01 m023
sketches/M2-023-01-sz1 m023
photos/m-024-01 m024
sketches/M2-024-01-sz1 m024
photos/m-025-01 m025
sketches/M2-025-01-sz1 m025
photos/m-026-01 m026
sketches/M2-026-01-sz1 m026
photos/m-027-01 m027
sketches/M2-027-01-sz1 m027
photos/m-028-01 m028
sketches/M2-028-01-sz1 m028
photos/m-029-01 m029
sketches/M2-029-01-sz1 m029
photos/m-030-01 m030
sketches/M2-030-01-sz1 m030
photos/m-031-01 m031
sketches/M2-031-01-sz1 m031
photos/m-032-01 m032
sketches/M2-032-01-sz1 m032
photos/m-033-01 m033
sketches/M2-033-01-sz1 m033
photos/m-034-01 m034
sketches/M2-034-01-sz1 m034
photos/m-035-01 m035
sketches/M2-035-01-sz1 m035
photos/m-036-01 m036
sketches/M2-036-01-sz1 m036
photos/m-037-01 m037
sketches/M2-037-01-sz1 m037
photos/m-038-01 m038
sketches/M2-038-01-sz1 m038
photos/m-039-01 m039
sketches/M2-039-01-sz1 m039
photos/m-040-01 m040
sketches/M2-040-01-sz1 m040
photos/m-041-01 m041
sketches/M2-041-01-sz1 m041
photos/m-042-01 m042
sketches/M2-042-01-sz1 m042
photos/m-043-01 m043
sketches/M2-043-01-sz1 m043
photos/m-044-01 m044
sketches/M2-044-01-sz1 m044
photos/m-045-01 m045
sketches/M2-045-01-sz1 m045
photos/m-046-01 m046
sketches/M2-046-01-sz1 m046
photos/m-047-01 m047
sketches/M2-047-01-sz1 m047
photos/m-048-01 m048
sketches/M2-048-01-sz1 m048
photos/m-049-01 m049
sketches/M2-049-01-sz1 m049
photos/m-050-01 m050
sketches/M2-050-01-sz1 m050
photos/m-051-01 m051
sketches/M2-051-01-sz1 m051
photos/m-052-01 m052
sketches/M2-052-01-sz1 m052
photos/m-053-01 m053
sketches/M2-053-01-sz1 m053
photos/m-054-01 m054
sketches/M2-054-01-sz1 m054
photos/m-055-01 m055
sketches/M2-055-01-sz1 m055
photos/m-056-01 m056
sketches/M2-056-01-sz1 m056
photos/m-057-01 m057
sketches/M2-057-01-sz1 m057
photos/m-058-01 m058
sketches/M2-058-01-sz1 m058
photos/m-059-01 m059
sketches/M2-059-01-sz1 m059
photos/m-060-01 m060
sketches/M2-060-01-sz1 m060
photos/m-061-01 m061
sketches/M2-061-01-sz1 m061
photos/m-062-01 m062
sketches/M2-062-01-sz1 m062
photos/m-063-01 m063
sketches/m-063-01-sz1 m063
photos/m-064-01 m064
sketches/m-064-01-sz1 m064
photos/m-065-01 m065
sketches/m-065-01-sz1 m065
photos/m-066-01 m066
sketches/m-066-01-sz1 m066
photos/m-067-01 m067
sketches/m-067-01-sz1 m067
photos/m-068-01 m068
sketches/m-068-01-sz1 m068
photos/m-069-01 m069
sketches/m-069-01-sz1 m069
photos/m-070-01 m070
sketches/m-070-01-sz1 m070
photos/m-071-01 m071
sketches/m-071-01-sz1 m071
photos/m-072-01 m072
sketches/m-072-01-sz1 m072
photos/m-073-01 m073
sketches/m-073-01-sz1 m073
photos/m-074-01 m074
sketches/m-074-01-sz1 m074
photos/m-075-01 m075
sketches/m-075-01-sz1 m075
photos/m-076-01 m076
sketches/m-076-01-sz1 m076
photos/m-077-01 m077
sketches/m-077-01-sz1 m077
photos/m-078-01 m078
sketches/m-078-01-sz1 m078
photos/m-079-01 m079
sketches/m-079-01-sz1 m079
photos/m-080-01 m080
sketches/m-080-01-sz1 m080
photos/m-081-01 m081
sketches/m-081-01-sz1 m081
photos/m-082-01 m082
sketches/m-082-01-sz1 m082
photos/m-083-01 m083
sketches/m-083-01-sz1 m083
photos/m-084-01 m084
sketches/m-084-01-sz1 m084
photos/m-085-01 m085
sketches/m-085-01-sz1 m085
photos/m-086-01 m086
sketches/m-086-01-sz1 m086
photos/m-087-01 m087
sketches/m-087-01-sz1 m087
photos/m-088-01 m088
sketches/m-088-01-sz1 m088
photos/m-089-01 m089
sketches/m-089-01-sz1 m089
photos/m-090-01 m090
sketches/m-090-01-sz1 m090
photos/m-091-01 m091
sketches/m-091-01-sz1 m091
photos/m-092-01 m092
sketches/m-092-01-sz1 m092
photos/m-093-01 m093
sketches/m-093-01-sz1 m093
photos/m-094-01 m094
sketches/m-094-01-sz1 m094
photos/m-095-01 m095
sketches/m-095-01-sz1 m095
photos/m-096-01 m096
sketches/m-096-01-sz1 m096
photos/m-097-01 m097
sketches/m-097-01-sz1 m097
photos/m-098-01 m098
sketches/m-098-01-sz1 m098
photos/m-099-01 m099
sketches/m-099-01-sz1 m099
photos/m-100-01 m100
sketches/m-100-01-sz1 m100
photos/m1-001-01 m1001
sketches/m1-001-01-sz1 m1001
photos/m1-002-01 m1002
sketches/m1-002-01-sz1 m1002
photos/m1-003-01 m1003
sketches/m1-003-01-sz1 m1003
photos/m1-004-01 m1004
sketches/m1-004-01-sz1 m1004
photos/m1-005-01 m1005
sketches/m1-005-01-sz1 m1005
photos/m1-006-01 m1006
sketches/m1-006-01-sz1 m1006
photos/m1-007-01 m1007
sketches/m1-007-01-sz1 m1007
photos/m1-008-01 m1008
sketches/m1-008-01-sz1 m1008
photos/m1-009-01 m1009
sketches/m1-009-01-sz1 m1009
photos/m1-010-01 m1010
sketches/m1-010-01-sz1 m1010
photos/m-101-01 m101
sketches/m-101-01-sz1 m101
photos/m1-011-01 m1011
sketches/m1-011-01-sz1 m1011
photos/m1-012-01 m1012
sketches/m1-012-01-sz1 m1012
photos/m1-013-01 m1013
sketches/m1-013-01-sz1 m1013
photos/m1-014-01 m1014
sketches/m1-014-01-sz1 m1014
photos/m1-015-01 m1015
sketches/m1-015-01-sz1 m1015
photos/m1-016-01 m1016
sketches/m1-016-01-sz1 m1016
photos/m1-017-01 m1017
sketches/m1-017-01-sz1 m1017
photos/m1-018-01 m1018
sketches/m1-018-01-sz1 m1018
photos/m1-019-01 m1019
sketches/m1-019-01-sz1 m1019
photos/m1-020-01 m1020
sketches/m1-020-01-sz1 m1020
photos/m1-021-01 m1021
sketches/m1-021-01-sz1 m1021
photos/m1-022-01 m1022
sketches/m1-022-01-sz1 m1022
photos/m1-023-01 m1023
sketches/m1-023-01-sz1 m1023
photos/m1-024-01 m1024
sketches/m1-024-01-sz1 m1024
photos/m1-025-01 m1025
sketches/m1-025-01-sz1 m1025
photos/m1-026-01 m1026
sketches/m1-026-01-sz1 m1026
photos/m1-027-01 m1027
sketches/m1-027-01-sz1 m1027
photos/m1-028-01 m1028
sketches/m1-028-01-sz1 m1028
photos/m1-029-01 m1029
sketches/m1-029-01-sz1 m1029
photos/m1-030-01 m1030
sketches/m1-030-01-sz1 m1030
photos/m1-031-01 m1031
sketches/m1-031-01-sz1 m1031
photos/m1-032-01 m1032
sketches/m1-032-01-sz1 m1032
photos/m1-033-01 m1033
sketches/m1-033-01-sz1 m1033
photos/m1-034-01 m1034
sketches/m1-034-01-sz1 m1034
photos/m1-035-01 m1035
sketches/m1-035-01-sz1 m1035
photos/m1-036-01 m1036
sketches/m1-036-01-sz1 m1036
photos/m1-037-01 m1037
sketches/m1-037-01-sz1 m1037
photos/m1-038-01 m1038
sketches/m1-038-01-sz1 m1038
photos/m1-039-01 m1039
sketches/m1-039-01-sz1 m1039
photos/m1-040-01 m1040
sketches/m1-040-01-sz1 m1040
photos/m1-041-01 m1041
sketches/m1-041-01-sz1 m1041
photos/f-015-01 f015 f015
photos/m-055-01 m055 m055
photos/f-007-01 f007 f007
photos/m1-010-01 m1010 m1010
photos/m-048-01 m048 m048
photos/m1-034-01 m1034 m1034
photos/f-031-01 f031 f031
photos/m-014-01 m014 m014
photos/m-065-01 m065 m065
photos/f-006-01 f006 f006
photos/m1-015-01 m1015 m1015
photos/m-088-01 m088 m088
photos/m-037-01 m037 m037
photos/m-073-01 m073 m073
photos/f1-010-01 f1010 f1010
photos/f-010-01 f010 f010
photos/m-041-01 m041 m041
photos/f-036-01 f036 f036
photos/m-071-01 m071 m071
photos/m-012-01 m012 m012
photos/m-026-01 m026 m026
photos/m-010-01 m010 m010
photos/m-016-01 m016 m016
photos/m-034-01 m034 m034
photos/m-087-01 m087 m087
photos/m-035-01 m035 m035
photos/f-018-01 f018 f018
photos/m-057-01 m057 m057
photos/m-052-01 m052 m052
photos/f-013-01 f013 f013
photos/m1-023-01 m1023 m1023
photos/m1-011-01 m1011 m1011
photos/m-072-01 m072 m072
photos/f1-005-01 f1005 f1005
photos/m1-017-01 m1017 m1017
photos/m-054-01 m054 m054
photos/m-013-01 m013 m013
photos/m-045-01 m045 m045
photos/f-033-01 f033 f033
photos/f-021-01 f021 f021
photos/f-038-01 f038 f038
photos/m-053-01 m053 m053
photos/f-030-01 f030 f030
photos/f-027-01 f027 f027
photos/m-056-01 m056 m056
photos/m-064-01 m064 m064
photos/m1-018-01 m1018 m1018
photos/m1-033-01 m1033 m1033
photos/m1-001-01 m1001 m1001
photos/m-046-01 m046 m046
photos/m1-008-01 m1008 m1008
photos/f-040-01 f040 f040
photos/m-068-01 m068 m068
photos/f-029-01 f029 f029
photos/m-027-01 m027 m027
photos/m-084-01 m084 m084
sketches/F2-015-01-sz1 f015
sketches/M2-055-01-sz1 m055
sketches/F2-007-01-sz1 f007
sketches/m1-010-01-sz1 m1010
sketches/M2-048-01-sz1 m048
sketches/m1-034-01-sz1 m1034
sketches/F2-031-01-sz1 f031
sketches/M2-014-01-sz1 m014
sketches/m-065-01-sz1 m065
sketches/F2-006-01-sz1 f006
sketches/m1-015-01-sz1 m1015
sketches/m-088-01-sz1 m088
sketches/M2-037-01-sz1 m037
sketches/m-073-01-sz1 m073
sketches/f1-010-01-sz1 f1010
sketches/F2-010-01-sz1 f010
sketches/M2-041-01-sz1 m041
sketches/F2-036-01-sz1 f036
sketches/m-071-01-sz1 m071
sketches/M2-012-01-sz1 m012
sketches/M2-026-01-sz1 m026
sketches/M2-010-01-sz1 m010
sketches/M2-016-01-sz1 m016
sketches/M2-034-01-sz1 m034
sketches/m-087-01-sz1 m087