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
|
# -*- coding: utf-8 -*-
import sys
import os
import subprocess
def unstack(path, pref):
sp, er = subprocess.Popen(["tiffsplit", path, pref], universal_newlines=True,
stdout=subprocess.PIPE).communicate()
return er
def stack(imgs):
imgs.insert(0, "tiffcp")
sp, er = subprocess.Popen(imgs, universal_newlines=True,
stdout=subprocess.PIPE).communicate()
return er
if __name__ == '__main__':
# Images originales
paths = ["raws_0.tiff", "raws_1.tiff", "raws_2.tiff"]
for idx, path in enumerate(paths):
im = "_".join(["img", str(idx)])
print "Unstack ", path
uns = unstack(path, im)
if uns is not None:
print uns
sys.exit()
# Les images extraites s'appellent 'img_0aaa.tif', 'img_0aab.tif' ...
for i in range(97, 100):
fls = []
for j in range(3):
fls.append(''.join(['img_', str(j), 'aa', chr(i), '.tif']))
fls.append(''.join(['result_', chr(i), '.tiff']))
# Les nouvelles tiff empilées s'appellerons 'result_a.tiff',
# 'result_b.tif', ...
print "Stack serie:", chr(i)
st = stack(fls)
if st is not None:
print "Failed:", st
print 'done' |
Partager