Systems and methods are disclosed for recommending products or services by receiving a three-dimensional (3D) model of one or more products performing motion tracking and understanding an environment with points or planes using accelerometer sensor and estimating light or color in the environment using one video camera without a depth sensor in a mobile phone acquiring sensor data from sensors and optimizing features extracted from each image and sensor data, where a feature conveys data unique to the image at a specific pixel location and projecting the product in the environment.