引言
極座標轉換在影象預處理中應用廣泛,對圓形扇形影象的矯正起到了關鍵作用,本文主要講解極座標轉換的原理實現**和一些應用例項。
1極座標轉換原理二維座標系下,某點座標表示u(x,y),這種表示是在平面座標系下。
極座標表示某點利用某點到原點距離和夾角表示,u(r,α);
極座標和平面座標系轉換:
x=r*cos(α)
y=r*sin(α)
極座標使用弧度制, 平面座標上的任意點都能在極座標中 表示出來,而且不止一種表示方法。
c++實現
直角座標系轉換到極座標
#include
#include
using namespace std;
struct polar
double distance;
double angle;
struct rect
double x;
double y;
polar rect_to_polar(rect xypos);
void show_polar(polar dapos);
int main()
rect rplace;
polar pplace;
cout << " enter the x and y values: ";
while (cin >> rplace.x>>rplace.y)
pplace = rect_to_polar(rplace);
show_polar(pplace);
cout << "next two number (q to quit):";
cout << "done!\n";
return 0;
polar rect_to_polar(rect xypos)//直角座標系轉換到極座標系,得到極座標系下的座標
polar answer;
answer.distance =
sqrt(xypos.x*xypos.x + xypos.y*xypos.y);
answer.angle =
atan(xypos.y / xypos.x);
return answer;
void show_polar(polar dapos)
const double rad_to_deg = 57.29577951;
cout << "distance =" << dapos.distance<
cout << "angle =" << dapos.angle*rad_to_deg;
cout << " degrees\n";
應用例項
1.cd環形字元識別如圖所示,通過預處理blob分析得到擬合的圓心及半徑夠即可對cd影象進行極座標轉換得到橫向的字元影象。
2.進行圓形壓力表的的示數識別,如圖所示,首先將表盤擬合出圓形,然後通過極座標轉換得到拉直的表盤,通過測量指標與尺的位置關係,得到精準的圓形表盤示數。
直角座標系和極座標系. chen-sh. csdn
類的初步知識(c++中直角座標和極座標之間的轉換**). l_kuajie. csdn
在看喲
對數極座標轉換
執行對數極座標轉換 cvlogpolar src image,dst image,cvpoint2d32f src image width 4,src image height 2 78.0 再次執行對數極左邊轉換 cvlogpolar dst image,dst second image,cvpo...
極座標感想
數學在程式設計的中應用 以前寫程式,總感覺數學離我很遠。不知道數學是應用在哪些方面。演算法哪只能算是解決某種問題的思路。哪些純數學的東西好像沒有什麼實際應用。就在前些天,我看到了乙個例子,用js寫的小動畫煙花綻放,就深深體會到了數學的作用。而極座標就是我認識的第一步。極坐與笛卡爾座標的轉換,也體會到...
如何把極座標化為直角座標 深度理解極座標和球座標
首先,談談為什麼數學要引入座標系?座標的本質是為了方便地定位,數學中的座標也不例外。作為數學的重要概念,座標系是用代數方法研究幾何問題最有力的工具。通過將幾何元素 點 線 面 體 用座標表示出來,應用代數化的方程 運算等達成度量幾何體 處理幾何問題的目標。例如,把乙個三角形置於座標系中,確定三角形的...