用opencv相关知识写,创建一副大小为240✖320的图像,图像中心是一个大小为100✖100的红色正方形,周围是黑色,编写代码并插入所需的图片
时间: 2024-09-17 13:05:39 浏览: 60
使用OpenCV与Qt写的一个图像处理工具,灰度化,均值滤波,边缘检测
在OpenCV中,你可以使用numpy数组和基本的操作来创建这样的图像。首先,我们需要导入必要的库并设置图像尺寸。下面是相应的Python代码示例:
```python
import cv2
import numpy as np
# 设置图像大小和白色背景
image_size = (320, 240)
background = np.zeros(image_size, dtype=np.uint8)
# 定义红色正方形的位置和大小
square_size = (100, 100)
square_center = (image_size[1] // 2 - square_size[1] // 2, image_size[0] // 2 - square_size[0] // 2)
# 创建红色填充
red_color = (0, 0, 255) # OpenCV使用BGR颜色格式
red_square = np.ones(square_size, dtype=np.uint8) * red_color
# 将红色正方形放在图像中心
background[
square_center[1]:square_center[1] + square_size[1],
square_center[0]:square_center[0] + square_size[0]
] = red_square
# 显示图像
cv2.imshow('Image with Red Square', background)
cv2.waitKey(0) # 等待用户按键
cv2.destroyAllWindows()
# 保存图像,如果需要的话
cv2.imwrite('red_square_image.jpg', background)
```
这段代码会创建一个240x320的全黑图像,中间有一个100x100的红色正方形。`imshow`函数用于显示图像,`waitKey`暂停直到用户按下键盘,而`imwrite`则是为了保存图像。
阅读全文