極坐標變換定義
我們知道在二維坐標系中,有直角坐標系,也有極坐標系,二者的轉換關系是:
如下圖:
如圖,直角坐標系的圓心與極坐標系的圓心一一對應,且圓弧BA可以通過極坐標變換到極坐標系ρ=r的一條直線上,實現由圓形到直線的轉換。這往往在一些圖像處理中很有用。
實際上,我們在圖像處理中,往往還不是處理這樣的圓弧,而更多的是處理圓環區域。如下,
同理,我們可以把(a)圖中的圓環區域1234,轉換成矩形區域(b).矩形區域與圓環存在一定的對應關系,區域轉換滿足:轉換前后兩區域頂點1234一一對應,轉換后的矩形區域寬為圓環內外弧弧長(?2??1),高為圓環內外半徑的差R2?R1.
具體的數學轉換關系是:獲取圓環區域的圓心坐標(x0,y0)、外半徑R2、內半徑R1、圓環起始角度?1和終止角度?2.取矩形區域一點A(x,y),它在圓弧內對應的點為A′.在圖(b)矩形區域中,每一個單位長度對應的角度為(?2??1)/[(?2??1)?R2],記(?2??1)為Δ?,則A對應于A’在圓環區域內極坐標下的角度?A表示為:
得到 ?A,RA后,可以通過極坐標變換得到直角坐標系下的坐標。
設A’在圓環區域內 (x′,y′),則
顯然A點的灰度值應該與A’的灰度值相同,但是A’的坐標值通常不是整數,因此無法計算A’的像素值,可以通過 雙線性插值獲得其近似像素值。
極坐標變換在OCR中的應用
在工業視覺領域,經常要進行字符識別,但是有些字符是印在像硬幣、CD唱片機一樣的圓形區域上,如下圖:
圖2
我們想要識別硬幣上的字符,這時需要使用OCR。OCR通常需要進行兩步,第一是字符分割,第二是字符識別。對于此圖而言,字符分割不容易,主要是由于我們需要識別的字符位于環形區域中,并不是一般意義上的水平排布,此時我們就可以使用如上的極坐標變換,先定位字符的圓環區域,再轉變到水平的矩形區域。這時再采取閾值分割、blob分析等手段分割字符,進而就可以進行OCR了。
極坐標變換后的圖是:
圖3
其他示例
參考文獻
- 基于HALCON的圓環區域字符識別實現
- 基于視覺技術的圓環外觀缺陷檢測算法研究
- 基于Halcon的指針式儀表的讀數
- 圖片極坐標效果揭秘