February 2002

3D-Computer Vision

Exercises

To pass the couse you need to answer 2 exercises. The first exercise is smaller than the second. Both will require experimental work at the lab as well as some programming. The group size for the exercises is 2-3.

The deadlines for the first exercise is March 26.
The deadlines for the second exercise is: May 7.

To answer each exercises satisfactory you need to write a small report (5-10 pages). To this comes programs etc. that you develop, prints of images etc etc.



Exercise 1: Kamerakalibrering

Ved hjælp af et kamera monteret på robot-slæden (eller på stativ) skal der optages et billede af en scene med et kalibreringsobjekt. Ud fra kendte vendenskoordinater på en række punkter på objektet samt målte projicerede billedkoordinater skal der foretages to kalibreringer for hvert billede. Dette vil involvere implementation af to kalibreringsmetoder. Desuden skal kvaliteten af de opnåede resultater vurderes.


Billedoptagelsen

Kalibreringsobjektet placeres (på et bord) ca. 2 meter fra kameraet. Objektet bør placers sådan at så mange kalibreringspunkter som muligt er synlige og sådan disse har stor variation i afstand til skinnen (stil objektet på skrå). Give jer god tid til billedoptagelserne, sådan at disse ikke skal gentages fordi enkelte forhold blev glemt under vejs. Sæt et par timer af til dette, og tag flere billeder (fra samme og fra forskellig position af kameraet) end i forventer at bruge. Hvis i bruger robotten så husk at skrive slædepositionerne (trans, rot) ned for hvert billede. Opløsningen for translation hhv. rotation af slæden er ca. 46.7 steps/mm hhv. 40.000steps/360grader. Check under optagelserne (f.eks. vha. programmet imxv) at i (manuelt) kan bestemme billedkoordinaterne for kalibreringspunkterne med stor nøjagtighed (helst omkring 1 pixel). Brug 16- eller 25-mm-optikken og vær omhyggelig med korrrekt fokusering.

Efter billedoptagelsen bestemmes billedkoordinaterne manuelt vha. et billedvisningsprogram (f.eks. xv eller imxv). Bemærk hvorledes programmets konvention for placering af Origo og orientering af koordinatakserne er gjort (forskellige billedvisningsprogrammer har forskellige konventioner).


Kalibrering

Der skal foretages to kalibreringer. Den første kalibrering skal implementere metoden beskrevet i lærebogen CV.6.3 (side 132-135). Den anden metode skal implementere metoden beskrevet i CV.6.2 (side 125-131) med den bibetingelse at det principale punkt antages at ligge i billedets centrum (dimx/2, dimy/2). I implementationerne anbefales at benytte programmeringssproget MATLAB da det indeholder mange nyttige funktioner, f.eks. SVD.

Til brug for kalibreringen skal de tredimensionale koordinater på kalibreringspunkterne kendes. Disse koordinater er bestemt ved at lægge et retvinklet koordinatsystem med origo omtrentlig i punkt nr 31. Koordinaterne (angivet i millimeter) er anført i tabellen til sidst i opgaveteksten, og kan også findes her. Verdenskoordinaterne er målt for flere år siden og at de sidste decimaler næppe er korrekte mere.


Vurdering af resultater

Resultaterne af de to kalibreringer skal vurderes isoleret og skal sammenlignes. For hver kalibrering skal de fundne kameraparametre samt de kendte verdenskoordinater bruges til at beregne projektioner af verdenspunkterne på billedplanet og afstanden mellem disse og de observerede koordinater. Beregn middelværdi M og spredning S af afstanden. Sammelign resultaterne med et etstimat af hvor godt i tror at i har lokaliseret billedpunkterne. Brug også sund fornuft: Ligger det principale punkt inden for billedet. Er brændvidden og aspekt-ratioen rimelig. Er translationsvektoren rimelig.

