A method for object recognition captured over multiple images in a retail environment, comprising: producing a plurality of recognition results for a plurality of input images, a recognition result corresponding to an object recognized in an input image and including coordinates of a bounding box indicating where the object is located in the input image, the plurality of recognition results including a first recognition result corresponding to a first input image and a second recognition result corresponding to a second input image from the plurality of input images; identifying a first bounding box associated with the first recognition result and a second bounding box associated with the second recognition result; generating a first warped bounding box associated with the first recognition result using the first bounding box and registration data associated with the plurality of input images and a second warped bounding box associated with the second recognition result using the second bounding box and the registration data associated with the plurality of input images; performing an overlap test by comparing the overlapping area of the two bounding boxes to a minimum and a maximum overlapping threshold to determine whether the two recognized objects are distinct real-world objects or the same real-world object, wherein, in case the overlapping area is smaller than the minimum overlapping threshold, the two objects are considered to be distinct objects and in case the overlapping area is greater than the maximum overlapping threshold, the two objects are considered to be a repeated count of the same object and the method performs a visibility test, whereby the bounding box covering the greater portion of the object is given higher priority; in case the overlapping area of the two bounding boxes is greater than the minimum overlapping threshold and less than the maximum overlapping threshold, performing an image content test by comparing a similarity score indicative of the similarity of the two image patches corresponding to the two warped bounding boxes to a minimum similarity threshold and a maximum similarity threshold, wherein, in case the similarity score is smaller than the minimum similarity threshold, the two objects are considered to be distinct objects, and in case the similarity score is greater than the maximum similarity threshold, the two objects are considered to be a repeated count of the same object and the method performs the visibility test; in case the similarity score of the two bounding boxes is greater than the minimum similarity threshold and less than the maximum similarity threshold, performing a recognition label test by comparing an object ID included in the first recognition result to an object ID included in the second recognition result, wherein, in case the object IDs associated with the two recognition results are not the same, the two objects are considered to be distinct objects; otherwise, merging, in response to determining that the first recognition result and the second recognition result represent the same real-world object in the plurality of input images, the plurality of recognition results by combining the first recognition result with the second recognition result to generate a merged recognition result; and outputting the merged recognition result. identifying a first bounding box associated with the first recognition result and a second bounding box associated with the second recognition result; generating a first warped bounding box associated with the first recognition result using the first bounding box and registration data associated with the plurality of input images and a second warped bounding box associated with the second recognition result using the second bounding box and the registration data associated with the plurality of input images;