The device I'm using is a Therm-App: http://therm-app.com/
The somewhat confusingly-named Therm-App is not an "app", but a hardware device that communicates with an Android device via USB. To use the Therm-App, you install a software app from Google Play store, called "Therm-App: Basic". The makers of Therm-App have made available their SDK to encourage development of other apps for the device, and a few third-party apps are starting to be available.
By default, the device comes with a 19mm lens, but a number of lenses are now available with the following specs:
The standard 19mm lens has pretty good range for detection, though not detail unless the subject is pretty big or pretty close. The 35mm lens is expensive, but after finally deciding to splurge, I've had no regrets: the increased range has yielded better detection and details. The trade-offs are a narrower field of view and more dizzying "camera shake".
I've also started trying various algorithms to detect hotspots, and will play an alert sound when a hotspot is detected. This allows me to walk around pointing the device variously without staring at the screen the whole time.
Next up on my to-do list is to experiment with different color palettes. In particular, I want a palette that only shows hotspots in bright (yellow), but stretches the remaining temperatures across a wide spectrum of medium-to-low brightness hues, to maximize contrast and detail (thus hopefully to facilitate identifying "landmarks" to help locate the detected hot subject).
The somewhat confusingly-named Therm-App is not an "app", but a hardware device that communicates with an Android device via USB. To use the Therm-App, you install a software app from Google Play store, called "Therm-App: Basic". The makers of Therm-App have made available their SDK to encourage development of other apps for the device, and a few third-party apps are starting to be available.
The Therm-App with a 19mm lens, attached to the back of a Nexus 7 tablet. |
Focal Length | Relative Aperture | Field of View | 35mm equivalent |
---|---|---|---|
35mm | f/1.14 | 10.5° x 7.9° | 200mm |
19mm | f/1.1 | 19° x 14° | 105mm |
12.8mm | f/1.0 | 28.8° x 21.7° | 70mm |
6.8mm | f/1.41 | 55° x 41° | 35mm |
In The Field
Using an infrared camera in the field is akin to using a metal detector: after the novelty factor wears off, it quickly becomes tedious with only the prospect of discovery motivating further usage. What happens is you end up staring at the screen the whole time, sometimes having to stretch yourself to stare at high angles:
To allay this, you can use a longer cable to point the camera independently of the screen:
a situation that could conceivably be aided by a selfie-stick, but you're still staring at a screen as you walk rather than taking in the natural surroundings. To alleviate this, I've tweaked the software with an experimental hotspot detection algorithm than plays a sound when something is detected (more below).
Once something is sighted, there is the cumbersome step of trying to look through the binoculars while holding the device:
which seems to work pretty well, but quickly becomes cumbersome when I need to then pull out my camera for a shot. (On my to-do list is to fashion some kind of holster to hold the Therm-App device.)
Software Development
After my initial dabbling with the device, I decided to get the SDK and see if I can't address some of the shortcomings of the device and of the "Basic" app. I'll chronicle here some of the experiments I've done on this front. As you peruse this blog, keep in mind that some of it will be using my experimental app. If you would like to experiment, it is available at http://suan-yong.com/ir/therm_wild.html, but note that it is unpolished and I have little time for tech support or making cosmetic improvements.Background Filtering
The most significant change so far is background filtering, which allows one to take a snapshot (of a blank surface) to serve as a background filter that is subtracted from every frame from the device. I have found that this cleans up a significant amount of noise, especially when the device is used in cold temperatures.A group of people gathered around a campfire in the woods. The image below is raw while the image above is filtered by a background frame. |
Hotspot Detection
I've also started trying various algorithms to detect hotspots, and will play an alert sound when a hotspot is detected. This allows me to walk around pointing the device variously without staring at the screen the whole time.
Color Palettes
Next up on my to-do list is to experiment with different color palettes. In particular, I want a palette that only shows hotspots in bright (yellow), but stretches the remaining temperatures across a wide spectrum of medium-to-low brightness hues, to maximize contrast and detail (thus hopefully to facilitate identifying "landmarks" to help locate the detected hot subject).
Hi Suan.
ReplyDeleteI am also a birding utilizing Therm App.
You it is very want source code of the application that was developed using the SDK. Is it possible to let send the source code to me?
You can download a debug apk and/or a source tarball from here:
Deletehttp://suan-yong.com/ir/therm_wild.html
thank you Suan!
DeleteI am currently working on species reproduction hypogeous character (Tropical shearwather, White-tailed Tropicbird breeding ground in karst cavities) on the island of Europa, in the Mozambique Channel. The nests are not accessible and given the large number of vacant cavity (many favorable sites) we have trouble locating the active breeding sites. Do you think the Therm-App extension can identify the presence of individuals through the karst. This information would allow us more to know the size of the population (which we estimate at this time indirectly with individuals counting the output of colonies) to assess reproductive success later using a burrowscope .
ReplyDeleteThank you in advance for your answer.
Regards,
Alexander Laub
Having never really looked too carefully at cavities in rocks, I really don't know if it would be effective. Here are some observations that may be informative.
DeleteFirst, the sun's warmth is overwhelming, so if anything has been exposed to the sun, the ThermApp becomes almost useless for detecting animal warmth. After a sunny day, a tree trunk remain warm for several hours into the night, during which animal warmth within cavities are not easily discernible. I have not tried going out late at night to determine how long it takes for the tree to cool down (probably depends on ambient temperature). If I had to guess, I'd say the effect would be worse for cavities in rocks, which can retain heat for much longer (usually, when scanning the forest floor, rocks appear warmer than leaves and other organic matter). And I would guess animal warmth, especially well-insulated birds, would not affect the temperature of rocks as much as tree trunks.
Anyhow, with the impact of the sun, the only chance it might work would be either on an overcast day, or possibly early in the morning before sunrise, after the rocks have had a chance to cool down overnight.
Hi Suan,
ReplyDeleteThank you for posting your hard-won information on the subject of thermal imagine with wildlife. I would be grateful for your opinion on the Therm-app vs the Therm-app HZ. I need a thermal imaging device for detecting invasive species (rabbits and rats) and seabirds on a subantarctic island. The HZ seems like the suprior choice but I'm concerned about traveling internationally with a 25Hz device. From what I understand, the 8.75Hz basic Therm-app can be taken across borders without any difficulties. But, is it good enough for detecting small mammals and birds? I'd appreciate reading your thoughts on the matter. Thank you.
cheers,
peter
If it's simply for detecting warm subjects, the 8.75 and 25 are equally effective. The real benefit of the latter is smoother video, if you want to record something nice to look at. The 8.75 video looks very jerky.
DeleteFWIW, getting the bigger 35mm lens will do a lot more for improving detection than upgrading to the 25Hz.
I made these three comparison videos some time ago:
https://flic.kr/p/KvaN9N
https://flic.kr/p/KPyw5k
https://flic.kr/p/KTwr1C
Thanks, that is very helpful. Smooth video would be nice but it's not essential for me. It's more important to have something I can safely travel overseas with. And from your videos I can see the advantage of getting the 35mm lens, too. Thank you again.
DeleteHi Suan,
ReplyDeleteI envy you and am so grateful that you share all your pain in getting this vast experience. I can only imagine the number of days you must have spent outdoors to collect all this "data". I had started recently with a SeekThermal Compact and now wanted to invest into a SeekThermal Pro for its higher resolution. The Pro has a similar thermal resolution as the Therm-App. Again you can get a fast frame (>15Hz vs ~9Hz) for the standard Pro). Your comment above (and Peters reply) suggest that high versus low Hz frequency is not all that important for pictures and hotspotting. But have you compared Therm-App versus SeekThermal Pro for this purpose (or heard of a comparison)? The price difference is quite significant and that must come from somewhere. PS: I love your "noise alert" hack. Wonder if that can be transferred to other softwares. It would safe the neck of so many birders :)
Achim
My experience with Seek and Seek XR is that their sensitivity is significantly inferior, enough to make it painful or useless for wildlife detection. IOW, with a ThermApp, a warm body against a cool background will pop out immediately; with Seek XR it'll look like a slightly brighter shape against a slightly darker background. You could certainly choose a palette that makes it pop, but that same palette will make a "background" scene look like a jumble of bright and dark colors. Now, it's possible that one could use their API to develop a hotspot-based palette to make this more useful, but certainly out of the box you will not get this. (I also haven't used Seek in some time, so I don't know if there have been improvements in their app.)
DeleteNow, I don't know if this changes with the Pro; I suspect not. I.e., I suspect that higher resolution just means more pixels with the same low sensitivity. But I could be wrong. If you decide to buy a Seek Pro, I'd be interested to hear how well it works.
As for my "noise alert", I've been lazy at developing it further, but I'm happy to share the code with anyone willing to incorporate it. (Maybe I should write a blog entry about it, though it might be more technical than the others.)
Sorry one more question: How is the battery usage of the Therm-App (Seek termal needs a lot of power) and I cannot attach a powerbak alongside with the camera at the same time...
ReplyDeleteI haven't done any systematic timing, but I know that even in winter at below-freezing temperatures, I can get at least 3-4 hours of continuous use out of my Nexus 7 tablet (probably more in warmer temperatures). And like Seek, I don't think you can easily attach an auxiliary battery pack (though I vaguely recall some in the flickr group [https://www.flickr.com/groups/therm-app-users/discuss/] having success with this.)
DeleteThis comment has been removed by a blog administrator.
ReplyDeletedo you ever find honey bee trees with your thermal camera?
ReplyDeleteHaven't found any, but it would certainly be interesting to find one. A hovering bumblebee looks like a floating sphere in thermal, which is always neat to look at. I haven't figured out which spherical part of its body is producing the heat.
DeleteHi !
ReplyDeleteI'm using Therm-App Basic and Therm-App Plus.
I tried to use you app, but when I plug the camera, nothing happened.
First it's strange, cause even if I choose your app instead of Basic or Plus apps, it's the Therm App Basic which opens and ask me to connect the camera.
I don't understand...
Could you help me please ?
Many thanks.
Regards,
Yann
My app uses the SDK provided by Therm-App, so it looks the same as Therm-App Basic before you connect. I don't understand how that part of the system works, frankly.
DeleteThe way I use it is, without first opening any app, just plug in the camera. I then get a dialog with three choices: Basic, Plus, and Wild (mine), which lets me choose which one I want to run.
I'm afraid I don't use Android enough to provide any more suggestions.
This comment has been removed by a blog administrator.
ReplyDeleteThis comment has been removed by a blog administrator.
ReplyDeleteA very informative and engaging read. I appreciate the practical tips you’ve included.
ReplyDelete