File size: 1,392 Bytes
561c629
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import os, cv2, shutil, argparse


if __name__ == "__main__":

    # Parse variables available
    parser = argparse.ArgumentParser()
    parser.add_argument('-i', '--input_dir', type = str)
    parser.add_argument('-o', '--store_dir', type = str)
    args  = parser.parse_args()

    input_dir = args.input_dir
    store_dir = args.store_dir

    print("We are doing the 720p Resize check!")

    # File Check
    if os.path.exists(store_dir):
        shutil.rmtree(store_dir)
    os.makedirs(store_dir)

    scale = 4
    num = 0
    for file_name in sorted(os.listdir(input_dir)):
        source_path = os.path.join(input_dir, file_name)
        destination_path = os.path.join(store_dir, file_name)
        img = cv2.imread(source_path)
        h,w,c = img.shape

        if h == 720:
            # It is already 720P so we directly move them
            shutil.copy(source_path, destination_path)
            continue
        elif h < 720:
            print("It is weird that there is an image with height less than 720 ", file_name)
            break
        
        # Else, here we need to resize them (All resize to 720P)

        new_w = int(w*(720/h))
        img_bicubic = cv2.resize(img, (new_w, 720), interpolation=cv2.INTER_CUBIC)
        cv2.imwrite(os.path.join(store_dir, file_name), img_bicubic, [cv2.IMWRITE_PNG_COMPRESSION, 0])

    print("The total resize num is ", num)