Camera Hacker

:

Add Comment | Related Links | TrackBack
Related Content

FFF file format

Hi,

I am looking for the format and the coding of the thermal file format from Flir. The files have a .FFF extension.
Do you know where I can find it ??

Thanks a lot

Raoul

Raoul
Wed, 31 Aug 2011 13:07:45 +0000

I'd be more interested if you couple provide me with some sample .FFF files to experiment with. I'm trying to write a piece of software that will load FFF files. If you can, please upload some of your .FFF files to mediafire.com and post the download links here. Thanks in advance.

Videogamer555
Fri, 04 Nov 2011 18:30:51 +0000

Hi VideoGamer555

Here is a .FFF file. I manage to read it and to convert it to an image file. But it lacks the temperature information : how can I convert the values into temperatures ?
If you know where I can find this information, please tell me.

Thanks a lot,
Raoul

Attached File: flir0001.FFF (151 KB)

Raoul
Wed, 26 Dec 2012 17:54:17 +0300

I'm currently working on reverse engineering the FFF file format. If you have a thermal imager capable of shooting raw FFF files like the above posted file (not radiometric jpegs, which are jpegs that contain embedded FFF thermal image date in the jpeg's metadata, plus also a standard jpeg image), please take as many FFF pics with your thermal cam as you want and then post them to this thread as a reply. Thanks in advance.

Videogamer555
Sun, 24 Mar 2013 03:46:42 +0300

I've made some good advances in decoding the FFF format. Here are some links for reference:

http://owl.phy.queensu.ca/~phil/exiftool/TagNames/FLIR.html

http://u88.n24.queensu.ca/exiftool/forum/index.php/topic,489 . . .

- Phil

Phil Harvey
Wed, 10 Apr 2013 20:37:03 +0400

I've got a VB6 implementation working, but it doesn't use all the features of the FFF format, and doesn't even compute actual temperature. For that I need to know more of the header format (what temperature related data is stored and where it is stored) and also the equation that is used to calculate temperature from the IR intensity values detected by the thermal imager (both of which FLIR is keeping proprietary). While I've not figured out that part yet. I have discovered through a bit of reverse engineering the format (changing some values and then see what values were changed when viewed by the official FLIR Tools software) the locations of a number of pieces of metadata. Some of these will probably be useful in calculating temperature (such as Emissivity), while others are just interesting info on the camera that took the picture (like serial number and camera model).

Attached to this post is a VB6 Class file (FLIR_FFF_File_Class.cls) that is capable of doing basic loading of raw FFF files, and also raw embedded in JPEG (Radiometric JPEG) files. It gives access to the raw data, and converts it to little endian format so it's easier to use in VB6 without additional conversions. It also allows you to output a "pseudo thermal image" if you give it an input of 16bit per pixel little endian grayscale data (You have to use your own programing routines to convert 3channel 8bit-per-channel data to 1channel 16bit-per-pixel data). When outputting such an image it uses the calibration metadata from the sample FFF file attached to Raoul's post a couple posts ago. This way I can guaranty that it will give reasonable a temperature range in the "pseudo thermal image". The FLIR Tools software will recognize this file and display it, complete with false-color palettes, and even let you take "thermal measurements" of the image.

However its primary purpose is to let you load the raw data from FFF and Radiometric JPEG images. Unfortunately it can't calculate temperature yet (I plan to try to figure that out later), but what it can do is let you see the image that is normally not viewable at all without FLIR software, in an FFF file, or will let you see the higher quality (without artifacts) raw copy of an image in an IR JPEG file (when normally without FLIR software you are stuck with a low quality JPEG image). From here you can create additional software that will let you do these things though, such as write your own code in VB6 to apply a palette to the image to display it in color. I have created such software and will be attaching the source code for it later, but right now I'm just going to attach the VB6 class file.

Attached File: FLIR_FFF_File_Class.cls (22 KB)

Videogamer555
Sun, 04 Aug 2013 05:56:56 +0400

There were a couple bugs in the above posted VB6 class. Attached to this post is the fixed version.

Attached File: 1 - FLIR_FFF_File_Class.cls (22 KB)

Videogamer555
Sun, 04 Aug 2013 11:59:28 +0400

>it can't calculate temperature yet

see this and the following posts for calculating the temperature from 16Bit RAW Values (there is a php script)
http://u88.n24.queensu.ca/exiftool/forum/index.php/topic,489 . . .

Tomas
Mon, 14 Oct 2013 02:54:20 +0400

So it says things like"
T = B / ln(R1/(R2*(S+O))+F)

T = object temperature in Kelvins
S = 16 Bit RAW value
R1 Planck R1 constant
R2 Planck R2 constant
B Planck B constant. Value range 1300 - 1600.
F Planck F constant. Value range 0.5 - 2.
O Planck O (offset) constant. Its a negative value.

But I want to know where to find these values that are input into the formula, like R1, and B. Where in the FFF file are these values stored? And by where I mean byte-offset from the start of the section of the FFF file in which they are found, and also what format they are in (SinglePrecision Floating Point, Double Precision, or maybe 32bit int, or 16bit int, and also endianness). I know the section's offset from the start of the file will be different based on the offsets listed in the header. However I do not know within the section where these different data fields are located, nor in what format or endianness they are stored. Some help here would be very nice.

Videogamer555
Tue, 21 Jan 2014 22:35:16 +0300

Dear Everybody

I am completely new with FLIR and Atlas SDK. As a start point, I would like to know how can I make my FLIR camera store files in FFF format for latter temperature processing?
Converting from stored jpg to FFF is also acceptable but I think in that case, only temperatures for sported points will be available while I need temperature at all pixel location.
It looks like that I will need to program the SDK to do so. I take a look into the example IRImageReaderDemo in Flir Atlats 4.0 but have no clue how I can store image into FFF format.
If you have any experience or examples doing so, please help.

Thank you all very much.

Anh Tuan Hoang
Sun, 11 Dec 2016 17:17:32 +0300

Add Comment | Related Links | TrackBack
Related Content

Did your message disappear? Read the Forums FAQ.

Add Comment

Spam Control | * indicates required field
Your Name: *
E-mail:
Remember Me!
Comment: *
File attachment is optional. Please do not attach a file to your submission unless it is relevent.
Attach File:
(20 MB Max)
Spam Protection: * Answer of 0 - 1?
Click button only once, please!

TrackBack

Send Ping | TrackBack URL | Spam Control

No TrackBacks yet. TrackBack can be used to link this thread to your weblog, or link your weblog to this thread. In addition, TrackBack can be used as a form of remote commenting. Rather than posting the comment directly on this thread, you can posts it on your own weblog. Then have your weblog sends a TrackBack ping to the TrackBack URL, so that your post would show up here.

Messages, files, and images copyright by respective owners.