1. A method of merging multiple maps for computer vision based tracking, comprising: receiving a plurality of maps of a scene in a venue from at least one mobile device; identifying multiple keyframes of the plurality of maps of the scene; and merging the multiple keyframes to generate a global map of the scene, wherein merging the multiple keyframes to generate the global map of the scene comprises: for each keyframe of the multiple keyframes, determining a contribution score based on angular diversity of the keyframe and scale diversity of the keyframe, and eliminating the keyframe in response to the contribution score being below a predetermined threshold.