i have about a hundred scripts in their simplest form floating around you can reference along with samples provided in the same threads.
you can apply same steps you know from archive extraction to figuring out image formats.
in the headers i look for any combination of width, height, some kind of format ID and datasize.
i usually start with opening samples in TextureFinder to see if anything displays on a common format,
then if no satisfying results i will use Noesis built-in format functionality to identify anything exotic.
and from there just start forming a script and let the tools do the work, not a whole lot to it.