羅伯茲運算子

羅伯茲運算子()是相當傳統的邊緣檢測演算法之一,常用於影像處理及電腦視覺,於1963年由美國電腦科學家(Lawrence Roberts)提出,屬於一階導數型邊緣檢測算子。其原理為透過一組2x2卷積矩陣近似影像強度的偏導數,由於其卷積矩陣的樣貌,會著重於45度和135度的對角線方向,再進行梯度計算辨識出影像中的邊緣。

作為最早被提出的邊緣檢測演算法,其簡單的架構容易受到雜訊的影響,因此對原始影像的品質要求較高。不過,身為電腦視覺領域的先驅者,他仍深刻影響著後續其他進階演算法的研究。

一階導數邊緣檢測
對影像取一階導數為最常見的邊緣檢測方法之一,可由一階泰勒展開式近似

f'(x)\approx
\frac{f(x+h)-f(x)}{h}

就二維數位影像而言,若設一畫素尺寸為 \Delta x=\Delta y=1,可以偏微分方式計算

f_x=\frac{\partial f(x,y)}{\partial x}\approx f(i+1,j)-f(i,j)

f_y=\frac{\partial f(x,y)}{\partial y}\approx f(i,j+1)-f(i,j)

而羅伯茲運算子正是最早使用此概念設計二維mask的方法之一,用以計算對角線畫素間的梯度落差。

其他一階邊緣偵測算子可見:Canny算子、Sobel算子、Prewitt算子等。

發展歷史
羅伯茲在1963年發表了「三維物件的機器感知」(Machine Perception of Three-Dimensional Solids)

\vert G \vert = \sqrt{G_x^2+G_y^2}

(或以 \vert G \vert \approx
\vert G_x \vert+\vert G_y \vert 近似,在計算上較為快速)

當梯度量值大於一閾值,即可將該畫素定義為邊緣。

梯度方向也可求出

\alpha = \arctan{\biggl(\frac{G_y}{G_x}\biggl)}

參見

  • 索伯算子
  • 坎尼算子
  • 蒲瑞維特算子
  • 邊緣偵測
  • 特徵偵測
  • 數位影像處理
  • 影像處理
  • 電腦視覺
  • 數位訊號處理

参考资料

评论 (0)

  • 还没有评论,来抢沙发吧。