查看: 1801|回复: 2

如何用一种纯色填充图像

[复制链接]

2

主题

42

帖子

104

积分

注册会员

Rank: 2

积分
104
发表于 2018-10-12 15:02:59 | 显示全部楼层 |阅读模式

如何使用一种纯色填充图像?有大佬知道的吗

回复

使用道具 举报

4

主题

34

帖子

88

积分

注册会员

Rank: 2

积分
88
发表于 2018-10-12 15:04:31 | 显示全部楼层
使用OpenCV C API IplImage* img:

使用cvSet():cvSet(img, CV_RGB(redVal,greenVal,blueVal));

使用OpenCV C ++ API cv::Mat img 然后使用以下任一方法:

cv::Mat:: operator=(const Scalar& s) 如下所示:

img = cv::Scalar(redVal,greenVal,blueVal);
回复

使用道具 举报

44

主题

139

帖子

382

积分

论坛管理

Rank: 4

积分
382
发表于 2018-10-12 15:06:04 | 显示全部楼层
以下是如何在Python中使用cv2:
  1. # Create a blank 300x300 black image
  2. image = np.zeros((300, 300, 3), np.uint8)
  3. # Fill image with red color(set each pixel to red)
  4. image[:] = (0, 0, 255)
复制代码

下面是更完整的示例,了解如何创建填充了某种RGB颜色的新空白图像:
  1. import cv2
  2. import numpy as np

  3. def create_blank(width, height, rgb_color=(0, 0, 0)):
  4.     """Create new image(numpy array) filled with certain color in RGB"""
  5.     # Create black blank image
  6.     image = np.zeros((height, width, 3), np.uint8)

  7.     # Since OpenCV uses BGR, convert the color first
  8.     color = tuple(reversed(rgb_color))
  9.     # Fill image with color
  10.     image[:] = color

  11.     return image

  12. # Create new blank 300x300 red image
  13. width, height = 300, 300
  14. red = (255, 0, 0)
  15. image = create_blank(width, height, rgb_color=red)
  16. cv2.imwrite('red.jpg', image)
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表