maxRadius
angle°
magnitude
dx
dy
centerC(xc , yc)
A(xA , yA)
BOUNDING CIRCLE
a) Source Image
ρ: 0 .. dsize.cols = Kx * maxRadius
centerC(0,0)
centerC(0,0)
ϕA = Ky * angle°
A(ρA , ϕA)
CV_WARP_FILL_OUTLIERS
Kangle = dsize.height / 2PIKlog = dsize.width / loge(maxRadius)
Blue cross in the center
c) linearPolar() Deprecated
d) semiLog=true
ϕA = Kangle * angle
A(ρA , ϕA)
Kx = src.cols / maxRadiusKy = src.rows / 2PI
ρ: 0..dsize.width = Klog * loge(maxRadius)
ϕ: 0 .. dsize.height = Kangle * 2PI
ρA = Klog*loge(magnitude )
270
240
210
180
150
120
90
60
30
330
300
0
Size: W:600 H:440 pxCenter = x:240, y:220magnitude=100pxangle = 60degmaxRadius= 230px
Kx = 600px / 230px = 2.609 => rho = 260.869pxKy = 440px / 360deg = 1.222 pix/deg = phi = 73.333pxM = 600px / ln(230px) = 110.33 pn/ln(px) => rho = 508.103px
b) Params References
OUTLIERS
ρA = Kx * magnitude
ρ: 0 .. dsize.width = Klin * maxRadius
centerC(0,0)
ϕA = Kphi * angle°
A(ρA , ϕA)
Blue crossin thecenter
ρA = Klin * magnitude
CV_WARP_FILL_OUTLIERS
ϕ: 0 .. dsize.height = Kangle * 2PI
c) semiLog=false
Kangle = dsize.height / 2PIKlin = dsize.width / maxRadius
Blue crossin thecenter
CV_WARP_FILL_OUTLIERS
image/svg+xml
OpenCV
2016-08-08
PkLab.net
linearPolar
logPolar
image processing
OpenCV