python语句现实下列功能1、循环将后缀为.b m p灰度图像分割成8X8的小块并输出像素数组值2、并对每个像素值减去128 并按二维数组的形式输出数组值
时间: 2023-04-01 18:01:18 浏览: 45
可以回答这个问题。下面是 Python 代码实现:
```python
import numpy as np
from PIL import Image
# 读取图片
img = Image.open("example.bmp").convert("L")
# 获取图片大小
width, height = img.size
# 将图片分割成 8x8 的小块
block_size = 8
blocks = []
for i in range(, height, block_size):
for j in range(, width, block_size):
block = []
for y in range(i, i+block_size):
row = []
for x in range(j, j+block_size):
row.append(img.getpixel((x, y)))
block.append(row)
blocks.append(block)
# 对每个像素值减去 128
for block in blocks:
for i in range(block_size):
for j in range(block_size):
block[i][j] -= 128
# 输出像素数组值
for block in blocks:
print(np.array(block))
```
注意:这个代码只是一个示例,实际应用中可能需要根据具体情况进行修改。