A mobile inventory robot system generates an inventory map of a store and
a product database when a mobile inventory robot is manually navigated
through the store to identify items on shelves, a location for each of
the items on the shelves, and a barcode for each of the items. The system
performs inventory of the items by navigating through the store via the
inventory map, capturing a shelf image, decoding a product barcode from
the captured shelf image, retrieving a product image for the decoded
product barcode from the product database, segmenting the captured shelf
image to detect an image of an item on the shelves, determining whether
the detected image matches the retrieved image and, if not, setting an
out-of-stock flag for an the item.