#python
#python
Вопрос:
Я не могу правильно записать массив. Я не знаю, почему у python такая проблема.
import sys,os
import numpy as np
from PIL import Image
from bitmap import BitMap
src=os.getcwd()
#get the current working diretory
print(src)
path=src "\Se.bmp"
img=Image.open(path,"r")
width, height=img.size
print(f"width={width}")
print(f"height={height}")
#turn it into RGB vlaue array
array=np.array(list(img.getdata()))
name="\rgb array test_1a.txt"
with open(src name,"w",encoding="utf-8") as file:
for i in range(len(array)):
file.write("n")
for j in range(3):
file.writelines(str(array[i][j]) ",")
Я сравниваю его со значением, которое я получаю из https://hexed.it / после того, как я преобразую их оба в десятичное значение. Они совершенно разные. В чем проблема?
Вот первая строка, которую я получил с веб-сайта https://hexed.it /. Я экспортировал его как десятичное значение.
arr = bytes([
# Offset 0x00000000 to 0x00000015
66, 77, 54, 48, 0, 0, 0, 0, 0, 0, 54, 0, 0, 0, 40, 0
])
Ниже приведена 1-я строка моего выходного текстового файла.
254,254,254,
Комментарии:
1. Файлы BMP имеют заголовок и сохраняют цвет (если используется режим true color, а не палитра) в порядке BGR. Если это не объясняет разницу, вы должны показать образец обоих файлов в виде правильно отформатированного текста в вопросе.
2. @MichaelButscher Сейчас я предоставил несколько примеров.