Pythonは写真の背景色コードを変換することを実現します。


写真を使う時、背景の色を変えたいと思うことがあります。これは写真だけに注目します。例えば、連続して見たら写真だけで、背景がないです。個人的には背景が綺麗だと思います。
二つの方法は同じ考えです。
法一:

import cv2

#          
def transparence2white(img):
  sp=img.shape #       
  width=sp[0] #   
  height=sp[1] #   
  for yh in range(height):
    for xw in range(width):
      color_d=img[xw,yh] #         ,      4       
      if(color_d[3]==0): #           ,     0,      
        img[xw,yh]=[255,255,255,255] #              ,         
  return img

img=cv2.imread('bar.png',-1) #     。-1        ,   RGB 3    4  
img=transparence2white(img) #      ,      ,  
cv2.imwrite('bar.png',img) #     ,      ,        
法二:

from PIL import Image
 
def transparence2white(img):
#   img=img.convert('RGBA') #            (RGBA  4x8   ,          ;CMYK 4x8   ,   ),    
  sp=img.size
  width=sp[0]
  height=sp[1]
  print(sp)
  for yh in range(height):
    for xw in range(width):
      dot=(xw,yh)
      color_d=img.getpixel(dot) #  cv2    ,     getpixel         
      if(color_d[3]==0):
        color_d=(255,255,255,255)
        img.putpixel(dot,color_d) #         putpixel
  return img
 

img=Image.open('bar.png')
img=transparence2white(img)
# img.show() #     
img.save('bar3.png') #     
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。