EEVblog Electronics Community Forum

Products => Thermal Imaging => Topic started by: joe-c on November 19, 2017, 09:35:33 pm

Title: Generic Thermal Camera Interface DLL
Post by: joe-c on November 19, 2017, 09:35:33 pm
Hello,
I have here a Sample project for Seek normal and Pro Version.
I know we have some other applications for different platforms, but this is a .net suggestion for a generic Thermal Camera Interface DLL.

The Solution contains 2 Projects...
1. Is a simple Application to Show the image, only basic stuff.
2. Is a DLL to interact with the Seek and Seek Pro

It is possible to change the DLL to handle any other Camera type... and if the public functions just do this work, the untouched main application can show the image.

Maybe there better ways to handle it, but the main target is... build an interface DLL for your camera and use it with some existing applications... and they handle stuff like storage, translate to different color scales, Measurements and so on.

I tried to make it as simple as possible:
1. Connect to camera
2. Get resolution
3. Get a frame as 1 dimensional Array... in Raw uint16 or float as temperature

The provided Application translate this to an Image.

I work on a implementation in my Thermovision Program so each Interface DLL just have to setup with his name and Path and can be used.

There 2 optional Functions:
SendCommand(string CMD)
SendQuery(string CMD)
The first will just send a text to the DLL... like "NUC" for example.
The Second will return a string. This can be used to "ask" the Camera for something.

But anyway... it's still a suggestion. I hope more of you are interested on a Generic Camera Interface System and provide ideas and samples.

Best wishes
Joe-c
Title: Re: Generic Thermal Camera Interface DLL
Post by: Spirit532 on November 20, 2017, 05:22:15 am
This looks pretty neat. A good idea would be to implement control for other brands too.
I may contribute with official support for one of my own devices to get things going :)
Title: Re: Generic Thermal Camera Interface DLL
Post by: Ben321 on November 21, 2017, 08:20:20 am
Hello,
I have here a Sample project for Seek normal and Pro Version.
I know we have some other applications for different platforms, but this is a .net suggestion for a generic Thermal Camera Interface DLL.

The Solution contains 2 Projects...
1. Is a simple Application to Show the image, only basic stuff.
2. Is a DLL to interact with the Seek and Seek Pro

It is possible to change the DLL to handle any other Camera type... and if the public functions just do this work, the untouched main application can show the image.

Maybe there better ways to handle it, but the main target is... build an interface DLL for your camera and use it with some existing applications... and they handle stuff like storage, translate to different color scales, Measurements and so on.

I tried to make it as simple as possible:
1. Connect to camera
2. Get resolution
3. Get a frame as 1 dimensional Array... in Raw uint16 or float as temperature

The provided Application translate this to an Image.

I work on a implementation in my Thermovision Program so each Interface DLL just have to setup with his name and Path and can be used.

There 2 optional Functions:
SendCommand(string CMD)
SendQuery(string CMD)
The first will just send a text to the DLL... like "NUC" for example.
The Second will return a string. This can be used to "ask" the Camera for something.

But anyway... it's still a suggestion. I hope more of you are interested on a Generic Camera Interface System and provide ideas and samples.

Best wishes
Joe-c

WOW you actually did manage to reverse engineer the Seek Compact Pro! Thank you very much! Now maybe at some point you could add this camera to the list of available cameras in your main Thermovision software here https://www.eevblog.com/forum/thermal-imaging/freeware-software-for-thermal-analysis-thermovision_joec/ (https://www.eevblog.com/forum/thermal-imaging/freeware-software-for-thermal-analysis-thermovision_joec/)
Title: Re: Generic Thermal Camera Interface DLL
Post by: joe-c on November 21, 2017, 03:32:34 pm
WOW you actually did manage to reverse engineer the Seek Compact Pro! Thank you very much! ...

Thank you, but no, i just used already existing code from here:
https://www.eevblog.com/forum/thermal-imaging/windows-software-for-seek-pro-and-initial-commands/ (https://www.eevblog.com/forum/thermal-imaging/windows-software-for-seek-pro-and-initial-commands/)

and the next Thermovision version will support the Seek Pro, sadly only normal mode, i don't found a working raw mode yet.  :-/O
Title: Re: Generic Thermal Camera Interface DLL
Post by: Ben321 on November 21, 2017, 08:46:54 pm
WOW you actually did manage to reverse engineer the Seek Compact Pro! Thank you very much! ...

Thank you, but no, i just used already existing code from here:
https://www.eevblog.com/forum/thermal-imaging/windows-software-for-seek-pro-and-initial-commands/ (https://www.eevblog.com/forum/thermal-imaging/windows-software-for-seek-pro-and-initial-commands/)

and the next Thermovision version will support the Seek Pro, sadly only normal mode, i don't found a working raw mode yet.  :-/O

What's "normal mode"? And why not use raw mode in Thermovision? You already have buttons for both "raw mode" (16 bits integer) and "temp mode" (32 bits float) available in this test application in this thread. Both are raw modes (more than 8 bits per pixel). So why not implement them in Thermovision?

By the way, I just tested your Seek Pro test software here, and it works great. Only thing I would like to be able to do, that your software currently isn't able to do, and that's disable the automatic shutter, by sending the correct USB command to turn off the Seek's internal flat field correction shutter. As your software already has the ability to capture a reference frame, there's no need to keep the shutter running in the camera (a mechanical part, which will wear out over time with continuous operation). Using your software, I can manually calibrate it by pointing it at an object of uniform temperature (preferably up close so it sees only a small part of the object, as small areas usually have more uniform temperature), and then pressing the button to capture a reference frame. I don't need its internal shutter to calibrate it, when using your software.
Title: Re: Generic Thermal Camera Interface DLL
Post by: joe-c on November 21, 2017, 11:21:00 pm
What's "normal mode"? And why not use raw mode ....
Normal and Raw mode means the Seek Processing, not the kind of delivered data.
Sadly i don't found a way to control the shutter directly.
because this is to much off tropic here i answered here:
https://www.eevblog.com/forum/thermal-imaging/yet-another-cheap-thermal-imager-incoming/msg1355307/#msg1355307 (https://www.eevblog.com/forum/thermal-imaging/yet-another-cheap-thermal-imager-incoming/msg1355307/#msg1355307)

additional you will get a PM
Title: Re: Generic Thermal Camera Interface DLL
Post by: IwuzBornanerd on November 25, 2017, 12:30:43 am
@joe-c, you might recall there is a separate thread specifically for the Seek Pro: https://www.eevblog.com/forum/thermal-imaging/seekthermal-compact-pro/msg1221345/#msg1221345 (https://www.eevblog.com/forum/thermal-imaging/seekthermal-compact-pro/msg1221345/#msg1221345), which might be a better place for that information.

And have you compared the noise in your borrowed Seek Pro with the noise in your old non-Pro version?  I'm wondering if the difference is similar to what I see between the old & new non-pro Seeks as I reported here: https://www.eevblog.com/forum/thermal-imaging/latest-seek-compact-(non-pro)-has-significantly-reduced-noise/msg1312544/#msg1312544 (https://www.eevblog.com/forum/thermal-imaging/latest-seek-compact-(non-pro)-has-significantly-reduced-noise/msg1312544/#msg1312544)
Title: Re: Generic Thermal Camera Interface DLL
Post by: joe-c on December 10, 2017, 12:11:57 am
I have a new Version, it just deliver additional a DeathPixelMap.
And have you compared the noise in your borrowed Seek Pro with the noise in your old non-Pro version? 
i saw less noise compared to a regular Seek, but its still more than devices like Thermal Expert or Flir One.
but i don't get deeper on this, its just looks like that.