How to use a Red/Green color map in Blender? (I have modified my initial question after finding out more about the normal maps.)
I am playing around with some ripped models and I am trying to figure out how to use the normal maps that come with them. They only have the Red and Green color channels and it seems the Blue channel needs to be generated. Is this something Blender can do easily? Can I use a material node setup to create the Blue channel at run time?


Edit:
I have found two plausible ways to fix the normal maps. The first is suggested by Christopher below and is  to invert the normal map and to invert the green channel afterwards to get the correct direction.
The second is from Substance in an article about Normals in Unity engine. It seems that the blue channel can be dropped because the normals are always of length 1, so the Blue channel can be recovered by:
B = sqrt( 1 - R*R - G*G)
which I have implemented using nodes below.
I am leaning towards the Substance approach, however, when I check the RGB values in Python, it seems that parts of the mouth have Normal vectors with length greater than 1, so this would be invalid for the approach suggested by the substance article.
Does anyone have any further suggestions about the correct approach?
Try inverting the image before connecting to the Normal Map Node to get back the purple (tangent space) colors (and map) you're used to seeing (color not shown).

However, looking more closely, I'm assuming the eyelids and nostrils are supposed to be protruding from the &quot;outwards&quot; face (hard to tell using the low res sample). If this is how you need it to be, you may also need to do a DirectX to OpenGL conversion: