This project uses the photographs taken by Eadweard Muybridge when he determined if there was a point during a horse’s gallop in which all four hooves were off the ground. He set up ten cameras around a track to capture the different views of a horse mid-gallop. I created a flip book of these photos that allows you to cycle through the photos as if it is a video of the horse running around the track. I learned a few new python commands in order to build this project. OpenCV() is a python package that is used for many vision software programs. CV2.imshow() indicates a window for the function and an image to be shown in that window. This is how I displayed the ten images for my flip book. I also implemented the cv2.WaitKeys() command to wait indefinitely for a user to input something. I first created an empty list called images, which will be where I store my images later on. Next, I created a function that will move the images from my hard drive to the image list. The function contains a list of the image names and a for loop that reads each image using cv2.imread(), checks if the length is zero, in which case it outputs an error message, and then appends that file to the images list. If all files were read in correctly, the for loop generates a message letting the user know that all of the images were read and appended successfully. After reading in the images, I switched to developing the flip book. I established a key that would end the program, “q”, so I know not to use that for anything else, and set the current_index to zero, so it begins at the start of my list of images. Next, I used cv2.imshow() to display my images in a window I called “Flipbook” while the key is not “q”, as that will end the program. I used the chr() function in conjunction with cv2.WaitKeys() to turn this code into a character, since my keys are characters. After that I set the keys to cycles through the images. The “s” key will advance the current_index by one until it reaches the end of the list, in which case it will start again at the beginning. Likewise, the “a” key will decrease the current_index by one until it reaches the beginning, when it will start again at the end of the list. This way the user sees a continual cycle through the images rather than seeing an index error message. The last piece of the function uses the cv2.DestroyAllWindows() command to close any open windows once the user selects the “q” key. Finally, I closed the function at the end of my code. The biggest challenge I had with this project was correctly setting up the current_index once the end of the list was reached. It took many tries and error messages, but I eventually figured it out, and it taught me to strategically and critically think through each line of code that writing.