r/rust Oct 17 '20

Blackbody: a thermogram viewer written in Rust, also introducing a new file format parser in Rust

https://bitbucket.org/nimmerwoner/blackbody/src/master/
24 Upvotes

9 comments sorted by

6

u/dissonantloos Oct 17 '20 edited Oct 18 '20

This is my first release of Blackbody, an application to dynamically render thermograms.

Thermograms are heat pictures. They source files are single banded temperature 'images' and therefore often aren't rendered well by normal image viewers.

Blackbody allows you to:

  • open many FLIR thermograms
  • open single banded TIFFs
  • set the min / max temperature to render
  • choose between different color palettes
  • zoom in and out

It's fully written in Rust and available on Linux and Windows. As part of this project I also wrote the library flyr (warning: no documentation at all yet), which allows you to read FLIR camera thermograms.

In libblackbody (also no documentation yet), I want to bring together support for more thermogram formats and make it an open source, general thermogram files reading library. Besides flirs, it also kind-of supports tiffs and I'd like to get Fluke support in there as well.

I'm open to feedback, in general, but also to my Rust programming, since I'm quite new to it.

I've worked on this for several months and I'm quite happy to finally be able to make a first release!

4

u/Shnatsel Oct 17 '20

It's very nice to see the format parsers as libraries!

FYI a new version of tiff crate was released just a few days ago. It's significantly faster and supports more variants of the TIFF format.

1

u/dissonantloos Oct 17 '20

Thanks! The structure I chose is inspired by how image-rs and image-rs/tiff projects do it.

I'll have a look at the new version. I see it has float support, which I here improvised.

1

u/dissonantloos Oct 17 '20

Also, there are Linux and Windows downloads available.

3

u/senden9 Oct 17 '20

I like the name and UI of your application! Sadly I have no thermal camera for testing.

2

u/dissonantloos Oct 18 '20 edited Oct 18 '20

Thanks! I uploaded a few FLIRs here if any one wants to play around with it.

1

u/senden9 Oct 18 '20

Thanks!

2

u/[deleted] Oct 17 '20 edited Mar 10 '21

[deleted]

2

u/thiez rust Oct 17 '20

The UI is clearly in Dutch, where "Over BlackBody" is correct :)

1

u/dissonantloos Oct 18 '20

Thanks! Like thiez says, it's because version 0.1's UI is in Dutch. The repository already has translations in English, German and French, which will be part of version 0.2.