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