[][src]Crate flyr

Flyr is a library for extracting thermal data from FLIR images written fully in Rust. Files can be read with a single function call returning a 2D array with the temperatures in Kelvin.

Flyr's abilities are showcased by Blackbody, a thermogram viewer for Linux. Flyr itself is not tied to a specific OS. The project also has a sibling project in flyr-py, which is Flyr fully written in Python.


This library is available on crates.io. Install by adding flyr = "0.4.0" to your Cargo.toml. The source code can be found in its repository.


Call try_parse_flir on a filepath to extract the thermal data:

use flyr::try_parse_flir;

fn main() {
   // Return value is of type Result<Array<f32, Ix2> std::io::Error>
    let file_path = Path::new("/home/user/FLIR0923.jpg");
    let r_kelvin = try_parse_flir(file_path);

The array structure is provided by https://crates.io/crates/ndarray.


Currently this library has been tested to work with:

  • FLIR E4
  • FLIR E6
  • FLIR E8
  • FLIR E53
  • FLIR E75
  • FLIR T630SC
  • FLIR T660

Camera's found not to work (yet):

  • FLIR E60BX
  • FLIR ThermoCAM B400
  • FLIR ThermaCAM SC640
  • FLIR ThermaCam SC660 WES
  • FLIR ThermaCAM T-400
  • FLIR SC620 Western
  • FLIR T400 (Western)
  • FLIR T640
  • FLIR P660

See also

The ndarray crate for details on how to use ndarrays.



Tries to read a FLIR file, returning a 2D array of f32s from the ndarray crate if successful, otherwise an error.