LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Concept Question - IMAQ Vision

Hi everyone,

Before I start cranking away at code and seeing if I can do this, I just kinda want to see if anyone has done anything similiar or just knows if it IS possible to do with IMAQ Vision. 

So what I want to do is take the output of a ccd camera which is recording a flat target plate, but from an angle, and make it appear as if it's head-on onscreen.  Ie; the camera is viewing a flat plate from a 45 degree angle below the plate so the resulting image is skew like so /_\ but i would like to make it square again |_|.  It will be a video feed from a ccd, as near live as possible.

                         /-----------------\                                          |---------------------------|
                        /                        \                                        |                                  |
                       /                          \                      =               |                                  |                          ????         
                      /                            \                                      |                                  |
                     /                              \                                     |                                  |
                    /________________\                                    |_________________|


Like my ansi art?
0 Kudos
Message 1 of 5
(2,850 Views)

Can do it but CPU intensive.  Look at image calibration functions in IMAQ.  You basically shot a picture of a calibrated image then let IMAQ figure out how to make it square again.  We tied it, it worked nice, but cost too much CPU for our application.  We used it to take the bend out of a wide angle lens.  You are better off shooting it straight on if possible.

 

http://digital.ni.com/public.nsf/allkb/5FC615E2B4CFE8FA86256AC4007C9A42

Matthew Fitzsimons

Certified LabVIEW Architect
LabVIEW 6.1 ... 2013, LVOOP, GOOP, TestStand, DAQ, and Vison
Message 2 of 5
(2,831 Views)

Wow. Ok I went through the example VIs and see what you mean about it taking some time to compute... I don't know if that'll work after all if I'm trying to get this to work on a video feed.

Do you know though, if I did the calibration stuff on the first image (or few images averaged) from the ccd, couldn't I just use that info to cal the rest of the ccd feed and thus reduce cpu time?

 

Thanks!

 

jonathan

0 Kudos
Message 3 of 5
(2,824 Views)

Don't know.  I just tied and successful used the calibrate function.  Let me know if you find a better way.

 

Matthew Fitzsimons

Certified LabVIEW Architect
LabVIEW 6.1 ... 2013, LVOOP, GOOP, TestStand, DAQ, and Vison
Message 4 of 5
(2,821 Views)

Hello IEC,

Thank you for contacting National Instruments.  When you calibrate an image for the first time, the perspective information from the reference image is stored to save processing time.  Therefore you do not need to calibrate from a template each time you acquire an image.  However those images will still involve CPU time because the pixels must be adjusted.  The best way to reduce thee CPU time is to correct the camera's position if possible.

Regards,

Mike T

National Instruments

0 Kudos
Message 5 of 5
(2,805 Views)