Displace perpendicular to normals?
This a type of what is typically referred to as vector displacement, where the displacement map provides RGB values which are used to get displacement along different axes. This displacement can occur along different orientations (or coordinate spaces) of the axes. 

Currently, to my knowledge blender only supports local object space (The 'RGB to XYZ' option in the displace modifer, see https://www.blender.org/manual/modeling/modifiers/deform/displace.html). To displace along vectors perpendicular to the normal the displacement would need to be applied in the vertex tangent space. If you are familiar with normal mapping this is very similar to the difference between object space and tangent space normal maps.

Local object space displacement will work fine so long as your mesh does not dynamically deform (e.g. armature modified, cloth sim etc).