- 數字影像處理
- DIP - 首頁
- DIP - 影像處理介紹
- DIP - 訊號與系統介紹
- DIP - 攝影史
- DIP - 應用與用途
- DIP - 維度的概念
- DIP - 相機成像
- DIP - 相機機制
- DIP - 畫素的概念
- DIP - 透視變換
- DIP - 每畫素位元數的概念
- DIP - 影像型別
- DIP - 顏色程式碼轉換
- DIP - 灰度到RGB轉換
- DIP - 取樣的概念
- DIP - 畫素解析度
- DIP - 放大的概念
- DIP - 放大方法
- DIP - 空間解析度
- DIP - 畫素、點和每英寸線條數
- DIP - 灰度解析度
- DIP - 量化的概念
- DIP - ISO 偏好曲線
- DIP - 抖動的概念
- DIP - 直方圖介紹
- DIP - 亮度和對比度
- DIP - 影像變換
- DIP - 直方圖滑動
- DIP - 直方圖拉伸
- DIP - 機率論介紹
- DIP - 直方圖均衡化
- DIP - 灰度變換
- DIP - 卷積的概念
- DIP - 模板的概念
- DIP - 模糊的概念
- DIP - 邊緣檢測的概念
- DIP - Prewitt 運算元
- DIP - Sobel 運算元
- DIP - Robinson 羅盤模板
- DIP - Krisch 羅盤模板
- DIP - 拉普拉斯運算元
- DIP - 頻域分析
- DIP - 傅立葉級數和變換
- DIP - 卷積定理
- DIP - 高通濾波器與低通濾波器
- DIP - 顏色空間介紹
- DIP - JPEG 壓縮
- DIP - 光學字元識別
- DIP - 計算機視覺與圖形學
- DIP 有用資源
- DIP - 快速指南
- DIP - 有用資源
- DIP - 討論
Sobel運算元
Sobel運算元與Prewitt運算元非常相似。它也是一個導數模板,用於邊緣檢測。與Prewitt運算元一樣,Sobel運算元也用於檢測影像中的兩種邊緣。
- 垂直方向
- 水平方向
與Prewitt運算元的區別
主要區別在於,在Sobel運算元中,模板的係數不是固定的,可以根據需要調整,除非它們違反了導數模板的任何屬性。
Sobel運算元的垂直模板
以下是Sobel運算元的垂直模板:
| -1 | 0 | 1 |
| -2 | 0 | 2 |
| -1 | 0 | 1 |
此模板的工作原理與Prewitt運算元的垂直模板完全相同。只有一個區別,即它在第一列和第三列的中心具有“2”和“-2”的值。應用於影像時,此模板將突出顯示垂直邊緣。
工作原理
當我們將此模板應用於影像時,它會突出顯示垂直邊緣。它就像一階導數一樣,計算邊緣區域中畫素強度的差異。
由於中心列為零,因此它不包含影像的原始值,而是計算該邊緣周圍左右畫素值的差值。此外,第一列和第三列的中心值分別為2和-2。
這為邊緣區域周圍的畫素值賦予了更大的權重。這增加了邊緣強度,使其與原始影像相比得到增強。
Sobel運算元的水平模板
以下是Sobel運算元的水平模板:
| -1 | -2 | -1 |
| 0 | 0 | 0 |
| 1 | 2 | 1 |
上述模板將查詢水平方向的邊緣,這是因為零列位於水平方向。當您將此模板與影像進行卷積時,它會在影像中突出顯示水平邊緣。唯一的區別是它在第一行和第三行的中心元素為2和-2。
工作原理?
此模板將突出顯示影像中的水平邊緣。它也基於上述模板的原理,計算特定邊緣的畫素強度差異。由於模板的中心行由零組成,因此它不包含影像中邊緣的原始值,而是計算特定邊緣的上下畫素強度差異。從而增加了強度的突然變化,使邊緣更清晰可見。
現在是時候看看這些模板的實際效果了
示例影像
以下是我們將一次應用上述兩個模板的示例圖片。
應用垂直模板後
將垂直模板應用於上述示例影像後,將獲得以下影像。
應用水平模板後
將水平模板應用於上述示例影像後,將獲得以下影像。
比較
您可以看到,在我們應用垂直模板的第一張圖片中,所有垂直邊緣都比原始影像更清晰。同樣,在第二張圖片中,我們應用了水平模板,結果所有水平邊緣都清晰可見。
因此,您可以看到我們可以檢測影像中的水平和垂直邊緣。此外,如果您將Sobel運算元的結果與Prewitt運算元的結果進行比較,您會發現Sobel運算元找到的邊緣更多,或者使邊緣比Prewitt運算元更清晰可見。
這是因為在Sobel運算元中,我們為邊緣周圍的畫素強度分配了更大的權重。
對模板應用更大的權重
現在我們還可以看到,如果我們對模板應用更大的權重,它將為我們獲得更多的邊緣。如教程開頭所述,Sobel運算元沒有固定的係數,因此這裡還有另一個加權運算元:
| -1 | 0 | 1 |
| -5 | 0 | 5 |
| -1 | 0 | 1 |
如果您將此模板的結果與Prewitt垂直模板的結果進行比較,很明顯,此模板將比Prewitt模板產生更多的邊緣,這僅僅是因為我們在模板中分配了更大的權重。