forked from freder/cinemetrics
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathstills_slitscan.py
49 lines (35 loc) · 920 Bytes
/
stills_slitscan.py
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
45
46
47
48
49
# -*- coding: utf-8 -*-
import cv
import sys
import os
import os.path
OUTPUT_DIR_NAME = "stills_slitscan"
def main():
os.chdir(sys.argv[1])
try:
os.mkdir(OUTPUT_DIR_NAME)
except:
pass
os.chdir("stills")
files = [file for file in os.listdir(os.getcwd()) if not os.path.isdir(file)]
width = None
height = None
output_img = None
for i, file in enumerate( files ):
img = cv.LoadImageM(file)
if i % 100:
print i, "/", len(files)
if i == 0:
width = img.width
height = img.height
output_img = cv.CreateImage((width, len(files)), cv.IPL_DEPTH_8U, 3)
row = cv.GetRow(img, int( (i/len(files))*height ))
for x in range(width):
color = cv.Get1D(row, x)
cv.Set2D(output_img, i, x, color)
cv.SaveImage("..\\" + OUTPUT_DIR_NAME + "\\still_slitscan.png", output_img)
return
# #########################
if __name__ == "__main__":
main()
# #########################