Update.
[mygpt.git] / picoclvr.py
index 8771e21..19517af 100755 (executable)
@@ -93,7 +93,7 @@ def all_properties(height, width, nb_squares, square_i, square_j, square_c):
 
 ######################################################################
 
-def generate(nb, height = 6, width = 8,
+def generate(nb, height, width,
              max_nb_squares = 5, max_nb_properties = 10,
              many_colors = False):
 
@@ -129,7 +129,7 @@ def generate(nb, height = 6, width = 8,
 
 ######################################################################
 
-def descr2img(descr, height = 6, width = 8):
+def descr2img(descr, height, width):
 
     if type(descr) == list:
         return torch.cat([ descr2img(d, height, width) for d in descr ], 0)
@@ -152,7 +152,7 @@ def descr2img(descr, height = 6, width = 8):
 
 ######################################################################
 
-def descr2properties(descr, height = 6, width = 8):
+def descr2properties(descr, height, width):
 
     if type(descr) == list:
         return [ descr2properties(d, height, width) for d in descr ]
@@ -181,7 +181,7 @@ def descr2properties(descr, height = 6, width = 8):
 
 ######################################################################
 
-def nb_missing_properties(descr, height = 6, width = 8):
+def nb_missing_properties(descr, height, width):
     if type(descr) == list:
         return [ nb_missing_properties(d, height, width) for d in descr ]
 
@@ -190,9 +190,11 @@ def nb_missing_properties(descr, height = 6, width = 8):
     d = d[0].strip().split('<sep>')
     d = [ x.strip() for x in d ]
 
-    missing_properties = set(d) - set(descr2properties(descr, height, width))
+    requested_properties = set(d)
+    all_properties = set(descr2properties(descr, height, width))
+    missing_properties = requested_properties - all_properties
 
-    return len(missing_properties)
+    return (len(requested_properties), len(all_properties), len(missing_properties))
 
 ######################################################################