Home > Article > Backend Development > Python implements changing the background color of photos (with code)
The content of this article is about the Python implementation of changing the background color of photos (with code). It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you. helped.
Nowadays, there are many web-based tools for changing the background color online. How do they do this? In fact, it can be achieved using Python.
Environmental requirements
Python3
numpy function library
opencv library
Download the appropriate version of numpy function library, my computer is WIN10 64-bit, the installed function library is
numpy-1.13.1 mkl-cp36-cp36m-win_amd64.whl
Download the appropriate version of the numpy function library, my computer is WIN10 64-bit, the installed function The library is
opencv_python-3.3.1-cp36-cp36m-win_amd64.whl
Install the above two libraries, WIN R->CMD->CD to the folder where the current two libraries are located, Enter the following commands to install step by step
pip install numpy-1.13.1+mkl-cp36-cp36m-win_amd64.whl pip install opencv_python-3.3.1-cp36-cp36m-win_amd64.whl
Download address of the above two files: https://download.csdn.net/dow...
Code
Create a new opencv.py in the current folder and copy the following code
import cv2 import numpy as np img=cv2.imread('timg.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([90,70,70]) 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]=(0,0,255)#此处替换颜色,为BGR通道 cv2.imshow('res',img) cv2.waitKey(0) cv2.destroyAllWindows()
Explanation
The fourth line of timg.jpg is The three values in the original image path
lower_blue=np.array([90,70,70]) can control the processed effect and noise
WIN R->CMD->CD to opencv.py folder, run
This article is all over here, for more other exciting content, you can pay attention to the python tutorial video column of the PHP Chinese website!
The above is the detailed content of Python implements changing the background color of photos (with code). For more information, please follow other related articles on the PHP Chinese website!