-
Notifications
You must be signed in to change notification settings - Fork 0
/
makelabelfiles.py
46 lines (37 loc) · 1.23 KB
/
makelabelfiles.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import numpy as np
import matplotlib.pyplot as pit
import pandas as pd
#import imageio
#import skimage.transform
import pickle
import sys,os
import argparse
from os.path import exists
from os import listdir
#from sklearn.preprocessing import MultiLabelBinarizer
cwd=os.getcwd()
csv_path=os.path.join(cwd,'Data_Entry_2017.csv')
datacsv=pd.read_csv(csv_path)
parser=argparse.ArgumentParser()
parser.add_argument("--dataset",action="store",required=True,help='get path of dataset',dest='dataset')
args=parser.parse_args()
dataset=os.path.join(cwd,args.__dict__['dataset'])
dirs=[x for x in os.listdir(os.path.join(cwd,dataset))]
fnames=list(datacsv['Image Index'])
flabel=list(datacsv['Finding Labels'])
for s in dirs:
tp=os.path.join(dataset,s)
dirs1=[x for x in os.listdir(tp)]
for s1 in dirs1:
txt_file=s1+".txt"
tp1=os.path.join(tp,s1)
labels=[]
data=[]
files=[x for x in os.listdir(tp1) if x.endswith('.png')]
txt_path=os.path.join(tp1,txt_file)
fp=open(txt_path,'w')
for file in files:
for i in range(len(fnames)):
if(fnames[i]==file):
fp.write(fnames[i]+":"+flabel[i]+"\n")
fp.close()