Raw image sequence: Difference between revisions
No edit summary |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 32: | Line 32: | ||
python rawimagesequence.py | python rawimagesequence.py | ||
The outer loop of this script produces each of the 24 individual frames. Each frame has a different brightness calculated from full on (white) to full off (black). | The outer loop of this script produces each of the 24 individual frames. Each frame has a different brightness calculated from full on (white) to full off (black). The frame variable is used to number the files using the special [http://docs.python.org/release/2.5.2/lib/typesseq-strings.html python string formatting operator] (%): | ||
print "hello%04d" % 23 | |||
==> | |||
hello0023 | |||
[[File:RawImageSequenceOutput.png]] | [[File:RawImageSequenceOutput.png]] |
Latest revision as of 13:39, 5 November 2013
Following on from the Raw image example...
# rawimagesequence.py
import struct, sys
width = 320
height = 240
header = struct.pack("<BBBHHBHHHHBB",0,0,2,0,0,8,0,0,width,height,32,1<<5)
totalframes = 25
for frame in xrange(totalframes):
out = open("frame%04d.tga" % frame, "wb")
out.write(header)
for y in xrange(height):
for x in xrange(width):
r = (1.0-(float(frame)/totalframes))*255
g = r
b = r
a = 255
out.write(struct.pack('B', b))
out.write(struct.pack('B', g))
out.write(struct.pack('B', r))
out.write(struct.pack('B', a))
print r
out.close()
python rawimagesequence.py
The outer loop of this script produces each of the 24 individual frames. Each frame has a different brightness calculated from full on (white) to full off (black). The frame variable is used to number the files using the special python string formatting operator (%):
print "hello%04d" % 23 ==> hello0023
You can use Imagemagick (for instance) to convert this to an animated gif:
convert frame* fadetoblack.gif