<p>我是python新手,尝试获取第80行中的每一个80像素,以下是我的代码:</p>
<pre><code>from PIL import Image
im = Image.open("UIC.bmp")
size = (list(im.size)) # size is 1200x800
pixel_row = []
for y in range(0,1200, 80):
print(y)
for x in range(0, 800, 80):
print(x)
cordinate = x, y
pixel_row.append(im.getpixel(cordinate))
print(pixel_row)
</code></pre>
<p>完成后,我使用以下代码解码文本:</p>
<pre><code>print(pixel_list)
decode_list = []
for i in range(len(pixel_list)):
decode_list.append(chr(pixel_list[i] - 100))
decode_text = ''.join(decode_list)
print(decode_text)
</code></pre>
<p>它给出了一个错误:</p>
<pre><code>Traceback (most recent call last):
File "/Users/apple/Desktop/projects/BariySatarov/test.py", line 13, in <module>
pixel_row.append(im.getpixel(cordinate)[2])
File "/Users/apple/Desktop/projects/BariySatarov/venv/lib/python3.8/site-packages/PIL/Image.py", line 1358, in getpixel
return self.im.getpixel(xy)
IndexError: image index out of range
</code></pre>
<p>我不知道该怎么计算,因为我得到的范围与图片的范围相同</p>
<p>p.S.试图将范围(01199,80)和范围(0799,80)放在一起,但它不起作用</p>