06-29-2018 07:25 AM
Hello,
I need to find a way to reach at the cells locations while scanning the detected cells.
My project aim is to detect the cells into the sample and scan them one by one.
So I am using 2D galvano mirrors for scanning and I made VI which can detect the cells.
I am using DAQ for data acquisition.
Example: let say I have 3 cells in sample
VI Detects the cells
(Ex. Take Rect top pixel value 100 of the cells and scan the area according to the applied voltage,
We use Rect top pixel value of cell just to call the VI that start scanning of cells from this particular pixel value)
So now my problem is I do not know how to reach to the location of the cells for scanning?
Example : I can know the how many cells are present into the sample and area of cells so I can give corresponding voltage values to the 2 mirrors to scan the area of cells one by one , but I do not know how to reach to the cell position.
How to call VI to reach at the first cell location scan it reach to the second cells location scan it and to reach last cell location and scan it.
I know scanning thing pixel to voltage conversion detection of cells into sample.
I have attached one picture for better understanding .
06-29-2018 07:53 AM - edited 06-29-2018 07:55 AM
I would eliminate Step 4. You have combined your three ROIs (which tell you precisely where to scan for each Cell) into a single ROI that encompasses all of your cells, and now need to scan each cell within this "combined ROI".
Why not make an Array of the 3 ROIs that correspond to each cell? You can write a routine that scans an ROI that has one cell, correct? Simply put this into a For Loop, bring the Array of ROIs in from the left through an Indexing Tunnel, and your loop will scan as many ROIs as you have found (three, in this example), one at a time.
It is much simpler to scan three single ROIs one at a time than to take a "enclosing ROI" and try to find the three sub-ROIs inside it for scanning.
Bob Schor
07-02-2018 05:27 AM
Hi,
Why not make an Array of the 3 ROIs that correspond to each cell? You can write a routine that scans an ROI that has one cell, correct? Simply put this into a For Loop, bring the Array of ROIs in from the left through an Indexing Tunnel, and your loop will scan as many ROIs as you have found (three, in this example), one at a time.
Answer : Yes I have routine to scan the cell one after one and I am using the for loop for the same.I have attached VI.
Routine to scan the cell.
Taking the Rect width value from particle analysis. Rect width (Rect right - Rect Left )
Converting that pixel value into the voltage for galvano mirrors to scan the bounding box of particular detected cell.
I made one algorithm which converts the pixel values into the corresponding voltage values for X(Xmax, Xmin) and Y(Ymax, Ymin) mirrors and that voltage values I am giving to the respective mirrors for scanning operation.
Now I do not know how to call Galvano to reach at the first cell location and then scan the detected first cell then reach to second cell location scan the second detected cell.... up to the last detected cell.
I have attached the VI so you can understand better.
07-02-2018 09:20 AM
I'm puzzled at the confusion.
For any given "cell", you already know how to calculate a set of output voltage pairs that will correspond to "pixel" coords within that cell. You then sweep through your voltage ranges to cover the whole area bounded by (Xmin, Ymin) --> (Xmax, Ymax).
One very basic idea there is that any individual pair of AO samples will correspond to a specific X,Y location. When those voltages are generated, the galvos move to that location.
Let's say you calculate the AO samples needed for Cell 1. Then you run a finite sampling AO task to sweep through Cell 1. Now you calculate the AO samples needed for Cell 2. Then you run your AO task to sweep through Cell 2. Etc.
The only "gotcha" I can anticipate is the physical motion response time to get from the end of Cell 1 to the beginning of Cell 2. You can easily handle that in software. After finishing the finite sampling task that sweeps Cell 1, first do a direct software-timed AO output of the voltages corresponding to Cell 2's (Xmin, Ymin). Then wait long enough for the physical system to get there, which is only a few msec. *Then* configure and run the finite sampling task that sweeps through Cell 2.
-Kevin P
07-03-2018 04:06 AM
Hi,
I am using only the number of pixel and converting them into the mm ( area) to know the distance I have to scan, then finding the mechanical angle needed to cover that distance to scan and in last finding corresponding voltage for the mechanical rotation.
as I am using number of pixels by subtracting rect right - rect left, I am only able to find the cell area and converting them into mechanical angle and then into the corresponding voltage, and while giving that voltage to the VI I am getting the problem illustrates into the below image.