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,cols,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,None,iterations=1)
#cv2.imshow('erode',erode)
dilate=cv2.dilate(erode,None,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,255)#此处替换颜色,为BGR通道
cv2.imwrite('new.jpg',img) #生成的新图片
cv2.waitKey(0)
cv2.destroyAllWindows()

这里效果的确不是太好,如果还想看更好的转化效果,请看前面一篇博文:C++ opencv把蓝底照片转化为白底照片。

效果图如下:

Python实现将蓝底照片转化为白底照片功能完整实例_第1张图片

Python实现将蓝底照片转化为白底照片功能完整实例_第2张图片

参考文档:https://www.jb51.net/article/158266.htm

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

你可能感兴趣的:(Python实现将蓝底照片转化为白底照片功能完整实例)