In [1]:
import json
import numpy as np
from colorthief import ColorThief
from scipy.ndimage import imread
from scipy.misc import imsave
import matplotlib.pyplot as plt
%matplotlib inline

In [5]:
# data_path="/Users/fredhohman/Github/cs-7450/data/color/seasons.json"
# with open(data_path) as json_data:
#     d = json.load(json_data)
#     print len(d['palettes'])
    
# # image = imread('/Users/fredhohman/Github/cs-7450/series.png')
# season1 = image[0:100,:,:]
# season1.shape
# plt.imshow(season1)
# plt.show()

# season1 = image[0:100,:,:]
# season2 = image[100:200,:,:]
# season3 = image[200:300,:,:]
# season4 = image[300:400,:,:]
# season5 = image[400:500,:,:]
# season6 = image[500:600,:,:]

# # imsave('../season1.png',season1)
# # imsave('../season2.png',season2)
# # imsave('../season3.png',season3)
# # imsave('../season4.png',season4)
# # imsave('../season5.png',season5)
# # imsave('../season6.png',season6)

now do this for episodes


In [6]:
def make_episode_list():
    
    episode_list = []

    for season_num in [1, 2, 3, 4, 5, 6]:
        for episode_num in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
            episode = 's' + str(season_num) + 'e' + str(episode_num)
            episode_list.append(episode)
    return episode_list

In [11]:
dir_path = "/Users/fredhohman/Github/cs-7450/data/color-palettes/"
episode_list = make_episode_list()

num_of_chunks = 60
    
for episode in episode_list:
    episode_path = episode + ".png"
    image = imread(dir_path + episode_path)
    
    num_of_frames_in_episode = image.shape[0]/10
    num_of_frames_per_chunk = num_of_frames_in_episode/num_of_chunks
    num_of_pixels_per_chunk = num_of_frames_per_chunk*10
    
    for i in range(0,num_of_chunks):
        image_chunk = image[i*num_of_pixels_per_chunk:(i+1)*num_of_pixels_per_chunk]
        if len(str(i+1))==1:
            imsave("/Users/fredhohman/Github/cs-7450/data/color-palettes-chunk-temp/" + str(episode) + 
           "/" +"chunk0" + str(i+1) + ".png", image_chunk)
        if len(str(i+1))>1:
            imsave("/Users/fredhohman/Github/cs-7450/data/color-palettes-chunk-temp/" + str(episode) + 
               "/" +"chunk" + str(i+1) + ".png", image_chunk)

testing below


In [38]:
num_of_chunks = 60

In [39]:
num_of_frames_in_episode = image.shape[0]/10

In [40]:
num_of_frames_per_chunk = num_of_frames_in_episode/num_of_chunks
num_of_frames_per_chunk


Out[40]:
61

In [41]:
num_of_pixels_per_chunk = num_of_frames_per_chunk*10

In [42]:
plt.imshow(image[59*num_of_pixels_per_chunk:60*num_of_pixels_per_chunk])


Out[42]:
<matplotlib.image.AxesImage at 0x114a36790>

In [48]:
for i in range(0,15):
    image_chunk = image[i*num_of_pixels_per_chunk:(i+1)*num_of_pixels_per_chunk]
    imsave("/Users/fredhohman/Github/cs-7450/data/color-palettes-chunk-temp/s1e1/"+"chunk" + str(i+1) + ".png", image_chunk)

Avatar


In [39]:
data_path="/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/avatar/avatar.json"
with open(data_path) as json_data:
    d = json.load(json_data)
    print(len(d['palettes']))
    
num_of_chunks = 60*3
    
image = imread('/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/avatar/avatar.png')

num_of_frames_in_episode = int(image.shape[0]/10)
num_of_frames_per_chunk = int(num_of_frames_in_episode/num_of_chunks)
num_of_pixels_per_chunk = num_of_frames_per_chunk*10

for i in range(0,num_of_chunks):
    image_chunk = image[i*num_of_pixels_per_chunk:(i+1)*num_of_pixels_per_chunk]

    if len(str(i+1))==1:
        imsave("/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/avatar/color-palettes-chunk-temp/"
               +"chunk00" + str(i+1) + ".png", image_chunk)
    if len(str(i+1))==2:
        imsave("/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/avatar/color-palettes-chunk-temp/"
               +"chunk0" + str(i+1) + ".png", image_chunk)
    if len(str(i+1))>2:
        imsave("/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/avatar/color-palettes-chunk-temp/"
               +"chunk" + str(i+1) + ".png", image_chunk)


10690

one off movies


In [3]:
data_path="/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/nemo/nemo.json"
with open(data_path) as json_data:
    d = json.load(json_data)
    print(len(d['palettes']))
    
num_of_chunks = 60
    
image = imread('/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/nemo/nemo.png')
num_of_frames_in_episode = int(image.shape[0]/10)
num_of_frames_per_chunk = int(num_of_frames_in_episode/num_of_chunks)
num_of_pixels_per_chunk = num_of_frames_per_chunk*10

for i in range(0,num_of_chunks):
    image_chunk = image[i*num_of_pixels_per_chunk:(i+1)*num_of_pixels_per_chunk]

    if len(str(i+1))==1:
        imsave("/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/nemo/color-palettes-chunk60-temp/"
               +"chunk00" + str(i+1) + ".png", image_chunk)
    if len(str(i+1))==2:
        imsave("/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/nemo/color-palettes-chunk60-temp/"
               +"chunk0" + str(i+1) + ".png", image_chunk)
    if len(str(i+1))>2:
        imsave("/Users/fredhohman/Github/a-viz-of-ice-and-fire/data/nemo/color-palettes-chunk60-temp/"
               +"chunk" + str(i+1) + ".png", image_chunk)


6055

In [ ]: