Pixel data doesn't necessarily imply binary data, though. In the Plain PPM format, pixels are encoded as plain text RGB tuples separated by white space. It's not inconceivable for such a simple format that one could write a simple image processor in a few lines of shell + coreutils.
They have a point - I can’t find any traces of a shell library implementing image parsing without calling out to a third-party tool written in not-shell.
You also have a point - I’m seriously debating if I can write one in an evening solely to say that one now exists. (I lost the debate with myself, sadly.)
EDIT: I mean “source language bash”, not “target language bash”, my emscripten friends.
In particular, the value 0 can't be stored in a bash variable, which almost completely rules out the possibility of byte-by-byte processing of general binary data. It's probably possible with absurd hacks.
[0] https://github.com/saitoha/libsixel