最近學習了Python的圖像處理,其中有個很有趣的操作,就是將白天的照片轉換成黑夜的效果。今天就來給大家分享一下這個小技巧。
首先,我們需要導入相關的庫。其中,
numpy用于矩陣運算,
opencv用于圖像處理。
import numpy as np import cv2
接下來,我們需要讀取一張白天的照片。這里我選用了一張海邊的照片。
img = cv2.imread('day.jpg')
然后,我們需要將RGB的顏色空間轉換成HSV的顏色空間。HSV(色相、飽和度、亮度)是在彩色空間中比較直觀的一種顏色描述方式。
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
由于夜晚的場景通常比白天昏暗,因此我們需要將亮度進行調整。這里,我們可以使用矩陣運算,將亮度減少一定的值。
hsv[:,:,2] = hsv[:,:,2] - 50
最后,我們將處理好的圖像轉換回RGB空間,然后保存成一張黑夜的照片。
night_img = cv2.cvtColor(hsv, cv2.COLOR_HSV2BGR) cv2.imwrite('night.jpg', night_img)
運行代碼后,我們可以看到黑夜照片已經生成了。
以上就是使用Python將白天的照片轉換成黑夜的簡單方法。如果有興趣,可以試著修改代碼,看看能否生成更加精細的黑夜效果。