顯示具有 s1071221 標籤的文章。 顯示所有文章
顯示具有 s1071221 標籤的文章。 顯示所有文章

2021年3月27日 星期六

s1071221 影像處理作業2

 一、作業說明:

撰寫一個程式,讀取一張 256 色灰階圖像或 RGB 全彩圖像(.bmp 或.jpg 圖像格式都可, 如全彩圖像可先將圖片由 RGB 轉換至灰階影像),利用 Sobel Operators 圖像邊緣為基礎,設計一個類似素描線條自畫像程式。(如果可以分析邊緣偵測所得到的點,結合成線條方式呈現更佳!)

二、使用環境:

作業系統 : windows10
編譯軟體: Visual Studio Code
使用語言
: python 3.9.2/opencv 4.1.2
 
三、方法:

1. imread讀取圖片,並把讀取方式設為灰階
2. 利用
Sobel,它可以單獨針對X軸、Y軸抓取其邊緣
3. 
由於Sobel運算元是在兩個方向計算的,最後還需要用cv2.addWeighted()函式將其組合起來
4. 利用
bitwise_not()函式將黑色變白色、白色變成黑色
5. imwrite
儲存圖片
6. imshow
圖片顯示
 
四、執行結果:

Original:

原圖

Sobel():
bitwise_not():


2021年2月27日 星期六

s1071221影像處理 作業1

一、作業說明:

撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v(-255 <= v <= 255 )並將圖像儲存至一個新圖像檔案中

二、使用環境:

作業系統 : windows10
編譯軟體: Visual Studio Code
使用語言
: python 3.9.2/opencv 4.1.2
 
三、方法:

1. imread讀取圖片,並把讀取方式設為一般(不含透明度)
2. 
由於OpenCV裡面是靠numpy陣列在記錄圖像資訊,所以只要建立一numpy陣列就等同於建立一個圖像了,所以建立一個(blue=100,green=100,red=100)的純色圖像
3. 
圖像相加(大於255的會直接等於255) 亮度變亮
4. 
圖像相減(小於0的會直接等於0) 亮度變暗
5. imwrite
儲存變暗圖片和變亮圖片
6. imshow
圖片顯示

 
四、執行結果: