2021年3月27日 星期六

s1071523 影像處理作業2

 作業說明:

撰寫一個程式,讀取一張 256 色灰階圖像或 RGB 全彩圖像(.bmp 或.jpg 圖像格式都可, 如全彩圖像可先將圖片由 RGB 轉換至灰階影像),利用 Sobel Operators 圖像邊緣為基 礎,設計一個類似素描線條自畫像程式

開發環境:

  • Windows 10
  • Visual Studio Code
  • Python 3.8.5
  • OpenCV 4.4.0

實作:

  1. 讀取全彩圖像
  2. 將圖像轉灰階
  3. 使用Sobel()對x、y方向求導,而Sobel()求完的值無法用uint8表示,因此要使用cv2.CV_16S資料型別儲存圖像
  4. 使用convertScaleAbs()將處理後的圖像轉回原來的uint8形式
  5. 使用addWeighted()將兩個方向的圖像組合起來,會得到黑底白線條的圖像
  6. 讓像素<100的點變為0,使圖像更清晰
  7. 每個像素的值做 255-原值 的運算,得到白底黑線條的圖像

執行結果:

原圖:

黑底白線條:

白底黑線條


沒有留言:

張貼留言