1. A method of converting two-dimensional image data to three-dimensional image data, comprising: dividing the image data into blocks; performing motion estimation on the blocks to produce block-based motion vectors; applying a global motion analysis and a local motion analysis to the block-based motion vectors to generate motion-based depth; applying a global image model and a local image model to the block-based motion vectors to generate image-based depth, wherein the local image model collects color, brightness, and sharpness in a local window to calculate an image-based pixel-wise depth and applying the global image model includes: calculating weights for at least two different global depth models, wherein each global depth model is designed for a different type of scene; and combining the at least two different global depth models to produce a weighted average depth models; and generating a three-dimensional view by fusing the motion-based depth and the image-based depth.