Coverage for src/bob/pad/face/database/casia_fasd.py: 100%

15 statements  

« prev     ^ index     » next       coverage.py v7.6.5, created at 2024-11-14 23:14 +0100

1import logging 

2 

3from clapper.rc import UserDefaults 

4 

5from bob.bio.base.database.utils import download_file 

6from bob.pad.base.database import FileListPadDatabase 

7from bob.pad.face.database import VideoPadSample 

8 

9logger = logging.getLogger(__name__) 

10rc = UserDefaults("bobrc.toml") 

11 

12 

13def CasiaFasdPadDatabase( 

14 selection_style=None, 

15 max_number_of_frames=None, 

16 step_size=None, 

17 annotation_directory=None, 

18 annotation_type=None, 

19 fixed_positions=None, 

20 **kwargs, 

21): 

22 name = "pad-face-casia-fasd-0b07ea45.tar.gz" 

23 dataset_protocols_path = download_file( 

24 urls=[f"http://www.idiap.ch/software/bob/data/bob/bob.pad.face/{name}"], 

25 destination_filename=name, 

26 destination_sub_directory="protocols/pad", 

27 checksum="0b07ea45", 

28 ) 

29 

30 transformer = VideoPadSample( 

31 original_directory=rc.get("bob.db.casia_fasd.directory"), 

32 annotation_directory=annotation_directory, 

33 selection_style=selection_style, 

34 max_number_of_frames=max_number_of_frames, 

35 step_size=step_size, 

36 ) 

37 

38 database = FileListPadDatabase( 

39 name="casia-fsd", 

40 dataset_protocols_path=dataset_protocols_path, 

41 protocol="grandtest", 

42 transformer=transformer, 

43 **kwargs, 

44 ) 

45 database.annotation_type = annotation_type 

46 database.fixed_positions = fixed_positions 

47 return database