получение значений RGB каждого пикселя QImage - PullRequest
0 голосов
/ 10 июля 2019

Я пытаюсь получить значения RGB для каждого пикселя изображения. Но похоже, что-то не работает правильно.

self.img = QImage(self.fname[0]) 
self.img = self.img.convertToFormat(QImage.Format_Grayscale8)
for i in range(self.img.height()):
    for j in range(self.img.width()):
        print(self.img.pixel(i, j), end="   ")
    print("\n")

Так мой код дает мне

4278650631 4278650631 4278650631 4278650631 12345 12345

4278650631 4294967295 4278650631 4278650631 12345 12345

4278650631 4278650631 4278650631 4278650631 12345 12345

4278650631 4294967295 4278453252 4278650631 12345 12345

для этой картинки (6x4 px): enter image description here

Изображение имеет 3 белых пикселя во второй строке, но значения, которые я печатаю, отличаются от цветов на изображении. Кроме того, вывод на печать имеет странные 12345 для последних двух пикселей в каждой строке. Поэтому я не могу конвертировать значения в RGB. Что не так с моим кодом?

1 Ответ

0 голосов
/ 10 июля 2019

Можете ли вы попробовать печать

qRed(self.img.pixel(i, j))
qGreen(self.img.pixel(i, j))
qBlue(self.img.pixel(i, j))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...