簡體   English   中英

獲取 QImage 的每個像素的 RGB 值

[英]getting RGB values of every pixel of an QImage

我嘗試獲取圖像每個像素的 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 像素): 在此處輸入圖片說明

圖片在第二行有 3 個白色像素,但我打印的值與圖像中的顏色不同。 此外,每行的最后兩個像素的打印輸出都有奇怪的 12345。 所以我無法將值轉換為 RGB。 我的代碼有什么問題?

你可以試試打印嗎

qRed(self.img.pixel(i, j))
qGreen(self.img.pixel(i, j))
qBlue(self.img.pixel(i, j))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM