So I've been testing out reading uncompressed png files with the following code in Python3:
f = open(r'img1.png', 'rb')
pixel = f.read()
print(pixel)
However the results give some strange additional characters besides the hex pairs I would expect in the IDAT chunk:
b'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x02\x00\x00\x00\x02\x08\x02\x00\x00\x00\xfd\xd4\x9as\x00\x00\x00\x19IDAT\x08\x1d\x01\x0e\x00\xf1\xff\x00\x00\x00\x00\x00\xff\xff\x01\x00\xff\xff\x13\x90\x90\x1b\xe4 \x0510O\xffC \x00\x00\x00\x00IEND\xaeB`\x82' [Finished in 0.1s]
Any idea what this is? I was under the assumption that everything in IDAT when the data was uncompressed was pixel data in hex pairs. I've searched both StackOverflow/Online as well as looked through the documentation for PNG without any luck.
Here is a link to the image I am using to test (it's only 4 pixels): img1.png
FYI I'm running tests via ArchLinux if that helps.