Skip to content

Commit b0ffc51

Browse files
authored
Add files via upload
1 parent 6e5560f commit b0ffc51

File tree

3 files changed

+127
-0
lines changed

3 files changed

+127
-0
lines changed
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# -*- coding: utf-8 -*-
2+
"""
3+
Created on Tue Apr 14 13:26:53 2020
4+
5+
@author: Lenovo
6+
"""
7+
8+
9+
import os
10+
import cv2
11+
import numpy as np
12+
#import math
13+
import argparse
14+
from keras.preprocessing.image import ImageDataGenerator
15+
16+
parser = argparse.ArgumentParser()
17+
parser.add_argument('--category' ,type = str ,default = 'covid')
18+
args = parser.parse_args()
19+
category = args.category
20+
21+
def load_images_and_labels(images ,dir):
22+
23+
X_train=[]
24+
i=0
25+
for image in images:
26+
k=image
27+
i=i+1
28+
image=cv2.imread(dir+'/'+image)
29+
image=cv2.resize(image,(224,224))
30+
print(i,k,'is loaded')
31+
X_train.append(image)
32+
33+
X_train=np.asarray(X_train)
34+
return X_train
35+
36+
def augmentation_and_save(images ,dir ,factor ,rotation_range ,save_dir):
37+
X_train=load_images_and_labels(images ,dir)
38+
print(X_train.shape)
39+
dgen=ImageDataGenerator(rotation_range=rotation_range)
40+
aug=dgen.flow(X_train ,save_to_dir=save_dir ,batch_size=1 ,save_prefix='aug',save_format='jpg')
41+
k=X_train.shape[0]
42+
for j in range(factor):
43+
i=0
44+
for X_batch in aug:
45+
if i==k:
46+
break
47+
else:
48+
i=i+1
49+
if __name__ == '__main__':
50+
path = os.path.join('..\covid_cropped\train' ,category)
51+
images = os.listdir(path)
52+
augmentation_and_save(images, path, factor = 1, rotation_range = 30, save_dir = path)

creating_dataset/cropping.py

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# -*- coding: utf-8 -*-
2+
"""
3+
Created on Sat Apr 18 13:14:38 2020
4+
5+
@author: Lenovo
6+
"""
7+
8+
9+
from PIL import Image
10+
import os
11+
12+
13+
def crop_and_save(img_dir ,per_w ,per_h ,save_dir = None):
14+
img = Image.open(img_dir)
15+
width, height = img.size
16+
new_width ,new_height = int(per_w*width) ,int(per_h*height)
17+
left = (width - new_width)/2
18+
top = (height - new_height)/2
19+
right = (width + new_width)/2
20+
bottom = (height + new_height)/2
21+
cropped = img.crop((left ,top ,right ,bottom))
22+
if save_dir is not None:
23+
cropped.save(save_dir)
24+
25+
if __name__ == '__main__':
26+
directory = r'D:\COMPUTERS\AI\spare_copies\covid_dataset'
27+
folders = os.listdir(directory)
28+
for folder in folders:
29+
print(folder)
30+
save_dir = r'D:\COMPUTERS\AI\dataset_and_embeddings\covid_cropped'
31+
os.mkdir(os.path.join(save_dir ,folder))
32+
save_dir = save_dir +'/'+ folder
33+
load_dir = directory +'/'+ folder
34+
for subfolder in os.listdir(load_dir):
35+
print('***',subfolder)
36+
os.mkdir(os.path.join(save_dir ,subfolder))
37+
sub_save_dir = save_dir + '/' + subfolder
38+
present_load_dir = os.path.join(load_dir ,subfolder)
39+
for file in os.listdir(present_load_dir):
40+
file_name = present_load_dir + '/' + file
41+
present_save_dir = sub_save_dir + '/' + file
42+
crop_and_save(file_name ,0.80 ,0.85 ,present_save_dir)

creating_dataset/get_files.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# -*- coding: utf-8 -*-
2+
"""
3+
Created on Mon Apr 13 20:14:07 2020
4+
5+
@author: Lenovo
6+
"""
7+
8+
9+
import os
10+
import shutil
11+
import pandas as pd
12+
import argparse
13+
14+
parser = argparse.ArgumentParser()
15+
parser.add_argument('--virus' ,type = str ,default = 'COVID-19')
16+
parser.add_argument('--x_ray_view' ,type = str ,default = 'PA')
17+
parser.add_argument('--outputDir' ,type = str ,default = r'D:\COMPUTERS\AI\dataset_and_embeddings\covid_dataset\covid')
18+
args = parser.parse_args()
19+
20+
virus = args.virus
21+
x_ray_view = args.x_ray_view
22+
outputDir = args.outputDir
23+
path = r'D:\COMPUTERS\AI\DEEP_LEARNING\COVID\covid-chestxray-dataset'
24+
metadata = r'D:\COMPUTERS\AI\DEEP_LEARNING\COVID\covid-chestxray-dataset\metadata.csv'
25+
26+
metadata_csv = pd.read_csv(metadata)
27+
28+
for (i,row) in metadata_csv.iterrows():
29+
if row['finding'] != virus or row['view'] != x_ray_view:
30+
continue
31+
file_dir = os.path.join(path , row['folder'] ,row['filename'])
32+
out_dir = os.path.join(outputDir ,row['filename'])
33+
shutil.copy(file_dir ,out_dir)

0 commit comments

Comments
 (0)