Dear Thomas,
I have done something similar for my master thesis. Also during the current
course of finishing my Ph.D., it appears that problem of calibration will
again take a large portion of my work, besides structured light and 'pure'
biomechanical stuff. Therefore, as briefly as possible, here are my
impressions about camera calibration concept.
Among all possible approaches you pointed out I sincerely believe that
future lies in camera calibration using only scene information, i.e. waving
with a wand (point C in your original mail). With all due respect to
previous approaches, with 3D calibration rig and/or even 2D calibration
plane, they appear to be very cumbersome for the end-user, particularly in
outdoor conditions. Since the end-user expectations carry a large weight in
today's market strategies of MoCap system chacacaheristics, I believe
calibration with 3D rig and 2D plane will be avoided whenever possible in
system creation and replaced by some more convenient approach such as waving
with a wand.
Look for example calibration of Vicon, Elite, Smart etc. They all offer
nowadays almost exclusively (maybe someone can correct me if that's not all)
calibration with a wand, although within procedure which also includes
imaging orthogonal triad of axes usually positioned on the floor, supposable
only for definition of spatial coordinate system origin. However, I do not
know the details of their algorithms behind. Thus I am a little bit skeptic
what orthogonal triad really serves for. Namely, for definition of spatial
system you can just put down three markers. Furthemore, in theory you could
calibrate cameras using only their proposed orthogonal triad of axes!!! and
maybe use waving with a wand for calibration 'fine tuning'. On the other
hand, assuming some rather strong (but realistic with good cameras)
assumptions about one part of internal parameters you can calculate the rest
calibrating pair of cameras using waving wand only - no orthogonal axes
triad needed.
The good news for the old system is that great deal of the work is still
done in laboratory environment. It means that cameras are not necessarily
frequently calibrated. In fact once the cameras are fastened and calibrated
it may take weeks (if not longer!) before some necessity arises for change
of calibration volume since many laboratories use their systems for rather
specific purposes which all more or less encompasses they same calibration
volume.
In terms of reconstruction accuracy a lot of researches still agree that if
the highest degree of accuracy is demanded then traditional 3D calibration
rig (carefully fabricated!) is still favorable. Nevertheless, I would dare
to say that good quality wand calibration (which in practice may not be easy
to achieve) would give you for biomechanical purposes (at least large
portion of it) at the end the same results since motion imaging is subject
also to numerous other source of errors (apart from imperfect calibration),
hence you would not be able to tell the difference (consider only placement
of markers and/or skin movement).
If we focus primarily on calibration itself then I think one of the major
sources of error is non-linear image distortion. It's caused largely from
imperfect camera lens and if you can afford to buy yourself good camera
optics then many of the calibration algorithms will work out just fine. On
the contrary, if you have severe distortion do not get disappointed if some
of your implementations of some 'novel and practical' calibration procedures
give ultimately poor reconstruction results, if not fail completely (unless
nonlinearity is somehow taken care of). It is my understanding that if you
are serious in setting up some MoCap system it is better to spend more many
on hardware (of course if possible) then try to make it up with some
software solutions (including the most elaborate camera model functions).
It is obvious that you scanned a vast amount of literature, but if I may try
to fill in perhaps some gaps and recommend you the following book:
"Multiple View Geometry in Computer Vision" by R. Hartley and A. Zisserman.
I have read almost entire book and it seems to me very comprehensive
reference of many problems in computer vision, including camera calibration.
Besides prof.Zissereman was very helpful via email on several occasions
regarding some questions about their book and I believe it will help you out
also, if needed. In particular to try to fill in your gap: in that book you
will find
out that when calibrating cameras using only scene constraints (known
angles, distance ratios, corresponding points etc.) you can acquire both
external and internal parameters (at least theoretically). Thus, you do not
need to use Zhang method to find internal parameters 'off line'. However, be
aware that many of those methods that relay solely on scene constraints are
in practice very subtle to errors (such as image distortion as mentioned
above) and work basically on synthetic data only.
I hope you will find this a bit useful and I'll be glad to further continue
this discussion.
Best, Tomislav.
Tomislav Pribanic, M.Sc., EE
Department for Electronic Systems and Information Processing
Faculty of Electrical Engineering and Computing
3 Unska, 10000 Zagreb, Croatia
tel. ..385 1 612 98 67, fax. ..385 1 612 96 52
E-mail : tomislav.pribanic@fer.hr
----- Original Message -----
From: "Thomas Klein"
To:
Sent: Wednesday, August 25, 2004 1:51 PM
Subject: [BIOMCH-L] Help with diploma thesis about camera calibration
Dear Biomech-l subscribers,
I'm a sports science student and currently working an my diploma thesis
about camera calibration. The objective of my work is to collect several
(mainly the most relevant ones) calibration techniques/approaches from the
fields of photogrammetry, machine and computer vision, implement them (or
use existing freely available implementations) and evaluate them in the
context of motion analysis (3D reconstruction).
My purpose is to give a good overview about existing approaches (state of
the art) and to describe the posibilities and restrictions (advantages and
disadvantages) they provide for the use in motion analysis, with respect to
accuracy, efficiency, expenses for setup, volume of calibrated object space
(extrapolation issues), use of different calibration targets (planar
patterns, 3D patterns, simulated 3D etc., ) and so on. I also want to
consider the aspect of applying camera calibration under non-laboratory
conditions, which is, as I think, an important fact when using motion
analysis for movement analysis in sports.
I have collected an enormous number of publications and literature relating
to the subject of camera calibration and selected the following categories,
resp. the following representative approaches for further inspection:
A) Linear camera calibration using calibration target
- Standart DLT (originally reported by Abdel-Aziz/Karara)
B) Non-linear approaches using calibration target
- Extended DLT; solving for several parameters modeling lens distorsion
(i.e. as presented at
www.kwon3d.com)
- Modified DLT version (H. Hatze); Version solving only for the 11 standart
DLT-parameters and
extended version taking into account several paramaters for modeling lens
distorsion
- R. Tsai's approach solving for 1 additional parameter modeling radial
symmetric distorsion
- multi-step methods estimating initial camera parameters by solving linear
equations in the first
step and improving these initial guesses by nonlinear optimization within
the following steps
C) Camera calibration (ext. orientation) using no calibration target (only
scene information) or
corresponding points, whose object-space coordinates are unknown,
recieved by waving i.e. a
wand prepared with markers
- Calibrating intrinsic parameters for each camera seperately using i.e.
Zang's plane calibration
(Described in: "A flexible camera calibration technique by viewing a plane
from unknown
orientation") and afterwards calibate the exterior orientation of the
cameras using the intrinsic
parameters and information about corresponding points.
Because my diploma thesis is of course limited to a certain space of time I
have not had the chance to go through all available publication in detail. I
just want to be sure, that my conception of the existing state of the art is
correct and I did not forget to include any important approaches.
I would greatly appreciate any responses pointing out gaps in my concept. Of
course I'm also thankful for further suggestiones to take into account witin
my work.
As I plan to implement the selected approaches (or use freely available
implementations) to test and evaluate them, every available implementation
(preferably in c/c++) is wellcome to me, because it will save me some time.
I'm aware of the following existing implementations:
- Fortran DLT implementation by H.J. Woltring
- Tsai Algorith C-implementation by Reg Wilson
- Matlab Camera calibration toolbox by Halir/Bakstein
- MDLT Matlab implementation by Tomislav Pribanic
- Matlab Camera calibration toolbox by Janne Heikkilä
With kind regards,
Thomas Klein
--
----------------------------------------------------------------------------
----
"Watch your thoughts - they become words.
Watch your words - they become actions.
Watch your actions - they become habits.
Watch your habits - they become character.
Watch your character - it becomes your destiny. "
(Frank Outlaw)
----------------------------------------------------------------------------
----
Thomas Klein
Rolandseckstr. 11
81375 München
__________________________________________________ ______________
Verschicken Sie romantische, coole und witzige Bilder per SMS!
Jetzt neu bei WEB.DE FreeMail: http://freemail.web.de/?mc=021193
-----------------------------------------------------------------
To unsubscribe send SIGNOFF BIOMCH-L to LISTSERV@nic.surfnet.nl
For information and archives: http://isb.ri.ccf.org/biomch-l
Please consider posting your message to the Biomch-L Web-based
Discussion Forum: http://movement-analysis.com/biomch_l
-----------------------------------------------------------------
-----------------------------------------------------------------
To unsubscribe send SIGNOFF BIOMCH-L to LISTSERV@nic.surfnet.nl
For information and archives: http://isb.ri.ccf.org/biomch-l
Please consider posting your message to the Biomch-L Web-based
Discussion Forum: http://movement-analysis.com/biomch_l
-----------------------------------------------------------------
I have done something similar for my master thesis. Also during the current
course of finishing my Ph.D., it appears that problem of calibration will
again take a large portion of my work, besides structured light and 'pure'
biomechanical stuff. Therefore, as briefly as possible, here are my
impressions about camera calibration concept.
Among all possible approaches you pointed out I sincerely believe that
future lies in camera calibration using only scene information, i.e. waving
with a wand (point C in your original mail). With all due respect to
previous approaches, with 3D calibration rig and/or even 2D calibration
plane, they appear to be very cumbersome for the end-user, particularly in
outdoor conditions. Since the end-user expectations carry a large weight in
today's market strategies of MoCap system chacacaheristics, I believe
calibration with 3D rig and 2D plane will be avoided whenever possible in
system creation and replaced by some more convenient approach such as waving
with a wand.
Look for example calibration of Vicon, Elite, Smart etc. They all offer
nowadays almost exclusively (maybe someone can correct me if that's not all)
calibration with a wand, although within procedure which also includes
imaging orthogonal triad of axes usually positioned on the floor, supposable
only for definition of spatial coordinate system origin. However, I do not
know the details of their algorithms behind. Thus I am a little bit skeptic
what orthogonal triad really serves for. Namely, for definition of spatial
system you can just put down three markers. Furthemore, in theory you could
calibrate cameras using only their proposed orthogonal triad of axes!!! and
maybe use waving with a wand for calibration 'fine tuning'. On the other
hand, assuming some rather strong (but realistic with good cameras)
assumptions about one part of internal parameters you can calculate the rest
calibrating pair of cameras using waving wand only - no orthogonal axes
triad needed.
The good news for the old system is that great deal of the work is still
done in laboratory environment. It means that cameras are not necessarily
frequently calibrated. In fact once the cameras are fastened and calibrated
it may take weeks (if not longer!) before some necessity arises for change
of calibration volume since many laboratories use their systems for rather
specific purposes which all more or less encompasses they same calibration
volume.
In terms of reconstruction accuracy a lot of researches still agree that if
the highest degree of accuracy is demanded then traditional 3D calibration
rig (carefully fabricated!) is still favorable. Nevertheless, I would dare
to say that good quality wand calibration (which in practice may not be easy
to achieve) would give you for biomechanical purposes (at least large
portion of it) at the end the same results since motion imaging is subject
also to numerous other source of errors (apart from imperfect calibration),
hence you would not be able to tell the difference (consider only placement
of markers and/or skin movement).
If we focus primarily on calibration itself then I think one of the major
sources of error is non-linear image distortion. It's caused largely from
imperfect camera lens and if you can afford to buy yourself good camera
optics then many of the calibration algorithms will work out just fine. On
the contrary, if you have severe distortion do not get disappointed if some
of your implementations of some 'novel and practical' calibration procedures
give ultimately poor reconstruction results, if not fail completely (unless
nonlinearity is somehow taken care of). It is my understanding that if you
are serious in setting up some MoCap system it is better to spend more many
on hardware (of course if possible) then try to make it up with some
software solutions (including the most elaborate camera model functions).
It is obvious that you scanned a vast amount of literature, but if I may try
to fill in perhaps some gaps and recommend you the following book:
"Multiple View Geometry in Computer Vision" by R. Hartley and A. Zisserman.
I have read almost entire book and it seems to me very comprehensive
reference of many problems in computer vision, including camera calibration.
Besides prof.Zissereman was very helpful via email on several occasions
regarding some questions about their book and I believe it will help you out
also, if needed. In particular to try to fill in your gap: in that book you
will find
out that when calibrating cameras using only scene constraints (known
angles, distance ratios, corresponding points etc.) you can acquire both
external and internal parameters (at least theoretically). Thus, you do not
need to use Zhang method to find internal parameters 'off line'. However, be
aware that many of those methods that relay solely on scene constraints are
in practice very subtle to errors (such as image distortion as mentioned
above) and work basically on synthetic data only.
I hope you will find this a bit useful and I'll be glad to further continue
this discussion.
Best, Tomislav.
Tomislav Pribanic, M.Sc., EE
Department for Electronic Systems and Information Processing
Faculty of Electrical Engineering and Computing
3 Unska, 10000 Zagreb, Croatia
tel. ..385 1 612 98 67, fax. ..385 1 612 96 52
E-mail : tomislav.pribanic@fer.hr
----- Original Message -----
From: "Thomas Klein"
To:
Sent: Wednesday, August 25, 2004 1:51 PM
Subject: [BIOMCH-L] Help with diploma thesis about camera calibration
Dear Biomech-l subscribers,
I'm a sports science student and currently working an my diploma thesis
about camera calibration. The objective of my work is to collect several
(mainly the most relevant ones) calibration techniques/approaches from the
fields of photogrammetry, machine and computer vision, implement them (or
use existing freely available implementations) and evaluate them in the
context of motion analysis (3D reconstruction).
My purpose is to give a good overview about existing approaches (state of
the art) and to describe the posibilities and restrictions (advantages and
disadvantages) they provide for the use in motion analysis, with respect to
accuracy, efficiency, expenses for setup, volume of calibrated object space
(extrapolation issues), use of different calibration targets (planar
patterns, 3D patterns, simulated 3D etc., ) and so on. I also want to
consider the aspect of applying camera calibration under non-laboratory
conditions, which is, as I think, an important fact when using motion
analysis for movement analysis in sports.
I have collected an enormous number of publications and literature relating
to the subject of camera calibration and selected the following categories,
resp. the following representative approaches for further inspection:
A) Linear camera calibration using calibration target
- Standart DLT (originally reported by Abdel-Aziz/Karara)
B) Non-linear approaches using calibration target
- Extended DLT; solving for several parameters modeling lens distorsion
(i.e. as presented at
www.kwon3d.com)
- Modified DLT version (H. Hatze); Version solving only for the 11 standart
DLT-parameters and
extended version taking into account several paramaters for modeling lens
distorsion
- R. Tsai's approach solving for 1 additional parameter modeling radial
symmetric distorsion
- multi-step methods estimating initial camera parameters by solving linear
equations in the first
step and improving these initial guesses by nonlinear optimization within
the following steps
C) Camera calibration (ext. orientation) using no calibration target (only
scene information) or
corresponding points, whose object-space coordinates are unknown,
recieved by waving i.e. a
wand prepared with markers
- Calibrating intrinsic parameters for each camera seperately using i.e.
Zang's plane calibration
(Described in: "A flexible camera calibration technique by viewing a plane
from unknown
orientation") and afterwards calibate the exterior orientation of the
cameras using the intrinsic
parameters and information about corresponding points.
Because my diploma thesis is of course limited to a certain space of time I
have not had the chance to go through all available publication in detail. I
just want to be sure, that my conception of the existing state of the art is
correct and I did not forget to include any important approaches.
I would greatly appreciate any responses pointing out gaps in my concept. Of
course I'm also thankful for further suggestiones to take into account witin
my work.
As I plan to implement the selected approaches (or use freely available
implementations) to test and evaluate them, every available implementation
(preferably in c/c++) is wellcome to me, because it will save me some time.
I'm aware of the following existing implementations:
- Fortran DLT implementation by H.J. Woltring
- Tsai Algorith C-implementation by Reg Wilson
- Matlab Camera calibration toolbox by Halir/Bakstein
- MDLT Matlab implementation by Tomislav Pribanic
- Matlab Camera calibration toolbox by Janne Heikkilä
With kind regards,
Thomas Klein
--
----------------------------------------------------------------------------
----
"Watch your thoughts - they become words.
Watch your words - they become actions.
Watch your actions - they become habits.
Watch your habits - they become character.
Watch your character - it becomes your destiny. "
(Frank Outlaw)
----------------------------------------------------------------------------
----
Thomas Klein
Rolandseckstr. 11
81375 München
__________________________________________________ ______________
Verschicken Sie romantische, coole und witzige Bilder per SMS!
Jetzt neu bei WEB.DE FreeMail: http://freemail.web.de/?mc=021193
-----------------------------------------------------------------
To unsubscribe send SIGNOFF BIOMCH-L to LISTSERV@nic.surfnet.nl
For information and archives: http://isb.ri.ccf.org/biomch-l
Please consider posting your message to the Biomch-L Web-based
Discussion Forum: http://movement-analysis.com/biomch_l
-----------------------------------------------------------------
-----------------------------------------------------------------
To unsubscribe send SIGNOFF BIOMCH-L to LISTSERV@nic.surfnet.nl
For information and archives: http://isb.ri.ccf.org/biomch-l
Please consider posting your message to the Biomch-L Web-based
Discussion Forum: http://movement-analysis.com/biomch_l
-----------------------------------------------------------------