1. 使用Numpy生成一个8x8的全0数组,数据类型为uint8,并打印出来,然后在第一行第三列和第6 行第4列的像素点改为255,再打印出来。 2. 使用Numpy生成三个(300,300,3)数组,名字为red,green,blue,数据类型为uint8,数组 最后的值为:
时间: 2024-09-27 10:10:55 浏览: 33
1. 要创建一个8x8的全0 uint8数组并修改特定位置,可以这样做[^1]:
```python
import numpy as np
# 创建全0 uint8数组
I = np.zeros((8, 8), dtype=np.uint8)
# 修改第一行第三列和第六行第四列的像素点为255
I[0, 2] = 255
I[5, 3] = 255
# 打印原始和修改后的数组
print("Original array:")
print(I)
print("\nModified array:")
print(I)
```
2. 要生成三个300x300x3的uint8数组(代表RGB图像),可以使用numpy的`zeros`函数,但我们需要指定颜色通道:
```python
# 创建三个大小相同的uint8数组
red = np.zeros((300, 300, 3), dtype=np.uint8)
green = np.zeros_like(red)
blue = np.zeros_like(red)
# 每个数组的最后一维代表R、G、B分量,这里设置为全零
red[..., -1:] = np.zeros((300, 300, 1), dtype=np.uint8)
green[..., -1:] = np.zeros_like(red[..., -1:])
blue[..., -1:] = np.zeros_like(red[..., -1:])
# 可以选择性地填充每个数组的不同颜色,这里仅示例红绿蓝各填1
red[:, :, 0] = 1
green[:, :, 1] = 1
blue[:, :, 2] = 1
# 打印生成的数组
print("Red array:")
print(red)
print("\nGreen array:")
print(green)
print("\nBlue array:")
print(blue)
```
阅读全文