PS2a: Camera Calibration Details

Instructor:

Irfan Essa
Office Hours: After Class

Location: 

CoCB 102

TA:

James Vanderhyde
Office Hours: Wed/Thu 10:15a-11:45a in DML
Day/Time:

Tuesday - Thursday 12:05pm-1:25pm

TA:

Jarsolav Tyman Jr.
Tues, Wed, Thurs: 3:30p-4:30p
in DML or by appointment
Labs:

Digital Media Lab (DML) (IntelPCs) (CCB 104a), &
 Mac Lab (CCB 130)

Main Menu
 
Home ] Up ] Schedule ] DVFX 2004 CoWeb ] Grad Section ] Participants ] Groups ] DVFX@GeorgiaTech ] Information ] Books etc. ] Readings ] Resources ]
Previous Classes
 
[DVFX 2004] [DVFX 2003] [DVFX 2002] [DVFX 2001] [DVFX 2000] [DVFX 1999] [CA 2003] [CA 2002]

horizontal rule

 

PS2a: Camera Calibration, Details.

(By Gabriel Brostow, TA for DVFX 1999-2002).

  1. Check camera inventory sheet when checking camera out, so you’re not held responsible for things which were already missing. For this project, you should not need to borrow equipment for more than a day, but you have it for few days just in case. You should buy one or more of your own DV tapes. These can be close to $5 if you buy in bulk (feel free to share shopping tips on the SWIKI). When using a blank tape for the first time, record it from start to finish with the lens covered, so it has a consistent time-code. This will prevent problems when dumping to the drive.
  2. Remember to switch to manual focus! You can print a calibration file of your own (make the squares are all the same and line them up) and mount it on a perfectly planar surface. For a checker-pattern that is nominally (because printers stretch printouts) 28mm^2, grab /net/cpl/NT/OpenCV_alpha3/calib/checkerGrid4x5_28mm.pdf. You can also use the larger calibration pattern located in the test-space of the DML. Remember to measure the exact width and height of a square. For example, measure width of 4 boxes (B, W, B, W) and divide total by 4 to get a more accurate X-dimension. Record in cm. for later. Origin is in upper left of the pattern pictured here, and I skipped the first and last row of boxes since the printer chopped them short. Move the pattern around so it takes up most of the field of view, and try to explore the space: show different positions and orientations, keeping the origin-corner as the left-top most corner in the image. Without moving the camera (or changing the zoom/focus!), move around in the scene or do something simple – this is just to show that it’s a sequence and not a single frame. Keep it short (30sec or less), and possibly make it relate to the 3D graphics you’ll be adding later. Don’t worry if you don’t yet know where you’ll be adding stuff to the scene (just glare in random directions for now). Snap multiple “home” position images with the pattern appearing bigger or smaller (see #8 below).


  3. Keep this under 30 sec. also, and don’t move the camera too drastically. This will be used only if we can obtain some match-move software licenses, and will only be important for the more ambitious groups.
  4.   Each camera has a DV cable, which doesn’t look like the RCA, or the S-Video cables in the bag. It connects to the panel on the front of the DVFX PC’s in the States PC cluster. DVRaptor software is installed on all those machines, and you don’t have much need for the Navi software right now, unless you already recorded so much data that you want to easily index to the tape. Turn the camera to VCR mode before starting the software, and you’ll be able to control the “deck” using the on-screen controls. Video plays back on the LCD of the camera, and may not show up in the Raptor software’s preview window – that’s ok. I usually use the batch capture utility (in one of the menu options). It lets you mark the start (in) and stop (out) points of each part of the tape that I want to dump to a separate file. Once marked and given a file-destination, “ADD” each desired clip to the batch-capture list. You can save and update this list if things break down for some reason. If you get an error that the “in point” can’t be found, you may need to reboot the PC (so save that list to a safe place). Dump to E since it’s fast and hopefully not very fragmented, and either capture the data to smaller clips (calib clip, action clip, moving camera clip, etc.), or segment a larger file in Premiere so that you don’t have to burn drive-space by saving video which you won’t use. That said, don’t trash data you “might” want later. CD-burners should be working now (hint-hint).
  5. Premiere is ok for this, just export a frame instead of a movie. Don’t dare change the image size or use lossy compression! You will want to copy & rename the extracted images so that the last one still has a number less than 100. It hurts the calibration software to have to run through 2000 non-images to get to frame_2001. Just count from 1, and everything will be fine.
  6. It seems to run faster when using a local copy: \net\cpl\NT\OpenCV_alpha3\calib\TOOLBOX_calib\
  7. Follow the “First Calibration Example” on this page: \net\cpl\NT\OpenCV_alpha3\CVL_html\appPage\calib_doc\index.html.
    The calib_gui program’s interface is pictured below. Basically, follow the onscreen instructions/questions and the hints that appear in the images to perform all the tasks leading to “Exit” (starting in the top left and going across). I’ll put up a trace of the program when I used it. Reprojection error MUST be less than a pixel, and ought to be around 0.1 pixels if you throw out the really bad images and keep around 8 good ones. Reprojection: the corner-finder puts little crosses when it finds something, and the corresponding point from the 3D model of your calib pattern is rendered using the calculated calibration as a circle. These should line up.  

  8. What can I say - it’s the box in the lower left. If you add/suppress it into the list of active images, you can visualize (and sanity-check) where it was relative to the other calibration images. If it’s way off (because, say, it appeared too small in the image), you’ll want to use a different image as the “home”.
  9. Remember the submission directory is /net/dvfx/DVFX/2004/PS2A/your_group_number/ as mentioned earlier, we w will use time-stamps of files to determine when something was submitted, so if you choose to update the file, give it a different filename.

horizontal rule

Home ] Up ]

Portions of the GT's CS4480/DVFX Web may be reprinted or adapted for academic nonprofit purposes, providing the source is accurately quoted and duly credited. The CS4480 Web © 1999-2004, College of Computing, Georgia Institute of Technology.
CopyRight Information and Disclaimer.

Last updated: January 21, 2004 04:19:09 PM.