How can I average two meshes together? Is there already a way in Blender to combine two very similar but necessarily different meshes (with different topologies) such that the result is an average of the two? The process I imagine would be something like aligning the meshes on top of each other, measuring the distance between the surfaces, and creating a vertex at the center of that distance.

If there's not already a way, anybody got any ideas?

The ultimate goal would be to average several similar meshes (like 3D scans) to suppress noise and amplify correct data.
Do you have 1-1 vertex correspondence? If so, with both meshes selected, you could try adding one mesh as a shape key on the other.:



Then, move the slider to apply the shape key at 50%:



If your meshes don't have the same number of vertices, you can use a use a shrinkwrap modifier to warp one mesh onto the other before the shape key. This will make it match the other as closely as possible (consider this 100%). Then, you can apply that shrinkwrap as a shape key and turn the shape key back to 0.5 (consider this %50). Rinse and repeat for additional versions of the mesh.