{"cells":[{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"7a3ad454-01b2-fbf5-df01-36aae3db1dc1"},"outputs":[],"source":"import cv2                 # working with, mainly resizing, images\nimport numpy as np         # dealing with arrays\nimport os                  # dealing with directories\nfrom random import shuffle # mixing up or currently ordered data that might lead our network astray in training.\nfrom tqdm import tqdm      # a nice pretty percentage bar for tasks. Thanks to viewer Daniel BA1/4hler for this suggestion\n\nTRAIN_DIR = 'C:/Users/jagrati.shivhare.ITLINFOSYS/Desktop/train'\nTEST_DIR = 'C:/Users/jagrati.shivhare.ITLINFOSYS/Desktop/test'\nIMG_SIZE = 50\nLR = 1e-3\n\nMODEL_NAME = 'dogsvscats-{}-{}.model'.format(LR, '2conv-basic') # just so we remember which saved model is which, sizes must match"},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"4aca1e77-8f2e-765d-668a-3e6d652be4be"},"outputs":[],"source":"def label_img(img):\n    word_label = img.split('.')[-3]\n    # conversion to one-hot array [cat,dog]\n    #                            [much cat, no dog]\n    if word_label == 'cat': return [1,0]\n    #                             [no cat, very doggo]\n    elif word_label == 'dog': return [0,1]"},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"33a4ea67-52d9-0bfe-1880-635d6b6e212a"},"outputs":[],"source":"def create_train_data():\n    training_data = []\n    for img in tqdm(os.listdir(TRAIN_DIR)):\n        label = label_img(img)\n        path = os.path.join(TRAIN_DIR,img)\n        img = cv2.imread(path,cv2.IMREAD_GRAYSCALE)\n        img = cv2.resize(img, (IMG_SIZE,IMG_SIZE))\n        training_data.append([np.array(img),np.array(label)])\n    shuffle(training_data)\n    np.save('C:/Users/jagrati.shivhare.ITLINFOSYS/Desktop/train_data.npy', training_data)\n    return training_data"},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"88033ff9-f8c3-f400-9dc1-d124795e0f28"},"outputs":[],"source":"def process_test_data():\n    testing_data = []\n    for img in tqdm(os.listdir(TEST_DIR)):\n        path = os.path.join(TEST_DIR,img)\n        img_num = img.split('.')[0]\n        img = cv2.imread(path,cv2.IMREAD_GRAYSCALE)\n        img = cv2.resize(img, (IMG_SIZE,IMG_SIZE))\n        testing_data.append([np.array(img), img_num])\n        \n    shuffle(testing_data)\n    np.save('C:/Users/jagrati.shivhare.ITLINFOSYS/Desktop/test_data.npy', testing_data)\n    return testing_data"},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"44bc4748-2fe4-6163-19d5-f08b9112583c"},"outputs":[],"source":"train_data = create_train_data()"}],"metadata":{"_change_revision":0,"_is_fork":false,"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":"3.6.0"}},"nbformat":4,"nbformat_minor":0}