05-24-2023 03:39 PM
I have been having issues collecting images using the IMAQ function in LabVIEW. So basically we have a custom made device that we use to mount and test samples and it is controlled though LabVIEW. Additionally, we have a mounted ids camera
that takes images of my sample simultaneously. Now this works fine however, I have found that when the tests become lengthier requiring more images (it seams like anything over 150 images is no good) to be saved the camera in the front panel goes blank and it proceeds to not save any further images and sometimes it even does not save the images that it did take.
I have posted some screenshots of the VI.
On the first picture we initialize an array that will carry our images outside a for loop (The whole thing is within an event structure)
On the second picture the data wire corresponding to the array enters a while loop though the purple shift register. We continuously takes images using the IMAQ create function and then deposit these images into an array until the while loop ends.
On the last picture we exit the for loop and at the end of all the for loop iteration the images are saved to a predetermined path.
Thanks!
05-25-2023 01:31 AM
I would guess you are getting an error (in image creation or the camera), but you don't seem to be displaying your error anywhere. So try looking at the error wire and see.
05-25-2023 09:42 AM
It seems to me you're creating new images every iteration.
That's no problem, but if you never close them, you'll run out of memory...
Of course, this could be intentional, but it's hard to see through the 3 key hole views you provide us.
You should at least close the images after saving them to the jpeg.
Why not create the image, grab it, put it on a queue and save and close it in a 2nd loop, that is running in parallel? That would prevent a memory build up of all the images. You'd probably get a better performance.