Difference between revisions of "User:Klaus/Improving Hugin"

From PanoTools.org Wiki
Jump to navigation Jump to search
m (Not symmetrical?)
(medium short answer)
Line 2: Line 2:
 
* add a r^4 term to the a*r^3+b*r^2+c*r+d distortion correction (because the r^4 term like b*r^2 has correct symmetry whereas a and c terms are largely unphysical)
 
* add a r^4 term to the a*r^3+b*r^2+c*r+d distortion correction (because the r^4 term like b*r^2 has correct symmetry whereas a and c terms are largely unphysical)
 
: Why that? The formula applies to the radius of the image, which means it is always symmetrical. a and c terms work great to correct for special types of distortion ([[Wavy distortion|wavy one]] f.e.) <small>--[[User:Erik Krause|Erik Krause]] 22:07, 21 July 2009 (UTC)</small>
 
: Why that? The formula applies to the radius of the image, which means it is always symmetrical. a and c terms work great to correct for special types of distortion ([[Wavy distortion|wavy one]] f.e.) <small>--[[User:Erik Krause|Erik Krause]] 22:07, 21 July 2009 (UTC)</small>
 +
::Yes, it does work to some extend, but it is phenomenology only.
 +
::Mathematically, assuming the lense mapping function to be holomorphic is rather close to reality, without a singularity at r=0. Less stringent, but along the same line is the symmetry argument that flipping the sign, r -> -r, and adding 180 degrees to the angle, ought to give you the same output values. Polar coordinates need special treatment at r=0, but for the sake of reasoning one can go to (x,y) cartesian coordinates. Terms for a and c require sqrt(x^2+y^2), sqrt() has a singularity at 0 but the lense does not, so a<>0 and c<>0 introduce a behaviour the lense does not have.
 +
::A few days ago we were discussing the equivalence of different camera models on the hugin-ptx list. One has to compare them to (a*r^3+b*r^2+c*r+d)*r and one finds only odd powers of r in these. There must be a reason (but such heuristic argument I would not buy standalone).
 +
::And there is a practical issue. Of course we are talking of effects at the pixel level, but I did some tests last weekend and found that the (a,b,c) parameter set for my camera lense actually varies if I choose the placement of my Control Points in different ways. Imagine, you were to follow measurement prescription 1 and find a focal length of 50mm, then you follow measurement prescription 2 and find a focal length of 45mm. Exaggerated and simplified analogy, yes, but that is the situation I could confirm with my lense for the (a,b,c) parameter set.
 +
::In practice, I remember a stitch with one lone CP in a corner, which was misaligned by 3 pixels. Finding the sharpness ok, Finetune working fine, CA not spoiling either I now do put this to the deficiency of the (a,b,c) parametrisation in panotools. -- [[User:Klaus|Klaus]] 14:01, 22 July 2009 (UTC)
 
* allow simultaneous use of both flatfield polynomial and dustmap file
 
* allow simultaneous use of both flatfield polynomial and dustmap file
 
* <s>implement orthographic projection (benefits from antialiasing interpolators)</s> <small>implemented in Hugin 0.8.0 [[User:Klaus|Klaus]] 16:51, 21 July 2009 (UTC)</small>
 
* <s>implement orthographic projection (benefits from antialiasing interpolators)</s> <small>implemented in Hugin 0.8.0 [[User:Klaus|Klaus]] 16:51, 21 July 2009 (UTC)</small>
 
--[[User:Klaus|Klaus]] 14:30, 29 May 2008 (CEST)
 
--[[User:Klaus|Klaus]] 14:30, 29 May 2008 (CEST)

Revision as of 16:01, 22 July 2009

  • include antialiasing interpolators
  • add a r^4 term to the a*r^3+b*r^2+c*r+d distortion correction (because the r^4 term like b*r^2 has correct symmetry whereas a and c terms are largely unphysical)
Why that? The formula applies to the radius of the image, which means it is always symmetrical. a and c terms work great to correct for special types of distortion (wavy one f.e.) --Erik Krause 22:07, 21 July 2009 (UTC)
Yes, it does work to some extend, but it is phenomenology only.
Mathematically, assuming the lense mapping function to be holomorphic is rather close to reality, without a singularity at r=0. Less stringent, but along the same line is the symmetry argument that flipping the sign, r -> -r, and adding 180 degrees to the angle, ought to give you the same output values. Polar coordinates need special treatment at r=0, but for the sake of reasoning one can go to (x,y) cartesian coordinates. Terms for a and c require sqrt(x^2+y^2), sqrt() has a singularity at 0 but the lense does not, so a<>0 and c<>0 introduce a behaviour the lense does not have.
A few days ago we were discussing the equivalence of different camera models on the hugin-ptx list. One has to compare them to (a*r^3+b*r^2+c*r+d)*r and one finds only odd powers of r in these. There must be a reason (but such heuristic argument I would not buy standalone).
And there is a practical issue. Of course we are talking of effects at the pixel level, but I did some tests last weekend and found that the (a,b,c) parameter set for my camera lense actually varies if I choose the placement of my Control Points in different ways. Imagine, you were to follow measurement prescription 1 and find a focal length of 50mm, then you follow measurement prescription 2 and find a focal length of 45mm. Exaggerated and simplified analogy, yes, but that is the situation I could confirm with my lense for the (a,b,c) parameter set.
In practice, I remember a stitch with one lone CP in a corner, which was misaligned by 3 pixels. Finding the sharpness ok, Finetune working fine, CA not spoiling either I now do put this to the deficiency of the (a,b,c) parametrisation in panotools. -- Klaus 14:01, 22 July 2009 (UTC)
  • allow simultaneous use of both flatfield polynomial and dustmap file
  • implement orthographic projection (benefits from antialiasing interpolators) implemented in Hugin 0.8.0 Klaus 16:51, 21 July 2009 (UTC)

--Klaus 14:30, 29 May 2008 (CEST)