Thanks so much!
I tried to implement a version of this and am still getting random values.
Just want to make sure my logic is correct.
The process is:
Create frame buffer, Texture
Bind the texture to frame buffer
Establish a PBO
Pack Framebuffer into PBO
Then access the pixels.