Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Determining the quality of the calibration learning process

There is a property of LearnCalibrationOptions called, "LearnErrorMap". The desciption says, "Boolean that indicates if the control calculates and stores an error map during the learning process. The image error map reflects error bounds on the calibration transformation."
 
What is the error map? Can it be accessed?
 
Are there any other ways of determining how good the learnt calibration was, other than "QualityScore", which doesn't seem to indicate too much?
 
Note: I use IMAQ Vision v7.1.1 with VB.
 
Thanks!
0 Kudos
Message 1 of 7
(4,070 Views)

Hi,

I am using Imaq vision in LabVIEW. Anyway there is a VI (function) called Get Calibration Info, gives the all calibration information in the image. It also gives out the error map if it is learned by "LearnCalibration". I have tried in the example program, it gives a 2D array of -1 values filled. I am not sure what it means though.

Thanks,

logic

0 Kudos
Message 2 of 7
(4,070 Views)

Hey Steverino and Logic,

To answer these questions, I would recommend that you read Chapter 3 in the IMAQ Vision Concepts Manual. You can find the IMAQ Vision Concepts Manual in the following directory: C:\Program Files\National Instruments\Vision, or at the following link: IMAQ Vision Concepts Manual.

Chapter 3 in the IMAQ Vision Concepts Manual deals with the System Setup and Calibration. It goes into in depth discussion about the error map and what it means. It also discusses the quality score and what it represents. I will still answer your questions here:

 

“What is the error map?”

An error map returns an estimate of the worst case error when a pixel coordinate is transformed into a real-world coordinate. The quality score and error map outputs of the calibration function indicate how well your system is calibrated. The error map is an estimate of the positional error that you can expect when you convert a pixel coordinate into a real-world coordinate. The error map is a 2D array that contains the expected positional error for each pixel in the image.

 

“Can it be accessed?”

In VB you will want to use CWIMAQCalibrationReport to access the error map. In LabVIEW, use the Get Calibration Info VI as Logic suggested.

I hope that the IMAQ Vision Concepts Manual answers most of your questions. If you have any further questions, or if this post didn't answer your questions, please let me know. Thanks, and have a great day.

Regards,
DJ L.

Message 3 of 7
(4,031 Views)
I am facing this error " 1074396116 " occured at IMAQ learn calibration template - insufficient number of calibration feature points in a vi.I am using Labview 7.1 and am using IMAQ learn calibration template vi as a subvi.I am using the same vi on a different machine and it works fine.I got a link for a vision manual ( it's ~ 400 pages) and will try to find a solution there.Does anyone know the how to tackle this problem ?
 
As a next step I will be checking my camera config ( I am able to snap the images ) and the vision version that I have on two different machines.
 
Thanks
 
Deepak
LAB View 2010 SP1
0 Kudos
Message 4 of 7
(3,757 Views)
Dear Deepak,
 
Thanks for contacting National Instruments. So your problem is that you get this error code when you try to use the VI "Learn calibration template.vi"?  I have done a little research into this error code you are getting and have found that several things could be causing this. 
 
Are you using the same set of images for the two computers?
--If you aren't using a calibrated image on the second computer, it would possibly cause an error.  Could you try to develop this in Vision Assistant and see if you get the error in there too?  This would help me figure out what is giving you the error.
 
Are you updating the filepath for the second computer?
--The file path to read/write to may be different on the second computer, which might cause this error as well.  Could you confirm that the path you are trying to read/write from is a valid path on the 2nd computer?
 
Do you have the threshold for the image set low enough so that it can find enough calibration points?
--If the VI cannot find enough datapoints (the points it highlights in red), then it could possibly cause an error because it will then be unable to make a valid calibration.
 
I hope that some of this information helps you out!  If you have any more questions, don't hesitate to reply back on this thread.
 
Take Care,
 
Evan D.
Installer R&D
National Instruments
0 Kudos
Message 5 of 7
(3,736 Views)

Thanks,Evan

I am still trying to solve the same error.

Are you using the same set of images for the two computers?
--If you aren't using a calibrated image on the second computer, it would possibly cause an error.  Could you try to develop this in Vision Assistant and see if you get the error in there too?  This would help me figure out what is giving you the error.
 
I am snapping an image using a CCD camera and then using it for calibration in the same vi.The vi is same on the computers.I was looking at the image format selected for the camera and even for RS170 type cameras there are three options.These are RS170,RS170(1409) and RS170(1410).Computer where this vi works fine ,has RS170 format whereas on the computer where it doesn't work it has RS170 (1409) format.I tried selecting the RS170 , but got an error message for missing/corrupted file.
 
Are you updating the filepath for the second computer?
--The file path to read/write to may be different on the second computer, which might cause this error as well.  Could you confirm that the path you are trying to read/write from is a valid path on the 2nd computer?
 
File path seems to be fine.
 
Do you have the threshold for the image set low enough so that it can find enough calibration points?
--If the VI cannot find enough datapoints (the points it highlights in red), then it could possibly cause an error because it will then be unable to make a valid calibration.
 
Upper threshold value is 64 in grid descriptor and it works on the other computer.
 
 
I have attached the vi here.I don't even know why I am not able to select RS170 format for the camera as well ? Selected fromat is RS170(1409).
 
I have never used vision assistant before and am using labview 7.1.
 
Thanks
 
Deepak
LAB View 2010 SP1
0 Kudos
Message 6 of 7
(3,721 Views)
Hey Deepak,
 
I looked through your VI and was unable to successfully open it as I could not find the coordinate VI.  Nevertheless, I did not see where you said that it worked fine on one computer but it did not work on the other computer.  Do the computers have the same software and versions on them?  If you are using LabVIEW 7.1 could you try updating it to 7.1.1 or just making sure that both computer are using LabVIEW 7.1 and Vision 7.1?  I'm thinking it could possibly be a corrupted file or a bug that has already been fixed in a patch.

I hope this helps you out Deepak.  Let me know if I can help you further.
 
Thanks,
 
 
Evan D.
Installer R&D
National Instruments
0 Kudos
Message 7 of 7
(3,702 Views)