1. 程式人生 > 程式設計 >Python實現將藍底照片轉化為白底照片功能完整例項

Python實現將藍底照片轉化為白底照片功能完整例項

本文例項講述了Python實現將藍底照片轉化為白底照片功能。分享給大家供大家參考,具體如下:

import cv2
import numpy as np
img=cv2.imread('yay.jpg') #原始圖片
#縮放
rows,cols,channels = img.shape
img=cv2.resize(img,None,fx=0.5,fy=0.5)
rows,channels = img.shape
cv2.imshow('img',img)
#轉換hsv
hsv=cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
lower_blue=np.array([78,43,46])
upper_blue=np.array([110,255,255])
mask = cv2.inRange(hsv,lower_blue,upper_blue)
#cv2.imshow('Mask',mask)
#腐蝕膨脹
erode=cv2.erode(mask,iterations=1)
#cv2.imshow('erode',erode)
dilate=cv2.dilate(erode,iterations=1)
#cv2.imshow('dilate',dilate)
#遍歷替換
for i in range(rows):
  for j in range(cols):
    if dilate[i,j]==255:
      img[i,j]=(255,255)#此處替換顏色,為BGR通道
cv2.imwrite('new.jpg',img) #生成的新圖片
cv2.waitKey(0)
cv2.destroyAllWindows()

這裡效果的確不是太好,如果還想看更好的轉化效果,請看前面一篇博文:C++ opencv把藍底照片轉化為白底照片。

效果圖如下:

參考文件:https://www.jb51.net/article/158266.htm

更多關於Python相關內容感興趣的讀者可檢視本站專題:《Python圖片操作技巧總結》、《Python資料結構與演算法教程》、《Python Socket程式設計技巧總結》、《Python函式使用技巧總結》、《Python字串操作技巧彙總》、《Python入門與進階經典教程》及《Python檔案與目錄操作技巧彙總》

希望本文所述對大家Python程式設計有所幫助。