41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
import matplotlib.pyplot as plt
|
|
import seaborn as sns
|
|
|
|
import keras
|
|
from keras.models import Sequential
|
|
from keras.layers import Dense, Conv2D , MaxPool2D , Flatten , Dropout
|
|
from keras.preprocessing.image import ImageDataGenerator
|
|
from keras.optimizers import Adam
|
|
|
|
from sklearn.metrics import classification_report,confusion_matrix
|
|
|
|
import tensorflow as tf
|
|
|
|
import cv2
|
|
import os
|
|
|
|
import numpy as np
|
|
|
|
|
|
def main():
|
|
labels = ['house', 'other']
|
|
img_size = 500
|
|
|
|
def get_data(data_dir):
|
|
data = []
|
|
for label in labels:
|
|
path = os.path.join(data_dir, label)
|
|
class_num = labels.index(label)
|
|
for img in os.listdir(path):
|
|
try:
|
|
img_arr = cv2.imread(os.path.join(path, img))[..., ::-1] # Convert BGR to RGB format
|
|
resized_arr = cv2.resize(img_arr, (img_size, img_size)) # Reshaping images to preferred size
|
|
data.append([resized_arr, class_num])
|
|
except Exception as e:
|
|
print(e)
|
|
return np.array(data)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|