Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Calibration vs. correction as they apply to Pattern Match.

Ok,

I have an application where I need to learn a user selected pattern, and then find that pattern later. It is a requirement that the user display be in color.

My experience tells me that all vision calculations should be done with raw images taken under the best lighting possible.

So what I do is learn a ROI from a color image that is not corrected or calibrated. I then search for that pattern in images that are not corrected or calibrated. I then apply a calibration and use the Vision VIs that turn pixels into real world images. (I have perspective distortion and a dot grid template to learn calibration with.)

So that's one way and it seems to work.

What I could do is do everything in corrected images. So the operator sees a color image that is a combination of the three color planes that have been corrected after a calibration has been applied. The operator selects a ROI from this corrected image. Searches are performed on similar combined and corrected images.

I haven't tried this. Is there any point? (If the above description does not make sense please let me know.)
0 Kudos
Message 1 of 6
(3,631 Views)
Hello clendon,

To address your question, whether you correct/calibrate an image before you pattern match or vice versa will depend on your application and the end result you are trying to reach.  The calibration process will take more time to run than a typical pattern match.  Therefore, are you interested in calibrating just the images that are matched?  This will take less time then calibrating all of the images and then doing a pattern match.  If your pattern match process is rigorous enough to be able to find the suitable images, then I would suggest keeping with the first option you discussed.  If you do need to calibrate all of your images, then the second method would suffice.  It may also help your image processing in regards to matching score.  I also see that you mentioned color planes.  Are you acquiring three separate images and combining them to get the complete image?   Again, the order in which you process your image will ultimately depend on the end result that you want.  Please let us know if you would like further clarification or assistance regarding this issue, if so please provide additional details regarding the specifications of your application. 

 


Best regards,

Vu D


Applications Engineer

0 Kudos
Message 2 of 6
(3,618 Views)
Hi Vu D

More about the application. We have a silicon wafer. We need to very accurately maneuver this wafer. (It is on a 3 axis stage.) In order to offset errors in placement, we measure the wafer to see if it is offset and rotated. We do this measurement using the NI vision utilities. So the wafer is positioned under the camera so that we can identify a mark previously selected by an operator. The vision system is used to find the pattern and it's location relative to the image center. This together with the stage coordinates gives an absolute position. The process is repeated for a second mark. (Move mark under camera, measure position.) Together these numbers can tell us if and by how much the wafer is offcenter or rotated.

Accuracy is important, which is why I am speculating about whether it is better to do my pattern searches in a corrected image or an uncorrected image.

As for the color question. I generally take color images and split out the color planes as necessary. So for VIs that do not take color images, I take the Intensity plane of the image in question. In the second method I listed above, I would split out each color plain. Apply calibration and correction on each plain, recombine and display for the operator.
0 Kudos
Message 3 of 6
(3,614 Views)

Hello 2verb,

If accuracy is very important in this application, then I would say that calibration before you perform a pattern match would be essential.  As I mentioned earlier, this process does take more time; therefore, you will need to weigh the value of accuracy with the time efficiency of the system.  Also, if color is not necessarily as crucial, you also have the option of taking in the images as grayscale which will help reduce the processing of your application.  I hope this helps.

Regards,

Vu


0 Kudos
Message 4 of 6
(3,599 Views)
Hi VU

OK, so definitly apply calibration. Although from what I have seen, it does not matter if you apply calibration before or after the pattern match. If you want, you can do a pattern match, apply the calibration, and then run the pattern match results through the pixels to real world measurements VI. Or am I missing something vital here?

The next step though is to apply correction. Do I want to do pattern match on corrected images? Or is it better to do pattern match on uncorrected (but calibrated) images?
0 Kudos
Message 5 of 6
(3,597 Views)

Hi 2verb,

As I mentioned in my previous post, if your pattern match is robust enough to be conducted before or after calibration then you should be fine either way.  You may be able to perform the image processing you need without image correction.  Correcting an image will help verify that the image looks spatially correct, but is not always needed since the calibrated information is already included.  Also, the correction process is a very time intensive operation since you will be redrawing the image.  As mentioned in the Vision Concepts manual, if you are performing a particle analysis, for example, you can compute the calibrated measurements directly from an image that contains the calibration information but has not been corrected.  There is more information regarding when and how to use correction / calibration in the Vision manual which can be found by going to Start >> Programs >> National Instruments >> Vision >> Documentation >> Search the NI Vision Bookshelf >> Concepts and Techniques >> NI Vision Concepts Manual page 55.  If you still have questions after looking through this resource, please let us know. 

Vu

0 Kudos
Message 6 of 6
(3,582 Views)