From 12ad27feb4b2253c9f480b337da480ebb969b0c0 Mon Sep 17 00:00:00 2001
From: Tiago Freitas Pereira <tiagofrepereira@gmail.com>
Date: Thu, 10 Sep 2020 18:24:19 +0200
Subject: [PATCH] Implemented test case for InceptionResnetV2

---
 .../test/data/inception_resnet_v2_rgb.hdf5     | Bin 0 -> 2560 bytes
 bob/bio/face/test/test_embeddings.py           |  17 +++++++++++++----
 2 files changed, 13 insertions(+), 4 deletions(-)
 create mode 100644 bob/bio/face/test/data/inception_resnet_v2_rgb.hdf5

diff --git a/bob/bio/face/test/data/inception_resnet_v2_rgb.hdf5 b/bob/bio/face/test/data/inception_resnet_v2_rgb.hdf5
new file mode 100644
index 0000000000000000000000000000000000000000..2d0dfba750dfa33fa42b04a68a9b7e8c3c93f1bc
GIT binary patch
literal 2560
zcmeD5aB<`1lHy_j0S*oZ76t(j3y%Lo0Ruz@1C;w8rXT^zV1&{gP<jOugu%!Ff(#52
z5H5ot)O>VxAwjOL3=E8L^U>`wV1XFG0ij085f%a-u8sj9FGqj~1_o#<VqiD{O=nPH
zhQy+x#7YKGN`i=ZKq#_FMg}$paM}hFAagaqW-&5B1Rx{>Ljzb8BoAT0_{<CvVEuv$
z@(hq9tiT}7!604_QO3Z^zyX$LVuBdR0nI7Qj0~`(j^aZhs4&RhuE3~x28Il%N%WzD
z{rp`(IU43T1!nr#J8H{l2#kgR^+TZTbCIo@4ZE$--l==%McC|JQgqYy<kfR~L$@c}
z&Q~tl`)9VrzLKt!Hak}|?%jRx)t;L^FZSrz$k}D+@$T!nchEXcxo>ZK&vM(=1#Elm
zqt5S1UYKWdEoPhT?Bo-+lQ(tjy|a6sZNK8*y>iAadynL4*tQ<(x1D<H)L#Fa?Y5Wi
zsqLM#PkNvHd;8sM9&Xz^J7&$^PvM{U6u(?(YnoqWYha(eH~eM1t?Sz<whU?7`(A8r
zvd#I_VVkO<W%qplU7I5pxc9XlO1D0IPkHZygLiF%CiLtT@%(Oc$KHA0?7-~3pNgDp
zFBi7itk2c6^=!MlHz@A6&8t%;)*Gvj*>GFP*r`9@v^AF!w{b2pv{i6lut)2gjNSeX
z5BB=FRNH1et=-$bE8g~)$B{i}=Jnb}-aEG^H6qwfyL_ds&us;}tA|(a{>&|B+vaSx
zH};g|-c=i_Z8vRxyI0_bk=@aA-)yf(@Y$Vb&D#6(q1fJEzmoR7I?-(Fq8hm8^_EAr
z>2ntEy}i-gru4klo><ka-7kXI+tw!@uwD3m*<PJiX}cG4^80p7wBDnbs<~G-S<5cS
zP-I{5!?U(em+aqry|8J|ynktX^<t#=b@&MGU9f=1##UX#wqrrUUVo-Nd*aKk*z%=m
v?2X}U-di^_*tXWe$0nuo&>pt@{d<G?w%SIywc74~`ev`jTT?rGsq;1fHnK2u

literal 0
HcmV?d00001

diff --git a/bob/bio/face/test/test_embeddings.py b/bob/bio/face/test/test_embeddings.py
index 5c0813a1..78002150 100644
--- a/bob/bio/face/test/test_embeddings.py
+++ b/bob/bio/face/test/test_embeddings.py
@@ -1,18 +1,20 @@
 import bob.bio.face
+import bob.io.base
 import numpy as np
 from bob.pipelines import Sample, wrap
+import pkg_resources
+
 
 def test_facenet():
     from bob.bio.face.embeddings import FaceNetSanderberg
 
     np.random.seed(10)
 
-    transformer = FaceNetSanderberg()    
+    transformer = FaceNetSanderberg()
     # Raw data
     data = np.random.rand(3, 160, 160).astype("uint8")
     output = transformer.transform(data)
     assert output.size == 128, output.shape
-    
 
     # Sample Batch
     sample = Sample(data)
@@ -25,9 +27,15 @@ def test_facenet():
 def test_idiap_inceptionv2_msceleb():
     from bob.bio.face.embeddings import InceptionResnetv2_MsCeleb
 
+    reference = bob.io.base.load(
+        pkg_resources.resource_filename(
+            "bob.bio.face.test", "data/inception_resnet_v2_rgb.hdf5"
+        )
+    )
+
     np.random.seed(10)
     transformer = InceptionResnetv2_MsCeleb()
-    data = np.random.rand(3, 160, 160).astype("uint8")
+    data = (np.random.rand(3, 160, 160) * 255).astype("uint8")
     output = transformer.transform(data)
     assert output.size == 128, output.shape
 
@@ -36,6 +44,7 @@ def test_idiap_inceptionv2_msceleb():
     transformer_sample = wrap(["sample"], transformer)
     output = [s.data for s in transformer_sample.transform([sample])][0]
 
+    assert np.allclose(output, reference)
     assert output.size == 128, output.shape
 
 
@@ -48,7 +57,6 @@ def test_idiap_inceptionv2_casia():
     output = transformer.transform(data)
     assert output.size == 128, output.shape
 
-
     # Sample Batch
     sample = Sample(data)
     transformer_sample = wrap(["sample"], transformer)
@@ -93,6 +101,7 @@ def test_idiap_inceptionv1_casia():
 
 def test_arface_insight_tf():
     import tensorflow as tf
+
     tf.compat.v1.reset_default_graph()
 
     from bob.bio.face.embeddings import ArcFace_InsightFaceTF
-- 
GitLab