Dernæst skal de to kalibreringer sammenlignes. Er de fundne parametre nogenlunde ens. Har det betydning for M og S at koordinaterne på det principale punkt var fastfrosset i den ene metode. Beregn også vinklen mellem de to kamera-orienterings-vektorer for de to kalibreringer. Er den lille ?

I ovenstående metoder udregnes middelværdi M og spredning S af projektionsfejlen. Disse størrelser skal vurderes. Helst skal både M og S være tæt på nul. Lille M og stor S indikerer en korrekt men ustabil løsning. Stor M og lille S indikerer en systematisk fejl, dvs. en konsistent men fejlagtig løsning. Vær opmærksom på at en enkelt fejlmåling (fx. en ombytning af koordinatværdier i et punkt) kan resultere i meget store fejl.


For de ambitiøse (ikke obligatorisk)

Det er generelt en god ide at vurdere stabiliteten af selve kalibreringsmetoden. Hvis antallet af kalibreringspunkter var stort kunne vi fortage gentagende kalibreringer på delmæmgder af observationerne og lave statistik på resultaterne. Vi kunne også have opdelt datasættet i 2 grupper, hvor det ene sæt benyttes til estimation af kalibreringsparametrene og det andet sæt til vurdering. Nu er antallet af kalibreringspunkter lille. Vi kan defor i stedet vurdere stabiliteten ved at foretage kalibreringen gentagende gange på datasæt der er tilført støj, fx. additiv normalfordelt støj N(0,v), hvor v angiver variansen af jeres måleusikkerhed på hver billedkoordinat. Hvis der fx. foretages 100 kalibreringer får vi 100 forskellige målinger af hver kameraparameter. Vi kan derfor, for hver kameraparameter, beregne spredning af målingerne (der gerne alle skulle være små). Hvis en parameter har stor spredning er bestemmelsen af denne parameter ustabil.


Krav til rapporten

Rapporten bør indeholde:

  1. En beskrivelse af de anvendte kalibreringsmetoder
  2. En beskrivelse og vurdering af de opnåede resultater herunder kommenteret redegørelse for M og S mv.
  3. Udskrifter af de optagne billeder, af de målte billedkoordinater, og de udledte kameraparemetre.
Der skal ikke lægges vægt på en udtømmende beskrivelse af de anvendte metoder, medmindre disse adskiller sig væsentligt fra de i lærebogen beskrevne metoder. Benyttes disse direkte (og uden problemer) kan metodebeskrivelsen holdes på 1-2 side/metode. Der bør lægges vægt på en god beskrivelse af de opnåede resultater, herunder redegørelse for evt. problemer, samt for hvorledes kalibreringerne er vurderet.

De udviklede programmer mv. behøver ikke beskrives eller vedlægges.


Kalibreringskoordinater

PUNKT X-koordinat Y-koordinat Z-koordinat
31 -0.026 -0.059 -0.049
32 1.713 279.004 -0.102
33 4.034 560.917 -0.027
34 310.236 -33.816 0.855
35 315.404 592.421 0.496
36 625.698 -5.883 1.579
37 627.913 273.833 1.483
38 629.804 555.321 1.208
41 -0.245 32.709 326.072
42 1.194 281.383 325.769
43 3.128 532.145 325.583
44 310.665 -33.535 326.568
45 316.093 592.798 325.936
46 626.566 25.669 326.682
47 628.596 276.684 326.531
48 629.955 526.818 326.662
51 -12.530 2.039 338.266
52 -10.874 281.692 338.385
53 -9.105 560.411 337.647
54 -12.597 -31.801 174.611
55 -8.596 594.621 174.679
56 -12.780 0.524 12.058
57 -10.705 281.680 12.813
58 -8.726 561.359 12.492
61 614.257 25.938 340.174
62 615.964 276.331 338.873
63 617.596 526.980 339.145
64 613.305 -35.407 177.244
65 617.748 590.469 175.503
66 613.496 26.747 15.051
67 615.248 273.485 14.399
68 617.113 527.360 13.933