Ignore:
Timestamp:
Jul 18, 2016, 10:35:15 AM (3 years ago)
Author:
dferreira
Message:

Otimizing scripts using object serialization.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • internals/2016/aptoideimagesdetector/trunk/Source Code/Illustration2Vector/illustration2vec-master/test.py

    r16305 r16326  
     1# Diogo Ferreira
     2# Aptoide, 2016
     3# This script runs a test on all the images on the files 'aptoide_images/nude' and 'aptoide_images/not_nude'
     4# and categorizes the images as false/true positive/negative. It also contains information about the time.
     5
    16import i2v
    27from datetime import datetime, time
     
    49import os
    510import glob
     11import pickle
    612
    7 
    8 f = open('test.txt','w')
    913
    1014print "Loading Neural Network Model..."
    1115now = datetime.now()
    12 illust2vec = i2v.make_i2v_with_chainer(
     16
     17# Tries to load object with database.
     18# If it does not exist, creates one himself.
     19
     20try:
     21        illust2vec_f = open("illust2vec.pickle", "rb")
     22        illust2vec = pickle.load(illust2vec_f)
     23        illust2vec_f.close()
     24except IOError:
     25        illust2vec = i2v.make_i2v_with_chainer(
    1326    "illust2vec_tag_ver200.caffemodel", "tag_list.json")
     27        save_model = open("illust2vec.pickle", "wb")
     28        pickle.dump(illust2vec, save_model)
     29        save_model.close()
     30
    1431print "Time loading Neural Network Model: "+str(datetime.now()-now)
    1532
    1633global_time = datetime.now()
    1734
     35# True/false positive/negative
    1836fp = 0
    1937fn = 0
    20 p = 0
    21 n = 0
     38tp = 0
     39tn = 0
     40
     41types = ('*.png', '*.jpg')
     42
     43# File to save the results.
     44f = open('test_results.txt','w')
    2245
    2346for image_dir in ('aptoide_images/nude', 'aptoide_images/not_nude'):
    24         for image_file in glob.glob(os.path.join(image_dir,"*.png")):
    25                
    26                 print "Processing image..."+str(image_file)
    27                 now = datetime.now()
     47        for t in types:
     48                for image_file in glob.glob(os.path.join(image_dir,t)):
     49                       
     50                        print "Processing image..."+str(image_file)
     51                        now = datetime.now()
    2852
    29                 img = Image.open(image_file)
    30                 list = illust2vec.estimate_specific_tags([img], ["explicit", "safe"])
    31                 print "Time processing image: "+str(datetime.now()-now)
    32                 f.write('\n')
    33                 f.write('\n')
    34                 f.write(image_file)
    35                 f.write('\n')
    36                 if(list[0]['explicit']>list[0]['safe']):
    37                         print "explicit"
    38                         f.write("explicit")
    39                         p+=1
    40                         if(image_dir=='aptoide_images/not_nude'):
    41                                 fp+=1
    42                 else:
    43                         print "safe"
    44                         f.write("safe")
    45                         n+=1
    46                         if(image_dir=='aptoide_images/nude'):
    47                                 fn+=1
     53                        img = Image.open(image_file)
     54                        list = illust2vec.estimate_specific_tags([img], ["explicit", "safe"])
     55                        print "Time processing image: "+str(datetime.now()-now)
     56                        f.write('\n')
     57                        f.write('\n')
     58                        f.write(image_file)
     59                        f.write('\n')
     60                        if(list[0]['explicit']>list[0]['safe']):
     61                                print "explicit"
     62                                f.write("explicit")
     63                                if(image_dir=='aptoide_images/not_nude'):
     64                                        fp+=1
     65                                else:
     66                                        tp+=1
     67                        else:
     68                                print "safe"
     69                                f.write("safe")
     70                                if(image_dir=='aptoide_images/nude'):
     71                                        fn+=1
     72                                else:
     73                                        tn+=1
    4874
    49 for image_dir in ('aptoide_images/nude', 'aptoide_images/not_nude'):
    50         for image_file in glob.glob(os.path.join(image_dir,"*.jpg")):
    51                
    52                 print "Processing image..."+str(image_file)
    53                 now = datetime.now()
    5475
    55                 img = Image.open(image_file)
    56                 list = illust2vec.estimate_specific_tags([img], ["explicit", "safe"])
    57                 print "Time processing image: "+str(datetime.now()-now)
    58                 f.write('\n')
    59                 f.write('\n')
    60                 f.write(image_file)
    61                 f.write('\n')
    62                 if(list[0]['explicit']>list[0]['safe']):
    63                         print "explicit"
    64                         f.write("explicit")
    65                         p+=1
    66                         if(image_dir=='aptoide_images/not_nude'):
    67                                 fp+=1
    68                 else:
    69                         print "safe"
    70                         f.write("safe")
    71                         n+=1
    72                         if(image_dir=='aptoide_images/nude'):
    73                                 fn+=1
    74 
    75 print "Time processing all"+str(n+p)+"images: "+str(datetime.now()-global_time)
    76 print str(fp)+" of "+str(p)+" false positives"
    77 print str(fn)+" of "+str(n)+" false negatives"
     76print "Time processing all images: "+str(datetime.now()-global_time)
     77print str(fp)+" false positives"
     78print str(fn)+" false negatives"
     79print str(tn)+" true negatives"
     80print str(tp)+" true positives"
    7881
    7982f.close()
Note: See TracChangeset for help on using the changeset viewer.