A method for displaying a virtual object on a 3D model, comprising: obtaining a real space image formed by a video camera and forming the 3D model based upon the received image, said real space image comprising one or more frames, detecting one or more interest points on at least one frame of the one or more frames of the real space image and determining their coordinates on said frame, wherein said one or more interest points is a group of adjacent image points having a characteristic configuration that persists on a plurality of successive image frames; moving the video camera, and, based upon parameters of said moving, predicting 3D coordinates of certain sectors where real space details displayed on the real space image could be located as said one or more interest points, determining coordinates of one or more areas in the frame, for each of the predicted sectors where the corresponding one or more interest points is expected to be detected, searching for said one or more interest points within said one or more areas on the frame, and once detected saving 3D coordinates of the corresponding sector to the memory, refining the 3D coordinates of the predicted sectors by performing the above steps on the subsequent frames of the real space image obtained by the video camera while moving the video camera, juxtaposing 3D coordinates of the one or more interest points in their respective predicted sectors to the 3D model thereby identifying flat and/or curved surfaces , retrieving from the memory a supplemental virtual object and forming signals for its control based upon identified surfaces of the 3D model, forming and outputting to depict on the display an image signal of the supplemental virtual object superimposed on the real space image; wherein only 3D coordinates of the sector that are the same as the coordinates computed on a previous frame are stored as the refined 3D coordinates of the predicted sectors. obtaining a real space image formed by a video camera and forming the 3D model based upon the received image, said real space image comprising one or more frames, detecting one or more interest points on at least one frame of the one or more frames of the real space image and determining their coordinates on said frame, wherein said one or more interest points is a group of adjacent image points having a characteristic configuration that persists on a plurality of successive image frames; moving the video camera, and, based upon parameters of said moving, predicting 3D coordinates of certain sectors where real space details displayed on the real space image could be located as said one or more interest points, determining coordinates of one or more areas in the frame, for each of the predicted sectors where the corresponding one or more interest points is expected to be detected, searching for said one or more interest points within said one or more areas on the frame, and once detected saving 3D coordinates of the corresponding sector to the memory, refining the 3D coordinates of the predicted sectors by performing the above steps on the subsequent frames of the real space image obtained by the video camera while moving the video camera, juxtaposing 3D coordinates of the one or more interest points in their respective predicted sectors to the 3D model thereby identifying flat and/or curved surfaces , retrieving from the memory a supplemental virtual object and forming signals for its control based upon identified surfaces of the 3D model, forming and outputting to depict on the display an image signal of the supplemental virtual object superimposed on the real space image; wherein only 3D coordinates of the sector that are the same as the coordinates computed on a previous frame are stored as the refined 3D coordinates of the predicted sectors. <EOS>