File size: 1,541 Bytes
c43cc63
 
56956f8
 
c43cc63
56956f8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
---
license: mit
language:
- en
---

# Hyp-OC Model Card

<div align="center">

[**Project Page**]() **|** [**Paper (ArXiv)**]() **|** [**Code**]()


</div>

## Introduction

Hyp-OC, is the first work exploring hyperbolic embeddings for one-class face anti-spoofing (OC-FAS). 
We show that using hyperbolic space helps learn a better decision boundary than the Euclidean counterpart, 
boosting one-class face anti-spoofing performance.

<div  align="center">
<img src='assets/intro_viz.png'>
</div>

## Training Framework

Overview of the proposed pipeline: Hyp-OC. The encoder extracts facial features which are used to estimate the mean of Gaussian 
distribution utilized to sample pseudo-negative points. The real features and pseudo-negative features are then concatenated 
and passed to FCNN for dimensionality reduction. The low-dimension features are mapped to Poincaré Ball using *exponential map*. 
The training objective is to minimize the summation of the proposed loss functions Hyp-PC} and Hyp-CE. The result is a separating 
*gyroplane* beneficial for one-class face anti-spoofing.

<div  align="center">
<img src='assets/main_archi.png'>
</div>

## Usage

The pre-trained weights can be downloaded directly from this repository or using python:
```python
from huggingface_hub import hf_hub_download

hf_hub_download(repo_id="kartiknarayan/hyp-oc", filename="pretrained_weights/vgg_face_dag.pth", local_dir="./")
```

## Citation
```bibtex
Coming soon ...
```

Please check our [GitHub repository]() for complete instructions.