проблемы с переливом из желтого в белый

#python #opencv-python

#питон #opencv-python

Вопрос:

моя задача такова: имея белый лист, добавить к нему текст, вставить картинку и сделать градиент. Я понял, как добавить текст и вставить изображение. И вот как сделать переполнение. например, от желтого к белому или от черного к белому, я не понимаю.Я также хотел бы понять, как переместить облако, чтобы конечная картинка была такой. введите описание изображения здесь

мой код:

 import cv2
white_list = cv2.imread('python_snippets/external_data/probe.jpg')
cloud = cv2.imread('python_snippets/external_data/weather_img/cloud.jpg')
white_list[:cloud.shape[0], :cloud.shape[1]] = cloud
font = cv2.FONT_HERSHEY_SIMPLEX
org = (50, 50)
fontScale = 1
color = (255, 0, 0)
thickness = 2
cv2.putText(white_list, ' 5', org, font,
                    fontScale, color, thickness, cv2.LINE_AA)
cv2.imshow('img', white_list)
cv2.waitKey(0)
cv2.destroyAllWindows()
 

Ответ №1:

 def painting_background(self, color, white_list):
    r, g, b = color
    for x in range(white_list.shape[1]):
        if r < 255:
            r  = 1
        if g < 255:
            g  = 1
        if b < 255:
            b  = 1
        self.white_list[:, x:x   1] = (r, g, b)

def maker(self, color, degree):
    x = 0
    y = 400
    weather_icon = self.weather_icons[color]
    self.painting_background(color, self.white_list)
    self.white_list[x:x   weather_icon.shape[0], y:y   weather_icon.shape[1]] = weather_icon
    cv2.putText(self.white_list, degree, (360, 150), cv2.FONT_HERSHEY_DUPLEX, 2, (255, 0, 0), 2, cv2.LINE_AA)