At the beginning of my program, I write a reference to an IMAQ image to a display indicator and it shows me an image I would expect; however, throughout the course of my execution, the image changes even though I never explicitly write to the display again. How can I prevent this?
Right-click the Image Display on the front panel and enable the Snapshot option.
In LabVIEW, an IMAQ image is stored in a buffer that you must create explicitly using IMAQ Create. The output of the VI, an IMAQ image reference, is a reference to the buffer in memory where the image is stored. When you wire an IMAQ image reference to an Image Display indicator, the indicator points to the location in memory referenced by the IMAQ image reference and does not make an additional copy of the image. Since images can get large in size, the display process can be sped up by avoiding extra processing steps which make additional copies of the image data.The indicator is connected to the image that is stored in that buffer. Therefore, if you make changes to the image stored in that buffer later on in your code, you will see those changes reflected in the Image Display when the image refreshes. This includes disposing of the buffer using the IMAQ Dispose, which will cause the image to disappear completely from the display. If the image being displayed has changed in memory since it was last updated, you might also see select portions of the Image Display change as you move the mouse over them, forcing a redraw of the areas it passes through.If you do not want this feature and would prefer for your indicator to show the image that exists in the buffer only when you write the reference to the indicator, right-click on the control on the front panel and enable the Snapshot option.
What is the Image Display Control in LabVIEW?
How Can I Programmatically Clear an Image Display Control?
Collaborate with other users in our discussion forums
A valid service agreement may be required, and support options vary by country.