Update.
authorFrancois Fleuret <francois@fleuret.org>
Sat, 16 Jul 2022 08:47:27 +0000 (10:47 +0200)
committerFrancois Fleuret <francois@fleuret.org>
Sat, 16 Jul 2022 08:47:27 +0000 (10:47 +0200)
picoclvr.py

index 437439e..8771e21 100755 (executable)
@@ -181,9 +181,26 @@ def descr2properties(descr, height = 6, width = 8):
 
 ######################################################################
 
+def nb_missing_properties(descr, height = 6, width = 8):
+    if type(descr) == list:
+        return [ nb_missing_properties(d, height, width) for d in descr ]
+
+    d = descr.split('<img>', 1)
+    if len(d) == 0: return 0
+    d = d[0].strip().split('<sep>')
+    d = [ x.strip() for x in d ]
+
+    missing_properties = set(d) - set(descr2properties(descr, height, width))
+
+    return len(missing_properties)
+
+######################################################################
+
 if __name__ == '__main__':
     descr = generate(nb = 5)
-    print(descr2properties(descr))
+
+    #print(descr2properties(descr))
+    print(nb_missing_properties(descr))
 
     with open('picoclvr_example.txt', 'w') as f:
         for d in descr:
@@ -196,7 +213,7 @@ if __name__ == '__main__':
     import time
 
     start_time = time.perf_counter()
-    descr = generate(10000)
+    descr = generate(nb = 1000)
     end_time = time.perf_counter()
     print(f'{len(descr) / (end_time - start_time):.02f} samples per second')