Optimizing video stream processing
Abstract
An approach to reduce the processing power required to monitor check-out stations. A subset of check-out stations may be monitored at any given time, instead of monitoring all check-out stations at all times. The subset of check-out stations is determined dynamically according to, but not limited to, cashier records, input parameters from the user, current lane activity, past lane activity, time of day, etc. Statistical models (e.g., effective population sampling and/or population hypothesis tests) are developed along these lines that guide the lane selection process, whereby increases in the false-negative rate due to failure to monitor particular lanes when events of interest occur are controlled. By monitoring fewer check-out stations, while maintaining target performance accuracy, the amount of data that end users must deal with is significantly reduced.
Claims
exact text as granted — not AI-modified1 . A method, comprising:
prioritizing by a computer system processor each transaction unit of a plurality of individual transaction units into a prioritized processing order, wherein each of the individual transaction units comprise transaction data and video data corresponding to an item purchased by a customer at one of a plurality of different checkout lanes, and wherein the prioritizing is a function of:
a lane priority value of a respective one of the different checkout lanes that the transaction unit video data and transaction data is captured from for each of the individual transaction units, wherein each of the different checkout lanes has a different lane priority value; and
a transaction unit type priority value of a type of transaction unit indicated by the transaction data of each of the individual transaction units, wherein the transaction unit type is selected from a plurality of different transaction unit types that each have a different transaction unit type priority value; and
processing by the processor the individual transaction units in the prioritized processing order to automatically detect irregular activities indicated by the transaction unit video and the transaction data of the processed individual transaction units.
2 . The method of claim 1 , wherein the different transaction unit types comprise:
a first transaction unit type comprising at least one voided item within a transaction; a second transaction unit type comprising a voiding of all items within a single transaction; and a third transaction unit type comprising a long time duration between item scans in a single transaction.
3 . The method of claim 2 , further comprising:
the processor dynamically updating and increasing the lane priority value of a first of the different checkout lanes as a function of the processing of the individual transaction units in the prioritized processing order automatically detecting irregular activities within processed transaction unit video and the transaction data captured from the first checkout lane; and subsequently determining processing priority by the processor for each transaction unit of the individual transaction units captured from the different checkout lanes as a function of the updated lane priority value of the first checkout lane.
4 . The method of claim 3 , wherein the determining processing priority for each transaction unit comprises using one or more Gaussian, Poisson, exponential, or uniform statistical models to determine correlations between features of the transaction unit.
5 . The method of claim 4 , wherein the step of the processor processing the individual transaction units in the prioritized processing order to automatically detect irregular activities indicated by the transaction unit video and the transaction data of the processed individual transaction units further comprises:
processing a high priority fraction of a total of the prioritized individual transaction units in the prioritized processing order; and archiving by the processor a low priority remainder fraction of the total of the individual transaction units that each has a lower priority than the high priority fraction individual transaction units within the prioritized processing order.
6 . The method of claim 5 , wherein the step of prioritizing the individual transaction units further comprises placing the transactions units in a transaction priority queue in an order of relative priority; and
wherein the step of the processor archiving the low priority remainder fraction of the total of the individual transaction units further comprises moving the low priority remainder fraction transaction units from the transaction priority queue to an archival queue in an order of relative priority.
7 . The method of claim 6 , further comprising the processor moving unprocessed transaction units from the transaction priority queue to the archival queue at regular intervals.
8 . The method of claim 7 , further comprising the processor processing the low priority remainder fraction individual transaction units archived in the archival queue in order of their relative queued priority to automatically detect irregular activities indicated by the transaction unit video and the transaction data of the processed transaction units when the processor has unused capacity.
9 . The method of claim 8 , further comprising:
obtaining by the processor streams of video and transaction data captured from each of the plurality of different checkout lanes; and combining by the processor the streams of video and transaction data for each respective one of the different checkout lanes into the individual transaction units so that each comprises transaction video corresponding to a set of items purchased by a single customer at one of the different checkout lanes in a single span of time.
10 . A method for providing a service for automatically detecting irregular activities indicated by the transaction unit video and transaction data, the method comprising:
integrating computer-readable program code into a computer system comprising a processor, a computer readable memory and a computer readable tangible storage device, wherein the computer readable program code is embodied on the computer readable tangible storage device and comprises instructions that, when executed by the processor via the computer readable memory, cause the processor to: prioritize each transaction unit of a plurality of individual transaction units into a prioritized processing order, wherein each of the individual transaction units comprise transaction data and video data corresponding to an item purchased by a customer at one of a plurality of different checkout lanes, and wherein the prioritizing is a function of:
a lane priority value of a respective one of the different checkout lanes that the transaction unit video data and transaction data is captured from for each of the individual transaction units, wherein each of the different checkout lanes has a different lane priority value; and
a transaction unit type priority value of a type of transaction unit indicated by the transaction data of each of the individual transaction units, wherein the transaction unit type is selected from a plurality of different transaction unit types that each have a different transaction unit type priority value; and
process the individual transaction units in the prioritized processing order to automatically detect irregular activities indicated by the transaction unit video and the transaction data of the processed individual transaction units.
11 . The method of claim 12 , wherein the processor, when executing the program instructions stored on the tangible computer-readable storage device via the computer readable memory, further:
dynamically updates and increases the lane priority value of a first of the different checkout lanes as a function of the processing of the individual transaction units in the prioritized processing order automatically detecting irregular activities within processed transaction unit video and the transaction data captured from the first checkout lane; and subsequently determines processing priority for each transaction unit of the individual transaction units captured from the different checkout lanes as a function of the updated lane priority value of the first checkout lane.
12 . The method of claim 11 , wherein the processor, when executing the program instructions stored on the tangible computer-readable storage device via the computer readable memory, further archives a low priority remainder fraction of a total of the individual transaction units in the prioritized processing order that each have a lower priority than a high priority fraction of the prioritized individual transaction units.
13 . The method of claim 12 , wherein the processor, when executing the program instructions stored on the tangible computer-readable storage device via the computer readable memory, further processes the archived low priority remainder fraction individual transaction units in order of their relative queued priority to automatically detect irregular activities indicated by the transaction unit video and the transaction data of the processed transaction units when the processor has unused capacity.
14 . The method of claim 13 , wherein the processor, when executing the program instructions stored on the tangible computer-readable storage device via the computer readable memory, further:
obtains streams of video and transaction data captured from each of the plurality of different checkout lanes; and combines the streams of video and transaction data for each respective one of the different checkout lanes into the individual transaction units so that each comprises transaction video corresponding to a set of items purchased by a single customer at one of the different checkout lanes in a single span of time.
15 . A system, comprising:
a processor in communication with a computer readable memory and a tangible computer-readable storage device; wherein the processor, when executing program instructions stored on the tangible computer-readable storage device via the computer readable memory: prioritizes each transaction unit of a plurality of individual transaction units into a prioritized processing order, wherein each of the individual transaction units comprise transaction data and video data corresponding to an item purchased by a customer at one of a plurality of different checkout lanes, and wherein the prioritizing is a function of:
a lane priority value of a respective one of the different checkout lanes that the transaction unit video data and transaction data is captured from for each of the individual transaction units, wherein each of the different checkout lanes has a different lane priority value; and
a transaction unit type priority value of a type of transaction unit indicated by the transaction data of each of the individual transaction units, wherein the transaction unit type is selected from a plurality of different transaction unit types that each have a different transaction unit type priority value; and
processes the individual transaction units in the prioritized processing order to automatically detect irregular activities indicated by the transaction unit video and the transaction data of the processed individual transaction units.
16 . The system of claim 15 , wherein the processor, when executing the program instructions stored on the computer-readable storage device via the computer readable memory, further:
dynamically updates and increases the lane priority value of a first of the different checkout lanes as a function of the processing of the individual transaction units in the prioritized processing order automatically detecting irregular activities within processed transaction unit video and the transaction data captured from the first checkout lane; and subsequently determines processing priority for each transaction unit of the individual transaction units captured from the different checkout lanes as a function of the updated lane priority value of the first checkout lane.
17 . The system of claim 16 , wherein the processor, when executing the program instructions stored on the computer-readable storage device via the computer readable memory, further archives a low priority remainder fraction of a total of the individual transaction units in the prioritized processing order that each have a lower priority than a high priority fraction of the prioritized individual transaction units.
18 . The system of claim 17 , wherein the processor, when executing the program instructions stored on the computer-readable storage device via the computer readable memory, further processes the archived low priority remainder fraction individual transaction units in order of their relative queued priority to automatically detect irregular activities indicated by the transaction unit video and the transaction data of the processed transaction units, when the system has unused capacity.
19 . The system of claim 18 , wherein the processor, when executing the program instructions stored on the computer-readable storage device via the computer readable memory, further:
obtains streams of video and transaction data captured from each of the plurality of different checkout lanes; and combines the streams of video and transaction data for each respective one of the different checkout lanes into the individual transaction units so that each comprises transaction video corresponding to a set of items purchased by a single customer at one of the different checkout lanes in a single span of time.
20 . An article of manufacture, comprising:
a computer readable tangible storage device having computer readable program code embodied therewith, the computer readable program code comprising instructions that, when executed by a computer processor, cause the computer processor to: prioritize each transaction unit of a plurality of individual transaction units into a prioritized processing order, wherein each of the individual transaction units comprise transaction data and video data corresponding to an item purchased by a customer at one of a plurality of different checkout lanes, and wherein the prioritizing is a function of:
a lane priority value of a respective one of the different checkout lanes that the transaction unit video data and transaction data is captured from for each of the individual transaction units, wherein each of the different checkout lanes has a different lane priority value; and
a transaction unit type priority value of a type of transaction unit indicated by the transaction data of each of the individual transaction units, wherein the transaction unit type is selected from a plurality of different transaction unit types that each have a different transaction unit type priority value; and
process the individual transaction units in the prioritized processing order to automatically detect irregular activities indicated by the transaction unit video and the transaction data of the processed individual transaction units.
21 . The article of manufacture of claim 20 , wherein the computer readable program code instructions, when executed by the computer processor, further cause the processor to:
dynamically update and increase the lane priority value of a first of the different checkout lanes as a function of the processing of the individual transaction units in the prioritized processing order automatically detecting irregular activities within processed transaction unit video and the transaction data captured from the first checkout lane; and subsequently determine processing priority for each transaction unit of the individual transaction units captured from the different checkout lanes as a function of the updated lane priority value of the first checkout lane.
22 . The article of manufacture of claim 21 , wherein the computer readable program code instructions, when executed by the computer processor, further cause the processor to archive a low priority remainder fraction of a total of the individual transaction units in the prioritized processing order that each have a lower priority than a high priority fraction of the prioritized individual transaction units.
23 . The article of manufacture of claim 22 , wherein the computer readable program code instructions, when executed by the computer processor, further cause the processor to process the archived low priority remainder fraction individual transaction units in order of their relative queued priority to automatically detect irregular activities indicated by the transaction unit video and the transaction data of the processed transaction units, when the processor has unused capacity.
24 . The article of manufacture of claim 23 , wherein the computer readable program code instructions, when executed by the computer processor, further cause the processor to:
obtain streams of video and transaction data captured from each of the plurality of different checkout lanes; and combine the streams of video and transaction data for each respective one of the different checkout lanes into the individual transaction units so that each comprises transaction video corresponding to a set of items purchased by a single customer at one of the different checkout lanes in a single span of time.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.