| CPC G06Q 30/0643 (2013.01) [G06F 3/04842 (2013.01); G06Q 30/0623 (2013.01); G06V 10/235 (2022.01); G06V 10/267 (2022.01); G06V 10/751 (2022.01); G06V 20/20 (2022.01)] | 14 Claims |

|
1. A non-transitory computer readable medium for sizing a product comprising instructions that, when executed by at least one processor, cause a computing device to:
retrieve from a website information on a product including product dimensions;
retrieve a Web page as a product page for the product;
augment the product page to generate an augmented product page including a graphical button so that selection of the graphical button by a user activates a physical camera for capturing a background image of a background;
present the background image on a display;
prompt the user to manually mark an imaginary housing on the presented background image by performing a manual marking of a first corner point of a two-dimensional (2D) boundary rectangle followed immediately by a second corner point of the 2D boundary rectangle opposite the first corner point on a display screen of the computing device, where the imaginary housing is a space to place the product;
use the physical camera to capture frames, identify and track points in the imaginary housing in the frames as anchors and determine spatial dimensions of the space in two dimensions from the anchors and a focal length of the physical camera;
use a Simultaneous Localization and Mapping (SLAM) algorithm to dynamically update the spatial dimensions and a position of the imaginary housing in real-time based on data sensed from the camera and screen dimensions of the computing device;
determine whether the product fits within the space by comparing the retrieved product dimensions in the two dimensions against the updated spatial dimensions of the space in the two dimensions;
extract a product image part from a two-dimensional (2D) image of the product retrieved from the website, scale the product image part according to the retrieved product dimensions and the updated spatial dimensions, and draw the imaginary housing on the display;
draw the imaginary housing on the display in a first color and draw the scaled product image part in a center of the imaginary housing without overlap when it is determined the product fits within the space; and
draw the imaginary housing on the display in a second color different than the first color to overlap the scaled product image part when it is determined the product does not fit within the space.
|