Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- directory = 'C:\\Users\\stuart.rucker\\Desktop\\python\\CNTK-master\\Examples\\Image\\DataSets\\CustomDataset2\\positive'
- import csv
- import os
- import imghdr
- from PIL import Image
- def get_image_size(fname):
- im=Image.open(fname)
- return im.size # (width,height)
- def createBoundingBox(raw_name,name,xcenter,ycenter,zoom):
- dimensions = get_image_size(os.path.join(directory,name))
- width = dimensions[0]
- height = dimensions[1]
- topleft = (int(xcenter-zoom*.5*width),int(ycenter-zoom*.5*height))
- bottomright = (int(xcenter+zoom*.5*width),int(ycenter+zoom*.5*height))
- f=open(directory + "\\" + raw_name + ".bboxes.tsv", "w+")
- f.write(str(topleft[0]) + "\t" + str(topleft[1]) + "\t" + str(bottomright[0]) + "\t" + str(bottomright[1]) +"\n")
- f.close()
- g = open(directory + "\\" + raw_name + ".bboxes.labels.tsv", "w+")
- g.write("car")
- g.close()
- allfiles = (os.listdir(directory))
- usefulfiles = dict()
- for d in allfiles:
- usefulfiles[d] = False
- queue = []
- with open('data.csv', newline='') as csvfile:
- reader = csv.DictReader(csvfile)
- for row in reader:
- raw_name = (row['LOCATION_ID']+'_'+row['ID']+'_' + ('A' if (row['IMAGE_TYPE']=='OVR1') else 'B'))
- name = raw_name +'.jpg'
- if name in usefulfiles:
- # print(name)
- usefulfiles[name] = True
- queue.append((raw_name,name,int(row['X_CLICK']),int(row['Y_CLICK']),float(row['ZOOM_FACTOR'])))
- # print (usefulfiles)
- for key, value in usefulfiles.items():
- if not value:
- # print(directory)
- os.remove(os.path.join(directory,key))
- print("deleting " + os.path.join(directory,key))
- for event in queue:
- createBoundingBox(event[0],event[1],event[2],event[3],event[4])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement