03-22-2024 10:10 AM
Hi, I'm working on a project in Labview where a camera with thermal vision saves me the current frame and then has to compare it with the next frame and so on, the purpose of this project is to check if they stay the same.
Taking a practical example, a person passes in front of the thermal camera and therefore detects his warm presence, it must give a signal that something has changed in the saved frames, when the person leaves it must again give a signal of change.
can you help me?
03-22-2024 10:54 AM
what have you done so far ?
try capturing simple images and see what kind of data you can use to detect the presence.
I assume that a person would give an image with higher temperature data. you can use this information to compare a frame with person or not person.
Ricardo
03-22-2024 12:20 PM
If you are using IMAQdx, use the IMAQ Image to Array VI to extract each image. They are typically U16 unsigned arrays. Convert them to I32 arrays to avoid integer wraparound. Subtract the old image from the new image. Count the number of pixels in the image subtracted array that are greater than some threshold value. If the number of pixels above the threshold value is greater than a user selected minimum number of pixels, you can flag the image as changed. Likewise, for something hot leaving the frame, use the same logic on negative changes.
03-24-2024 11:20 AM
@snak3in wrote:
Hi, I'm working on a project in Labview where a camera with thermal vision saves me the current frame and then has to compare it with the next frame and so on, the purpose of this project is to check if they stay the same.
Taking a practical example, a person passes in front of the thermal camera and therefore detects his warm presence, it must give a signal that something has changed in the saved frames, when the person leaves it must again give a signal of change.
The picture will also change when the person is moving. Maybe all you need is take the average of all pixels and look for changes in level while ignoring drift e.g. due to changes in daytime and weather.
Do you have a series of sample pictures for testing?
03-25-2024 03:10 AM
hi, yes I already have a program called Labview that captures the camera image but after that I don't know how to work with it in a practical sense, what should I use on Labview?
03-25-2024 03:13 AM
You're right, maybe once it detects the first change I can put a button that should be pressed to reset the area when it's free so it starts doing its job of checking differences between images again.
For the tests I am actually using a thermal video camera connected to the wifi network which gives me the images in real time.
03-25-2024 03:40 AM
ok thanks, I also had the same idea as yours in mind but I wasn't sure how to actually do it on labview, now I'll try and I hope I can do something 🙂
03-25-2024 06:40 AM - edited 03-25-2024 06:42 AM
@snak3in wrote:
Taking a practical example, a person passes in front of the thermal camera...
Not sure which libraries you using, but definitively would to recommend to take a look into VDM, especially to the example called "Object Tracking", then combine it with imaqdx "Acquire Every Image" example.
The code for tracking as simple as
And this is how it works:
Is this useful "as is" or not - depends on your images, may be you will need some preprocessing.
Example with images in the attachment.
03-25-2024 09:17 AM
@snak3in wrote:
hi, yes I already have a program called Labview that captures the camera image but after that I don't know how to work with it in a practical sense, what should I use on Labview?
LabVIEW is a programming environment, not the name of a program to capture images. How much programming experience do you have?
03-26-2024 05:53 AM
sorry I translated bad, i wanted to say "I already have a program IN LabView ...." i have programming experience with other type of language, this is the first time I approach LabView