#! /usr/bin/env python3 # def dogs_vs_cats_data ( ): #*****************************************************************************80 # ## dogs_vs_cats_data sets up the data files for the dogs_vs_cats computation. # # Licensing: # # This code is distributed under the GNU LGPL license. # # Modified: # # 14 May 2019 # # Author: # # The original text is by Francois Chollet; # some modifications by John Burkardt. # # Reference: # # Francois Chollet, # Deep Learning with Python, # Manning, 2018, # ISBN: 9781617294433. # import keras import os import platform import shutil print ( '' ) print ( 'dogs_vs_cats_data:' ) print ( ' python version: %s' % ( platform.python_version ( ) ) ) print ( ' keras version: %s' % ( keras.__version__ ) ) print ( ' Set up data for dogs_vs_cats computation.' ) # # Set up the cat files. # original_cat_directory = '/Users/burkardt/public_html/datasets/cats' print ( '' ) print ( ' Copying cat data from "%s"' % ( original_cat_directory ) ) cat_train_directory = '/Users/burkardt/public_html/keras_src/dogs_vs_cats_data/train/cats' print ( ' Creating "%s"' % ( cat_train_directory ) ) fnames = [ 'cat.{}.jpg'.format(i) for i in range ( 1000 ) ] for fname in fnames: src = os.path.join ( original_cat_directory, fname ) dst = os.path.join ( cat_train_directory, fname ) shutil.copyfile ( src, dst ) cat_valid_directory = '/Users/burkardt/public_html/keras_src/dogs_vs_cats_data/valid/cats' print ( ' Creating "%s"' % ( cat_valid_directory ) ) fnames = [ 'cat.{}.jpg'.format(i) for i in range ( 1000, 1500 ) ] for fname in fnames: src = os.path.join ( original_cat_directory, fname ) dst = os.path.join ( cat_valid_directory, fname ) shutil.copyfile ( src, dst ) cat_test_directory = '/Users/burkardt/public_html/keras_src/dogs_vs_cats_data/test/cats' print ( ' Creating "%s"' % ( cat_test_directory ) ) fnames = [ 'cat.{}.jpg'.format(i) for i in range ( 1500, 2000 ) ] for fname in fnames: src = os.path.join ( original_cat_directory, fname ) dst = os.path.join ( cat_test_directory, fname ) shutil.copyfile ( src, dst ) # # Set up the dog files. # original_dog_directory = '/Users/burkardt/public_html/datasets/dogs' print ( '' ) print ( ' Copying dog data from "%s"' % ( original_dog_directory ) ) dog_train_directory = '/Users/burkardt/public_html/keras_src/dogs_vs_cats_data/train/dogs' print ( ' Creating "%s"' % ( dog_train_directory ) ) fnames = [ 'dog.{}.jpg'.format(i) for i in range ( 1000 ) ] for fname in fnames: src = os.path.join ( original_dog_directory, fname ) dst = os.path.join ( dog_train_directory, fname ) shutil.copyfile ( src, dst ) dog_valid_directory = '/Users/burkardt/public_html/keras_src/dogs_vs_cats_data/valid/dogs' print ( ' Creating "%s"' % ( dog_valid_directory ) ) fnames = [ 'dog.{}.jpg'.format(i) for i in range ( 1000, 1500 ) ] for fname in fnames: src = os.path.join ( original_dog_directory, fname ) dst = os.path.join ( dog_valid_directory, fname ) shutil.copyfile ( src, dst ) dog_test_directory = '/Users/burkardt/public_html/keras_src/dogs_vs_cats_data/test/dogs' print ( ' Creating "%s"' % ( dog_test_directory ) ) fnames = [ 'dog.{}.jpg'.format(i) for i in range ( 1500, 2000 ) ] for fname in fnames: src = os.path.join ( original_dog_directory, fname ) dst = os.path.join ( dog_test_directory, fname ) shutil.copyfile ( src, dst ) # # Verification: report file counts. # print ( '' ) print ( ' Sanity check, count images:' ) print ( '' ) print ( ' cat training =', len ( os.listdir ( cat_train_directory ) ) ) print ( ' cat validation =', len ( os.listdir ( cat_valid_directory ) ) ) print ( ' cat testing =', len ( os.listdir ( cat_test_directory ) ) ) print ( '' ) print ( ' dog training =', len ( os.listdir ( dog_train_directory ) ) ) print ( ' dog validation =', len ( os.listdir ( dog_valid_directory ) ) ) print ( ' dog testing =', len ( os.listdir ( dog_test_directory ) ) ) # # Terminate. # print ( '' ) print ( 'dogs_vs_cats_data:' ) print ( ' Normal end of execution.' ) return def timestamp ( ): #*****************************************************************************80 # ## TIMESTAMP prints the date as a timestamp. # # Licensing: # # This code is distributed under the GNU LGPL license. # # Modified: # # 06 April 2013 # # Author: # # John Burkardt # # Parameters: # # None # import time t = time.time ( ) print ( time.ctime ( t ) ) return None if ( __name__ == '__main__' ): timestamp ( ) dogs_vs_cats_data ( ) timestamp ( )