酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

1. 生成一个600行,600列,背景为灰色([127,127,127]),中间300行,300列为蓝色的图。 2. 将生成的图灰色变为黄色,蓝色变为红色 3. 将改变后的图二值化,中间为白,周围为黑(彩**转灰度图,公式自选)

1. 首先生成一个600行,600列的图,为灰色: ```python import numpy as np import cv2 # 创建一个灰色的图 img = np.full((600, 600, 3), [127, 127, 127], dtype=np.uint8) # 中间300行300列为蓝色 img[150:450, 150:450] = [255, 0, 0] # 蓝色 # 显示图像 cv2.imshow('Image', img) cv2.waitKey(0) cv2.destroyAllWindows() ``` 2. 将灰色变为黄色,蓝色变为红色: ```python # 灰色变为黄色,蓝色变为红色 img[np.where((img==[127, 127, 127]).all(axis=2))] = [255, 255, 0] # 黄色 img[np.where((img==[255, 0, 0]).all(axis=2))] = [0, 0, 255] # 红色 # 显示图像 cv2.imshow('Image', img) cv2.waitKey(0) cv2.destroyAllWindows() ``` 3. 将图二值化,中间为白,周围为黑: ```python # 转换为灰度图 gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 二值化处理 _, binary_img = cv2.threshold(gray_img, 180, 255, cv2.THRESH_BINARY) # 显示二值化图像 cv2.imshow('Binary Image', binary_img) cv2.waitKey(0) cv2.destroyAllWindows() ``` [2024-10-17 10:31:44 | AI写代码神器 | 616点数解答]

相关提问