How can I UV unwrap a mesh based on its 3D perspective in the viewport? I am currently working on a mesh made up of many puzzle pieces. My end goal is to place a picture on the puzzle mesh. To do this, I have combined all puzzle pieces into a single mesh, with the intention being to then unwrap it based on a top-down perspective. 

Here is my mesh:


Here is a top-down view, which is what I would like my mesh to look like when unwrapped:


I have tried a cube unwrap and smart UV project, but, neither one produces a mesh that allows me to easily place a picture on the puzzle by setting that picture to to be the texture.

I realize that the sides and bottom of the puzzle mesh may be problematic to unwrap, but, I don't care what is on those because they will not be visible in the final render. As such, any sort of errored out texture is fine provided I can render the rest of the mesh without, ie. crashing.

I am using Blender 2.77.
Enter edit mode
Select the face that you want to be unwrapped
Press U then choose "Project From View"
Note : "Project From View (Bounds)" will fit the UV to the texture space like the image down below