Using FLIR .SEQ files The FLIR1 long-wave infrared camera model T640 was used to collect IR images from the wind tunnel and field experiments at Ft. Jackson. The T640 has a focal plane array uncooled microbolometer with a spectral range of 7.5 to 14µm. Each fire (wind tunnel and field) was recorded using the FLIR T640 camera and each recording was saved as a .SEQ file which is a compact, proprietary format. Using the FLIR_Research_Studio_2024.5.0 software, each .SEQ file was converted to an MP4 movie that can be viewed using a variety of tools. It is possible to extract information from the .SEQ file using Python. FLIR provides a freely available software development kit (SDK) that can be used to extract the stored radiometric data in different formats. The FLIR Science File SDK-2024.5.0 is available for the Windows, MacOS and Linux operating systems. The Python script below provides an example of how the stored data can be extracted from a .SEQ file and written to a .CSV file for further analysis. This example file was created through a combination of example files provided by FLIR and other sources of Python codes. The file is also included as part of the data product. In this example, the data in the imager file are converted from a brightness count to a Celsius temperature using the camera’s factory calibration. In a loop, each frame is then converted into numeric array and the frame, image time and temperature of the pixel in the middle of the 640 x 480 array are output to a .CSV file. import numpy as np import fnv import fnv.reduce import fnv.file import datetime import csv im = fnv.file.ImagerFile('WT87.seq') # open the file im.unit = fnv.Unit.TEMPERATURE_FACTORY # factory calibrated temperature im.temp_type = fnv.TempType.CELSIUS # select Celsius units with open('middle.csv', 'a') as outputfile: writer=csv.writer(outputfile,lineterminator='\n') writer.writerow(["frame","date_time","temperature_celsius"]) for i in range(im.num_frames): im.get_frame(i) # get the next frame now = im.frame_info.time tarray = np.array(im.final, copy=False).reshape((im.height, im.width)) writer.writerow([i+1,now,tarray[320,240]]) # write frame, time and midpoint of array im = None # done with the file 1 The use of trade or firm names in this publication is for reader information and does not imply endorsement by the U.S. Department of Agriculture of any product or service. --------------- ------------------------------------------------------------ --------------- ------------------------------------------------------------