1. 程式人生 > 程式設計 >python 實現將小圖片放到另一個較大的白色或黑色背景圖片中

python 實現將小圖片放到另一個較大的白色或黑色背景圖片中

將圖片放入到白色或黑色背景圖中,前提是圖片小於背景圖片的尺寸,原圖為如下,長為192,寬為64。

1.將圖片放入到白色背景圖(224,224)中

import cv2
import numpy as np

def img_resize_to_target_white(image):
 target = np.ones((224,224),dtype=np.uint8)*255

 ret = cv2.cvtColor(target,cv2.COLOR_GRAY2BGR)

 h = image.shape[0]
 w = image.shape[1]
 for i in range(224):
  for j in range(224):
   if(i < h) and (j < w):

    ret[i,j,0] = image[i,0]
    ret[i,1] = image[i,1]
    ret[i,2] = image[i,2]
   else:
    ret[i,0] = 255
    ret[i,1] = 255
    ret[i,2] = 255

 return ret
 
if __name__ == '__main__':
 image = cv2.imread('/home/yasin/桌面/test.png')
 img_new_white = img_resize_to_target_white(image)
 cv2.imshow("img_new_white",img_new_white)
 cv2.waitKey() 

執行結果為:

2.將圖片放入到黑色背景圖(224,224)中

import cv2

def img_resize_to_target_black(image):
 target = np.zeros((224,dtype=np.uint8)

 bgr_img = cv2.cvtColor(target,cv2.COLOR_GRAY2BGR)

 h = image.shape[0]
 w = image.shape[1]
 for i in range(h):
  for j in range(w):

   bgr_img[i,0]
   bgr_img[i,1]
   bgr_img[i,2]

 return bgr_img

if __name__ == '__main__':
 image = cv2.imread('/home/yasin/桌面/test.png')
 img_new_black = img_resize_to_target_black(image)
 cv2.imshow("img_new_black",img_new_black)
 cv2.waitKey()

執行結果為:

以上這篇python 實現將小圖片放到另一個較大的白色或黑色背景圖片中就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。