I want to turn a 3D mesh into a height map and then use the height map to create a new 3D mesh with no undercuts I basically have a 3D model of a man.  I want to cut this out on a CNC machine, but the undercuts are proving to cause problems during the toolpathing and confusing the computer.  

I want to use Blender to create a height map of the 3D model that I currently have, while looking at it from the front.  I want to then use that height map to create a new 3D form which will be the man, but he will no longer have undercuts since the new model was created from the height map.

I have tried this already and it is possible, but the height map and models that I am getting are very low quality.  The final model needs to be a MUCH higher resolution/detailed model for our purposes, I want it to look as detailed as the original.

Is there a way to make this work?  I am NEW to blender, I have only used it for two days to try and figure this out, so any sort of detailed explanations if this is possible would be appreciated.

This is what my original 3D model looks like


Here are the material nodes used to created the properly shaded material to create the height map.


This is the height map image that was created from the original model.


This shows the new model that was created from the height map.


Close up version of the new model.  You can see how low resolution it is, the face lost all of its original detail.  The body is also very stepped.. not a smooth transition between parts like on the original model.
If you use the 'Mist' feature:



then enable it in the camera settings:



then adjust the start and end point that it gives you to the start and end of the model, in the world settings:



And finally, in the compositing editor, connect the mist pass to the render pass, to give you a high definition 'depth' pass:



Hope this helped!