06-03-2015 11:15 AM
I am currently working on developing an imaging system that will allow me to see the surface projection of a set of data. Currently, images are collected slide by slide and are in the x-z plane of the object being analyzed. This data is stored in a 2-D array. I would like to take the surface of this slide (possible by just using the find max function within a for loop) which is now in a 1-D array and concatenate it with all the other slides to form an x-y planar array which will map the surface of the object. I attached a visual representation as well. It should be noted that the data input automatically switches between slides. It would be greatly appreciated if someone could just point me in the right direction.
06-04-2015 03:38 PM
Do you already have a VI developed and it needs to be tweaked or are you starting from scratch? Additionally, are you going to be reading in data and recreating a similar structure each time such as a cube or will the type of object vary?
06-04-2015 04:55 PM
The VI for image collection is already built. It stores data by building 2D arrays and through post-processing in MATLAB, we can build 3D models by putting together the 2D slices. The problem is that the incoming data for the 2D slices is not being stored since it is basically being constructed each time and subsequently overwritten (it is not in a for loop). I have a VI to construct an enface projection by using a for loop around the image collection system, but I was looking for an idea on how to construct the projection without using such a loop. Any ideas would be appreciated. Also, within the attached VI, I am just using the max index values as a check. I do not need them for the final construction of the en face projection.
06-05-2015 11:36 AM
If you are trying to store the incoming data to be read in and then used to create a 3D structure you might want to use a queue within LabVIEW. You can store your data within the queue and access it at your own rate. You can even separate the data and store it in separate queues so you can break down the data into the specific slices and then pull from each queue directly.