撰寫一個程式,讀取一張 256 色灰階圖像或 RGB 全彩圖像,利用 Sobel Operators 偵測圖像邊緣,並以邊緣偵測為基礎,設計一個類似素描線條自畫像程式。
二、環境配置
- windows10
- python 3.7
- opencv 4.0
- numpy 1.15.1
三、實作方法
一開始,imread讀取圖檔
如果圖檔是彩色圖,先將圖片轉為YCrCb格式,分離Y channel,轉成灰階圖,讓通道只能一個
原圖-轉為灰階 |
用GaussianBlur過濾圖片細節的部分,減少細節層次顯示,讓邊緣更明顯
高斯過濾圖 |
利用Sobel operators偵測圖像邊緣,計算x跟y方向的梯度
Gx方向圖像邊緣
x方向的梯度圖 |
Gy方向圖像邊緣
y方向的梯度圖 |
將兩個梯度方向的圖像組合
原圖與結果的圖像比較
沒有留言:
張貼留言