Patent Description:
It is known to conduct market media studies to determine the reach and performance of out-of-home (OoH), digital out-of-home (DOOH) or other outdoor advertising. These market media studies are used by media agencies for the planning of OoH and DOOH campaigns. In Germany, for example, the "Public & Private Screens" study provides a media currency for the German DOOH market.

Such advertising, however, is currently undergoing a major shift, where advertising content is played out in real-time to different target group segments (referred to as 'programmatic advertising'). Target group segments may be, for example, male, female, young or old audiences, heads of household or people with certain product interests. Real-time playout or presentation of advertising or other content benefits from real-time data on the target groups, that is, those to whom the advertising is directed. Various tracking technologies exist for capturing target group data in the environment of (digital) out-of-home advertising screens and posters.

In order to structure and standardize the tracking data used for (digital) out-of-home advertising, a 'tracking currency' has been developed for the (D)OOH market,. The tracking currency was developed in consultation with advertsing customers, (D)OOH advertising providers, technology providers and market research companies. The utility of this tracking currency arises from the fact that each tracking technology delivers different qualities and quantities of data. Thus, two different tracking technologies (e.g. Facetracking and Wi-Fi-Tracking) deliver different tracking values, even when deployed at the same time and location, owing to differences in the tracking methodology (e.g. tracking of eye contacts vs. tracking of smartphones). In addition, the same tracking technology (e.g. face tracking) from different manufacturers often delivers different tracking values at the same time and location, owing to different sensor qualities (giving rise to, for example, differences in resolution), different processing algorithms and different processing hardware performance.

However, media buyers (i.e. buyers of advertising space) need a reliable basis for campaign planning so that tracking data from different locations and different advertising screens (i.e. from different tracking technologies) is comparable. This concept of comparable performance values (reach and target group data) for the same category of advertising media (such as DOOH screens in different locations) is referred to as a 'media currency'. A media currency should exclude or compensate for differences in data collection and thus for distortions in the comparison of different tracking technologies.

One known Wi-Fi tracking technology records the MAC addresses of smartphones in the vicinity of a Wi-Fi tracking sensor (which generally comprises a standard Wi-Fi access point), so that-thanks to the prevalence of Wi-Fi-enabled devices-target groups can be detected or tracked when in the vicinity of a Wi-Fi tracking sensor installed next to or near DOOH advertising. The MAC address is a unique, manufacturer-assigned identifier for each internet-enabled device. However, the MAC addresses make smartphones individually recognizable, so the MAC address is considered personal data and hence subject to the provisions of the European General Data Protection Regulation (GDPR) and the German Basisc Data Protection Regulation (DSGVO).

These regulations stipulate that people (strictly speaking, their devices) captured by tracking technologies must be informed of the collection of their data and must be given the opportunity to object to collection of their data and that the data collected must be deleted if the affected people object. In many cases, however, this is practically impossible-especially with outdoor posters or large LED walls, such as on streets or in pedestrian zones.

Furthermore, many advertising media such as posters or digital screens and the associated tracking technology are located within, for example, airports or shopping centres and are operated by third party marketing and sales agencies rather than the site owners themselves. The tracking of persons or smartphones in the vicinity of the digital advertising space is therefore in the interest of these third party marketing and sales agencies, but not necessarily in the interest of the site owners, so it can be complicated or impossible for the third party marketing and sales agencies to inform any tracked individuals, if required to by such data protection provisions.

<CIT>, entitled Method and Apparatus for Passively Detecting and Tracking Mobile Devices, discloses a system in which detection devices (<NUM>) collect probe requests for different communication protocols (e.g., WiFi, Bluetooth, NFC, etc.) transmitted at regular intervals by a consumer device (e.g., a smartphone). Specific pieces of data are extracted from management frames in the probe requests, and are used to create a device model or profile that uniquely identifies the consumer device as the consumer walks throughout defined zones.

<CIT> discloses a method of location-triggered rewards, involving detecting the presence of a mobile phone within an enclosed space and transmitting information relating to the presence to a server computer. The server computer processes an award for the presence of the mobile phone within the enclosed space, and the award is associated with a user account associated with the mobile phone.

<NPL>) provide a review of in-store tracking technologies, including the 'Go' store concept of Amazon (trade mark) which requires fine-grained, multi-modal tracking to function as a shop, and challenges in opting in or out of passive Wi-Fi tracking.

According to a first aspect, the invention provides a method for real-time audience characterisation, the method comprising:.

The empirical data may be stored in processed form, such that it can be multiplied by or divided into the number of recorded or counted events. The method may include normalizing the number of recorded or counted events according to the empirical data.

Audience or potential audience is referred to above, as it may not be possible to distinguish between people watching or listening to the presented content, and those apparently in a position to do so (hence 'potential' audience members) but disregarding the presented content or incapable of watching it or listening to it (perhaps owing to a sight or hearing problem).

The presentation device may comprise one or more displays, screens, speakers, and/or rollable or rotatable posters. Other controllable presentation devices are also suitable. However, the presentation device need not be controllable: it may comprise a static item or items of content, such as one or more posters. It may be a conventional or illuminated billboard.

The one or more characteristics may comprise essentially any characteristics that may be ascertained empirically, especially by survey(s) of the population from which the audience or potential audience is drawn. In an embodiment, therefore, the one or more characteristics comprise:.

In an embodiment, the automatic detection of the one or more events comprises detecting with a wireless access point (WAP) Wi-Fi probe requests from Wi-Fi enabled devices in the vicinity of the presentation device. In an example, the WAP comprises a kernel configured to control the WAP not to record or read-out content of the probe requests.

The kernel may be configured to prompt the generation of a random or pseudo-random number or string in response to detection of a probe request.

In an example, the empirical data includes data that correlates number of probe requests with a size of the audience or potential audience of the presented content.

In another embodiment, automatically detecting the one or more events comprises detecting faces in the vicinity of the presentation device with a facetracking system. In an example, the empirical data includes data that correlates number of recognized faces with a size of the audience or potential audience of the presented content.

In another embodiment, automatically detecting the one or more events comprises employing one or more Bluetooth (trade mark) beacons installed in the vicinity of the advertising panel, and detection software (or app) configured to detect Bluetooth beacon signals and installed on smartphones of audience members or potential audience members, whereby the detection software responds to the Bluetooth beacons by transmitting an ID from the Bluetooth beacon signal to the system, thereby alerting the system of the proximity of the smartphone.

It should be noted that the system may include two or more all of these detection approaches (i.e. WAP, facetracking and Bluetooth), thereby increasing the accuracy of the results.

In another embodiment, the method includes controlling presentation of the content by the presentation device according to the one or more characteristics of the audience or potential audience.

The method may further comprise making a plurality of determinations of the location of the Wi-Fi enabled device (using the same combination of temporal coincidence detection and triangulation) and determining a path of the Wi-Fi enabled device therefrom.

The method may further comprise responding to the rate of probe request detection by dynamically modifying the size of the time window, including setting a smaller time window when the rate of probe request detection is higher and setting a larger time window when the rate of probe request detection is lower. Generally, this would be done with a predefined minimum window and a predefined maximum window.

The presented content may comprise visual content and/or audio content.

According to a second aspect, the invention provides a system for real-time audience characterisation, the system comprising:.

Thus, the triangulator is configured to monitor incoming probe requests for signals whose time-stamps are sufficiency close that the corresponding probe request detections may be regarded as likely to have arisen from a single probe request from a Wi-Fi enabled device.

The triangulator may be located as convenient, whether in a Wi-Fi router (located, for example, in association with the presentation device), in the controller or otherwise. Also, the triangulator may be distributed; for example, instead of the temporal coincidence detection and the triangulation being performed by a single component (such as in the controller), the temporal coincidence detection may be performed by a component of a Wi-Fi router and the triangulation may be performed by a component of the controller.

The triangulator may be further configured to make a plurality of determinations of the location of the Wi-Fi enabled device (using the same combination of temporal coincidence detection and triangulation) and to determine a path of the Wi-Fi enabled device therefrom.

In an embodiment, the one or more characteristics comprise:.

In an embodiment, the system comprises a wireless access point (WAP) configured to detect Wi-Fi probe requests from Wi-Fi enabled devices in the vicinity of the presentation device. The WAP may be configured not to record or read-out content of the probe requests. For example, the WAP may comprise a kernel configured to control the WAP not to record or read-out content of the probe requests. The kernel may be configured to prompt the generation of a random or pseudo-random number or string in response to detection of a probe request.

In an embodiment, the empirical data includes data that correlates a number of probe requests with a size of the audience or potential audience (that is, the characteristic comprises the number of audience or potential audience) in the proximity of the presentation device.

In an embodiment, the system comprises a facetracking system configured to detect faces in the vicinity of the presentation device.

In another embodiment, the system includes or employs one or more Bluetooth (trade mark) beacons installed in the vicinity of the advertising panel, and detection software (or app) configured to detect Bluetooth beacon signals and installed on smartphones of the audience members or potential audience members, wherein the detection software is configured to respond to the Bluetooth beacons by transmitting an ID from the Bluetooth beacon signal to the system, thereby alerti ng the system of the proximity of the smartphone.

In an embodiment, the system further comprises a content scheduler configured to control presentation of the content by the presentation device. In an example, the system is configured to control the content scheduler according to the one or more characteristic of the audience or potential audience.

According to a third aspect, the invention provides computer program code configured, when executed by one or more processors, to implement the method of the first aspect. This aspect also provides a computer-readable medium (which may be non-transitory), comprising such computer program code.

It should be noted that any of the various individual features of each of the above aspects of the invention, and any of the various individual features of the embodiments described herein including in the claims, can be combined as suitable and desired.

In order that the invention may be more clearly ascertained, embodiments will now be described by way of example with reference to the following drawing, in which:.

<FIG> is a schematic view of a system <NUM> for real-time audience tracking (especially of predefined target groups) in an advertising environment, according to an embodiment of the present invention, in which only the more important operative components are shown for clarity. The following description of system <NUM> relates to its use in tracking one or more predefined audiences for advertising purposes, but system <NUM> is also suitable (with minor modification) for tracking predefined target groups for other purposes-such as to assess the use of public spaces or infrastructure (such as parks or playgrounds), in order to determine whether sufficient capacity is available.

System <NUM> includes a system controller <NUM>, an administrator interface <NUM> and a presentation device in the form, in this embodiment, of an advertising panel <NUM>. System controller <NUM> has a processor <NUM> and a memory <NUM>. Instructions and data to control the operation of processor <NUM> are stored in memory <NUM>, which is in data communication with processor <NUM>. Typically, system <NUM> includes both volatile and non-volatile memory and more than one of each type of memory; however, such memories are collectively represented by memory <NUM> in the schematic representative of <FIG>.

System controller <NUM> has an operating system <NUM> that is executable by processor <NUM>, and an input/output (I/O) interface <NUM> for communicating with peripheral devices of system <NUM>. The peripheral devices may be intelligent devices with their own memory for storing associated instructions and data for use with the input/output interface <NUM> or the peripheral devices.

In addition, system controller <NUM> includes a communications interface, in this example in the form of a network card <NUM>. Network card <NUM> allows system controller <NUM> to communicate with advertising panel <NUM> via a suitable network (not shown), which may be an intranet, the internet, a cellular network or otherwise (or a combination of these). Network card <NUM> also allows system <NUM> to, for example, send tracking results or other information to a remote controller, server or database and receive data or commands from the central controller, server or database which, though not shown in this figure, may be a part of system <NUM>.

Administrator interface <NUM> includes peripheral devices that communicate with system controller <NUM>. These peripheral devices comprise one or more displays <NUM>, a keyboard/mouse <NUM> and a printer <NUM>.

Advertising panel <NUM> is configured to be located remotely from system controller <NUM>, so that it can be deployed at a site deemed suitable for advertising to the desired, target groups. Advertising panel <NUM> includes one or more displays <NUM> for displaying advertising content, and a wireless access point (WAP) in the form of a Wi-Fi router <NUM>. Display <NUM> may be digital, as it is in this embodiment, but it need not be-the display <NUM> (or one of displays <NUM>) may comprise a board for supporting a poster, such as a scrollable poster. Advertising panel <NUM> may also include a speaker or speakers (not shown) for outputting audio advertising content. In addition, Wi-Fi router <NUM> need not be physically housed within advertising panel <NUM>: it may instead be located nearby, such as to monitor a specific volume of the environment from which people may view the advertising material presented or displayed by advertising panel <NUM>. Indeed, in some variations of this embodiment, it may be regarded as a part of system <NUM> but not of advertising panel <NUM>, while communicating with system controller <NUM> via advertising panel <NUM> or via a cellular network.

Although only one advertising panel <NUM> is depicted, it should also be understood that system <NUM> would typically include a plurality of identical or comparable advertising panels <NUM>. The advertising content outputted by advertising panel <NUM> may be stored locally (i.e. in advertising panel <NUM>), or in memory <NUM>.

In an alternative embodiment, system <NUM> includes software products executable on personal computing devices, portable computing devices (such as tablet computers or smartphones) or the like. These software products are operable by users to allow users to enter information remotely, and submit information to or access information from system controller <NUM>, and hence allow such computing devices to function at least to some extent as user interfaces. This information typically comprises advertising content (for outputting by advertising panel <NUM>) and/or advertising scheduling information usable by system <NUM> to control advertising panel <NUM> to output specific content according to a specified schedule.

Furthermore, it should be noted that system <NUM> may be distributed, and that additional hardware may be included as a part of system <NUM>, or hardware may be omitted as required for the specific implementation.

<FIG> is a block diagram of the main components of memory <NUM>. Memory <NUM> includes RAM 21A, EPROM 21B and a mass storage device 21C. RAM 21A typically temporarily holds program files for execution by the processor <NUM> and related data. EPROM 21B may be a boot ROM device and/or may contain some system or other code.

Mass storage device 21C is typically used to store advertising content, and software programs whose integrity may be verified and/or authenticated by processor <NUM> using protected code from EPROM 21B or elsewhere, as well as at least some of the basic data used as the input to those software programs. Mass storage device 21C may also be used to store tracking data (as described below); the tracking data-in raw or processed form-may also be displayed (such as on display <NUM>) and/or transmitted by system <NUM> to a user on another (e.g. remote) device.

<FIG> is a block diagram of system controller <NUM> and advertising panel <NUM>, showing processor <NUM> and memory <NUM>, including the main components of processor <NUM>.

System controller <NUM> is, in this embodiment, implemented as a data management platform (DMP) comprising a high-performance server and database. The main components of processor <NUM> are adapted to implement various user commands (entered via user interface <NUM>) and programmed functions (embodied as program code), in order-for example-to control the outputting of advertising content by advertising panel <NUM>, and the collection and processing of that tracking data.

Thus, processor <NUM> includes an advertising scheduler <NUM>, an event counter in the form of a tracking controller <NUM>, a tracking data processor <NUM>, a normalizer <NUM>, tracking data analyser <NUM>, and an output <NUM>. Memory <NUM> includes program code <NUM> (which, when executed, implements the operations described below), advertising content <NUM>, advertising schedules <NUM>, Wi-Fi tracking data <NUM>, statistical weighting data <NUM>, processed tracking data <NUM>, calibration data <NUM>, and normalized tracking data <NUM>.

Advertising scheduler <NUM> is configured to control the timing of the presentation of advertising content <NUM> according to advertising schedules <NUM>. It will be appreciated, however, that-as is the case with many components of system <NUM>, which may be distributed-advertising content <NUM> and advertising schedules <NUM> may be located remotely. Also, as is described below, advertising scheduler <NUM> is configured so that it can be controlled on the additional basis of normalized tracking data <NUM>.

It should also be noted that advertising content <NUM> may not be stored in system controller <NUM>. Instead, system <NUM> may include a playout system (typically in the form of a PC), generally located near or within advertising display <NUM> and connected via the internet (such as over a cellular network) to system controller <NUM>. However, this playout system may alternatively be located remote from advertising panel <NUM> and be configured to stream (e.g. advertising) content to advertising panel <NUM>. In these arrangements, the playout PC receives the information as to which content to play from advertising scheduler <NUM>.

In a variation of that arrangement, the playout system-rather than system controller <NUM>-includes an advertising scheduler, such that system <NUM> is distributed.

In a still further variation, the content is provided by such a playout system, but that playout system is merely controlled by the advertising scheduler (whether a part of the playout system or of system controller <NUM>): the playout system does not form a part of system <NUM>.

Tracking controller <NUM> is configured to mediate the receipt of tracking data from advertising panel <NUM>, including to store that data, time-stamped according to time of receipt, in Wi-Fi tracking data <NUM>. (The time-stamping may be performed in any convenient manner, whether by Wi-Fi router <NUM>, tracking controller <NUM>, Wi-Fi tracking data <NUM> or otherwise. ) The tracking data comprise random or pseudo-random numbers, each issued by advertising panel <NUM> in response to the detection by Wi-Fi router <NUM> of a probe request from a user's Wi-Fi enabled device. Alternatively, the tracking events may comprise a simple ping generated each time a user Wi-Fi device probes Wi-Fi router <NUM>, or a numerical tally of the number of times Wi-Fi router <NUM> detects a probe request from a user Wi-Fi enabled device over a pre-set accounting period. (It should be noted that, generally, a plurality of probe requests will be detected by Wi-Fi router <NUM> from a particular user Wi-Fi enabled device while that user is in the vicinity of Wi-Fi router <NUM>.

Tracking data processor <NUM> is configured to process this tracking data using statistical weighting data <NUM>. Statistical weighting data <NUM> are data, typically collected empirically (such as by a market research company), that indicate the ratio of the actual number of people in the advertising content viewing area or zone, and the number of probe requests from people in the advertising content viewing area or zone with active Wi-Fi enabled devices. This allows system <NUM> to apply a correction for those in the advertising audience without a Wi-Fi enabled device, those with more than one Wi-Fi enabled device, and-generally most significantly-those from whose devices Wi-Fi router <NUM> detects a plurality of probe requests. Statistical weighting data <NUM> is also, in this embodiment, time-dependent. For example, times of the day in which elderly people are present in higher numbers may give rise to proportionally lower numbers of Wi-Fi enabled devices, owing to the lower penetration of Wi-Fi enabled devices in that demographic. Hence, a greater weighting would be given to the detected number of Wi-Fi enabled devices in those times. Likewise, for any particular time window (e.g. <NUM>:<NUM> to <NUM>:<NUM>), certain days of the week may have advertising audiences with either a higher or lower numbers of Wi-Fi enabled devices than others; statistical weighting data <NUM> can also include weighting for that effect-as well as for further variations in specific days (e.g. religious holidays, public/bank holidays, days with high-profile sporting events, etc).

In use, tracking data processor <NUM> modifies (such as by division) each detected number of probe requests from Wi-Fi enabled devices according to the appropriate entry or entries in statistical weighting data <NUM>-including interpolating between entries if necessary. Tracking data processor <NUM> then outputs the result, in the form of processed tracking data, to processed tracking data <NUM>. The processed tracking data thus indicates the real number of advertising audience members likely to have viewed or otherwise been exposed to the advertising.

Normalizer <NUM> is configured to normalize the processed tracking data according to calibration data <NUM>. The calibration data comprises survey data collected in the vicinity of advertising panel <NUM> (again, such as by a market research company), comprising anonymous information (i.e. demographic information without identifying personal references) concerning visitors to the location of the advertising panel <NUM>. As with statistical weighting data <NUM>, calibration data <NUM> is collected at different times of the days, days of the week, etc., and includes as much demographic information concerning the expected advertising audience as can feasibly or economically be collected. For example, calibration data <NUM>-in this embodiment-includes:.

In this embodiment, calibration data <NUM> also includes all relevant variations of these examples, by sex, time window, day of the week, household income bracket, etc. For example, if an advertising panel <NUM> were to be erected in a Mobil (trade mark) petrol station, calibration data <NUM> would include demographic information pertaining to Mobil petrol stations in the applicable region, if not from the specific petrol region.

Normalizer <NUM> thus normalizes processed tracking data <NUM> according to calibration data <NUM> (though it could also be described as normalizing calibration data <NUM> according to processed tracking data <NUM>). Processed tracking data <NUM> is dynamic, being collected in real- or near-real-time, whereas calibration data <NUM> is essentially static (though subject to periodic updating); the resulting output of normalizer <NUM> comprises normalized tracking data and is stored in normalized tracking data <NUM> or output via output <NUM> (such as to display <NUM> or via network card <NUM> to another computing device).

For example, market research may reveal that typically, at a particular shopping centre of interest:.

In this scenario, Wi-Fi tracking data <NUM> records <NUM> Wi-Fi probe requests in that timeframe, so yields statistical weighting data of <NUM> (i.e. one visitor per <NUM> probe requests), which can be used from that point on as statistical weighting data <NUM>. This survey also yields calibration data of <NUM>% female and <NUM>% male.

(It should be noted that the statistical weighting of the Wi-Fi tracking data <NUM> and the subsequent normalization according to calibration data <NUM> may be combined. In the above example, the statistical weighting data and calibration data may be combined, such that in the same time window on future occasions, normalized tracking data <NUM> can be determined on the basis of <NUM> female advertising audience members for every <NUM> detected probe requests, and <NUM> male advertising audience members for every <NUM> detected probe requests.

Thus, by-in effect-merging the two data sets (the processed tracking data <NUM> and the calibration or survey data <NUM>) and thereby generating the normalized tracking data <NUM>, system <NUM> can generate credible, real-time information on the visitors and hence advertising audience at the locations of advertising panel <NUM>. This information can be used in at least three valuable ways.

For example, advertising scheduler <NUM> can be controlled on the additional basis of normalized tracking data <NUM>. That is, the advertising content <NUM> selected by advertising scheduler <NUM> to be outputted by advertising panel <NUM> can be varied according to normalized tracking data <NUM>. Tracking data analyser <NUM> is configured to perform this function: it inputs normalized tracking data <NUM> and, if-for example-it detects a spike to audience numbers at a time found to be male dominated, may instruct advertising scheduler <NUM> to adjust the ratio of male- to female-targeted advertising content accordingly (such as by increasing in real-time the proportion of male-targeted advertising). This amounts to the targeted playout of advertising or generalized content on, in this example, digital out of home media.

Secondly, tracking data analyser <NUM> can be used to analyse variations in normalized tracking data <NUM> as a function of changes in the outputted advertising content <NUM>, by correlating the time of significant variations in audience numbers with the time of changes in outputted advertising content <NUM>. Thus, the performance (e.g. reach, target groups) of the advertising media in the out-of-home space can be gauged. The results of tracking data analyser <NUM> can be outputted for human inspection, and/or inputted into advertising scheduler <NUM>, such as to control advertising scheduler <NUM> to favour the outputting of content that produces the largest audience (or audience with desired demographic characteristics).

Thirdly, normalized tracking data <NUM> provides a measure of visitors numbers and flows, which may be used to-for example-more accurately or objectively calculate rents in shopping centres or for supply management in restaurants or retail outlets, such as airports and motorway service areas.

Importantly, in the collection by tracking controller <NUM> of the tracking data from advertising panel <NUM>, personal data is not collected, so it is not necessary to inform visitors (i.e. potential advertising audience members) about the collection of data or to give those visitors the opportunity to object to that collection. This is implemented as follows.

Wi-Fi router <NUM> includes, in particular, a kernel <NUM>, a random number generator <NUM>, router hardware <NUM> and memory <NUM>. Wi-Fi router <NUM> is configured to facilitate the counting of Wi-Fi enabled devices in the vicinity (e.g. within a radius of approximately <NUM>) of Wi-Fi router <NUM> at any given time, without recording personalized data.

Kernel <NUM> controls the router hardware <NUM> of Wi-Fi router <NUM>, and specifically all communication between the software of Wi-Fi router <NUM> and the router hardware <NUM>. In this embodiment, kernel <NUM> is configured such that, when Wi-Fi router <NUM> registers that a probe request has been made by a Wi-Fi enabled device, the content of the probe request is neither recorded nor read out by Wi-Fi router <NUM>; it is not stored in Wi-Fi router <NUM> and is not accessible at any time by other components of system <NUM>.

Detecting a probe request triggers the generation by random number generator <NUM> of a random or pseudo-random number or string, which is then used for counting the number of received probe requests. In time, memory <NUM> of Wi-Fi router <NUM> will contain a series of randomly or pseudo-randomly generated numbers or strings, each of which represents a measured probe request, but not its contents. Kernel of Wi-Fi router <NUM> has this built-in randomization, so Wi-Fi router <NUM> cannot read the contents of the probe requests or pass them on to the software services in Wi-Fi router <NUM> or system controller <NUM>. Only these random strings are passed on for further processing, including counting the strings and/or transmitting them (or a tally thereof) to system controller <NUM>.

Thus, Wi-Fi router <NUM> cannot discern whether a probe request comes from a smartphone or other device from which it has previously detected probe requests (i.e. of a returning visitor) or from a new smartphone.

Data protection provisions therefore do not apply, as no personal data-whether in the form of MAC address, a list of previous SSIDs or even signal strength-is collected. Only the information that a probe request has been made is collected, without the collection of the content of the probe request: the content of the probe request is neither recorded nor read out or stored in Wi-Fi router <NUM>.

<FIG> are schematic plots <NUM>, <NUM> respectively, illustrating the effect of the processing of the tracking data performed by system controller <NUM>. Schematic or notional plots <NUM>, <NUM> illustrate the apparent size of the advertising audience N (normalized against the true size of the audience) versus time of day t.

Plot <NUM> of <FIG> has three curves: Wi-Fi probe request curve <NUM>, survey data curve <NUM> and facetracking curve <NUM> (discussed further below). Survey data curve <NUM> is a horizontal line, because it represents the empirically obtained true size of the advertising audience, normalized against itself.

Wi-Fi probe request curve <NUM> (which is essentially a notional plot of number of the number of detected Wi-Fi probe requests normalized against the survey data) varies, because it is affected by largely random factors (such as how many Wi-Fi enabled devices are in the vicinity of advertising panel <NUM>, and how many are switched on) and is also too high, because many probe requests may be received from a single Wi-Fi enabled device.

Plot <NUM> of <FIG> illustrates the effect of the processing of the data by system controller <NUM> by reference to statistical weighting data <NUM> and calibration data <NUM>. Hence, curve <NUM> of <FIG> represents the normalized tracking data <NUM> (normalized against the survey data). It will be seen that the long-term average of normalized tracking data <NUM> corresponds to the survey data values. Curve <NUM> still includes departures from the survey data, owing to the random factors referred to above, but provides a credible estimate of the true size of the advertising audience.

<FIG> is a flow diagram <NUM> of the operation of system <NUM>. (It will be appreciated that, in practice, system <NUM> operates essentially continuously.

At step <NUM>, advertising scheduler <NUM> controls the presentation by advertising panel <NUM> of advertising content <NUM>. At step <NUM>, Wi-Fi router <NUM> detects probe requests and, at step <NUM>, kernel <NUM> of Wi-Fi router <NUM> responds by controlling random number generator <NUM> to generate a random or pseudo-random number or string.

At step <NUM>, the random number or string is added to memory <NUM> of Wi-Fi router <NUM> and, at step <NUM>, is transmitted to tracking controller <NUM>. The transmission of the random number or string to tracking controller <NUM> may be performed either in conjunction with the generation of the random number or string or periodically with all other random numbers or strings generated and stored to memory <NUM> since the last time that they were transmitted to tracking controller <NUM>. In the latter example, this is done at the end of each accounting/survey period (e.g. each <NUM> or <NUM>). Alternatively, a simple count of the number of random numbers or strings may be sent to tracking controller <NUM>, either indicating that another random number or string has been generated, or that a probe request has been detected, or that a particular number of events are reflected by the data stored to memory <NUM>.

At step <NUM>, tracking controller <NUM> receives the tracking data and stores it, time-stamped, in Wi-Fi tracking data <NUM>. At step <NUM>, tracking data processor <NUM> processes the tracking data using statistical weighting data <NUM>, and at step <NUM> normalizer <NUM> normalizes the processed tracking data according to calibration data <NUM> and stores the results in normalized tracking data <NUM>. At step <NUM>, output <NUM> outputs the normalized tracking data <NUM>.

Optionally, at step <NUM> (which occurs in parallel with step <NUM>), tracking data analyser <NUM> inputs and analyses the normalized tracking data <NUM> and, at step <NUM>, controls advertising scheduler <NUM> according to that analysis.

It will be understood to persons skilled in the art of the invention that many modifications may be made without departing from the scope of the invention, in particular it will be apparent that certain features of embodiments of the invention, and alternative techniques as would be apparent to the skilled person, can be employed to form further embodiments.

For example, the embodiment of <FIG> employs Wi-Fi router with a modified kernel configured to prompt the generation of a random number, but not to record or read out the content of a probe request. In an alternative embodiment, a facetracking system is used instead of a Wi-Fi router for the detection of the advertising audience, wherein the facetracking system does not record in any way a detected image of a face. Rather, the facetracking system merely records or registers instances of identifying the occurrence of a face in its field of view, but not the face itself. As in the embodiment of <FIG>, the output of the facetracking system (whether in the form of random numbers or strings, a counter indicating the number of face detected, or otherwise) is processed by a system controller comparable in most respects to that of system <NUM>. Hence, the output of the facetracking system is similarly processed based on statistical weighting data and normalized according to calibration data. Unlike system <NUM>, it is expected that the statistical weighting data will tend to increase the unprocessed output of the facetracking system, as facetracking systems commonly miss faces (owing to limited fields of view and the posture of the person) so underestimate the number of people in the vicinity.

<FIG> represents this effect schematically. Facetracking curve <NUM> is lower than survey data curve <NUM> and especially Wi-Fi probe request curve <NUM>, owing to the limitations of the facetracking system. Multiple counts of a single individual are also less likely with the facetracking system than with system <NUM>, because a single individual may be tracked as he or she passes through the zone monitored by the facetracking system (typically in front of an advertising panel), so be outputted as a single event. This may be contrasted with the multiple probe requests that system <NUM> is likely to detect from that person's smartphone during the same transit.

Referring to <FIG>, however, it will be seen that-once the output of the facetracking system has been processed based on the statistical weighting data and the calibration data-a normalized tracking data curve <NUM> is generated that also has a long-term average that corresponds to survey data values.

In yet another alternative, the system employs one or more Bluetooth (trade mark) beacons installed in the vicinity of the advertising panel, and detection software (or app) configured to detect Bluetooth beacon signals and installed on smartphones of audience members or potential audience members. The detection software responds to the Bluetooth (trade mark) beacons by transmitting an ID from the Bluetooth beacon signal to the system, thereby alerting the system of the proximity of the smartphone. In other respects the system operates similarly to system <NUM> or to the facetracking embodiment.

In a further embodiment, the system receives signals from a plurality of (and advantageously at least three) Wi-Fi trackers (also referred to as Wi-Fi scanners) arranged about a monitored area or site, whenever the Wi-Fi trackers detect Wi-Fi probe requests from Wi-Fi enabled devices in their vicinity. Optionally, the system of this embodiment may include that plurality of Wi-Fi trackers.

The system of this embodiment then uses temporal coincidence detection (between probe request detections) and triangulation (based on the positions of the detecting Wi-Fi trackers and the probe request signal strengths) to determine the position of Wi-Fi enabled devices, from which an audience map may be generated. The audience map records the distribution and, in some cases, the movement of one or more of the audience or potential audience members with Wi-Fi enabled devices.

Thus, <FIG> is a schematic view of a system <NUM>' for real-time audience tracking in an advertising environment, according to an embodiment of the present invention. System <NUM>' is in many respects identical with system <NUM> of <FIG>, and like reference numerals have been used to identify like features. Some features of system <NUM>' are shown in even more simplified form than those of system <NUM> of <FIG>, but reference may be made to the description of system <NUM> of <FIG> to ascertain further detail about system <NUM>'.

System <NUM>' includes a system controller <NUM>', an administrator interface <NUM> and a presentation device in the form of an advertising panel <NUM>. System controller <NUM>' has a processor <NUM>' and a memory <NUM>. Instructions and data to control the operation of processor <NUM>' are stored in memory <NUM>, which is in data communication with processor <NUM>'. System <NUM>' includes both volatile and non-volatile memory and more than one of each type of memory, collectively represented by memory <NUM>.

System controller <NUM>' has an operating system <NUM> that is executable by processor <NUM>', and an input/output (I/O) interface <NUM> for communicating with peripheral devices of system <NUM>'. System controller <NUM>' also includes a communications interface in the form of a network card <NUM> that allows system controller <NUM>' to communicate with advertising panel <NUM> via a suitable network (not shown), which may be an intranet, the internet, a cellular network or otherwise (or a combination of these). Network card <NUM> also allows system <NUM>' to, for example, send tracking results or other information to a remote controller, server or database and receive data or commands from the central controller, server or database which, though not shown in this figure, may be a part of system <NUM>'.

Administrator interface <NUM> includes peripheral devices that communicate with system controller <NUM>'. These peripheral devices comprise one or more displays <NUM>, a keyboard/mouse <NUM> and a printer <NUM>.

System <NUM>' also includes a plurality of Wi-Fi trackers 140a-<NUM>. As illustrated, this embodiment includes seven such Wi-Fi trackers , but it should be understood that any plurality (within practical limits, including in processing capacity and bandwidth) may be employed. Advantageously, system <NUM>' should include at least three such Wi-Fi trackers.

Wi-Fi trackers 140a-<NUM> are distributed, in use, in the proximity of advertising panel <NUM>, as they facilitate the determination of the behaviour of the audience or potential audience of the content outputted by advertising panel <NUM>. This is not to suggest that Wi-Fi trackers 140a-<NUM> must be located only in a zone from which that content can be, for example, heard or seen by that audience or potential audience. For example, at least some of Wi-Fi trackers 140a-<NUM> could be located at entrances that provide access to that zone (such as near shopping centre entries), so that a more comprehensive assessment of audience behaviour or flow can be determined.

Wi-Fi trackers 140a-<NUM> are in data communication with Wi-Fi router <NUM> of advertising panel <NUM>. Wi-Fi trackers 140a-<NUM> are arranged to detect Wi-Fi probe requests from Wi-Fi enabled devices in their vicinity, and to send signals indicative of those probe requests including the strength of the probe requests to Wi-Fi router <NUM>. As in system <NUM> of <FIG>, the detection of a probe request (in this instance by any of Wi-Fi trackers 140a-<NUM>) and its communication to Wi-Fi router <NUM> triggers the generation by random number generator <NUM> of a random or pseudo-random number or string. These random or pseudo-random numbers or strings are transmitted to system controller <NUM>', in each case accompanied by data indicative of the strength (or dampening) of the respective probe request. At system controller <NUM>', tracking controller <NUM> stores that data, time-stamped according to time of receipt and with the signal strength data, in Wi-Fi tracking data <NUM>.

<FIG> is a block diagram of system controller <NUM>' and advertising panel <NUM> of system <NUM>'. Processor <NUM>' of system controller <NUM>' is comparable to processor <NUM> of system <NUM>, but additionally includes a triangulator and tracker <NUM>. Triangulator and tracker <NUM> is configured to monitor the incoming probe request data received from Wi-Fi router <NUM> for signals whose time-stamps are sufficiency close that the corresponding probe request detections may be regarded as likely to arise from a single probe request from a Wi-Fi enabled device.

Smartphones are a very common example of a Wi-Fi enabled device likely to be carried in many environments by a majority of adult audience or potential audience members. Smartphones typically send out probe requests every <NUM> to <NUM> minutes, so it is unlikely that two different smartphones in the area monitored by Wi-Fi trackers 140a-<NUM> will send out probe requests at the same time (to within, say, <NUM> of each other). Triangulator and tracker <NUM> includes a predefined but controllable time window that, in this embodiment, is <NUM>; within this window probe requests detections are treated by triangulator and tracker <NUM> as arising from a single probe request from a single Wi-Fi enabled device.

The probability of two smartphones transmitting a probe request within <NUM> of each other rises with the number of smartphones in the monitored area. However, for that to become a significant problem, it is estimated that there would need to be at least <NUM> smartphones in the monitored area (assuming the average time between two probe requests from an individual smartphone is <NUM>). For most monitored areas (e.g. points of sale) this is far above the likely number of smartphones in the vicinity at any time.

Should this appear to be a problem or a likely problem, the area monitored by each of Wi-Fi trackers 140a-<NUM> can be decreased, such as by installing more Wi-Fi trackers 140a-<NUM> with closer spacing and thereby increasing the number of individually monitored areas. Another way to counter the problem is to ensure that more precise time-stamps are associated with the detected probe requests, whether by employing components with a higher clock rate, assigning more precise time-stamps, or otherwise. For example, if each Wi-Fi tracker can distinguish between probe requests as close as <NUM> apart, instead of as close as <NUM> apart, the number of smartphones that can be differentiated rises by a factor of approximately <NUM>. However, too small a value for this time window increases the risk that plural probe request detections arising from a single probe request will be treated as being from different devices (owing, for example, to small differences between Wi-Fi trackers 140a-<NUM> or system latency).

In an embodiment, the tracking controller is configured to respond to the rate of probe request detection by dynamically modifying the size of this time window, so as to balance these considerations, setting a smaller time window when the rate of probe request detection is higher and setting a larger time window when the rate of probe request detection is lower (though with a predefined minimum window and a predefined maximum window).

Should, however, two different Wi-Fi enabled devices send probe requests so close in time as to be given the same time-stamp to within the ability of system <NUM>' to distinguish them, system <NUM>' will be unable to determine their positions within the monitored area. However, such a situation will generally affect only that single instance; the next probe requests issued by the two devices may be expected generally not to coincide, owing to the variation in the frequency with which probe requests are issued between Wi-Fi enabled devices.

Thus, without employing the MAC address or the hash value of the MAC address contained in the probe requests, system <NUM>' can nonetheless determine when two or more probe request detections are likely to have arisen from a single probe request from a single Wi-Fi enabled device.

Triangulator and tracker <NUM> then determines the location of that Wi-Fi enabled device at the time it issued that probe request, from the set of probe request detections determined to be likely to have arisen from a single probe request from a particular Wi-Fi enabled device. Triangulator and tracker <NUM> is configured to make this determination based on the respective Wi-Fi probe request signal strengths of each probe request detection, as each signal strength implies a respective relative distance from those of Wi-Fi trackers 140a-<NUM> that detected the probe request within the time window. (Note that only a subset of Wi-Fi trackers 140a-<NUM> may detect a particular probe request, and position determination will be made by triangulator and tracker <NUM> only when sufficient detections have been made. ) This determination generally becomes more accurate the greater the number of detections of the probe request, and at least three detections is generally the minimum number that will yield a worthwhile result. It should be borne in mind, however, that-even if a specific probe request is detected only twice (or even once) on one occasion-earlier or later probe requests from the same device may be detected a greater number of times, as the audience member (or potential audience member) moves around the monitored area. Hence, triangulator and tracker <NUM> can be configured to ignore instances of plural detection below what is found (by theory or empirically) to be insufficient.

Triangulator and tracker <NUM> is also configured to monitor the movement of the audience members or potential audience members. The positions of Wi-Fi enabled devices as determined by triangulator and tracker <NUM> are anonymous, but in many settings it can reasonably be assumed that the audience members are moving at no greater than a typical walking speed along a relatively smooth path, or are stationary. With these assumptions and in an uncrowded environment, the motion of a particular Wi-Fi enabled devices will be evident to the naked-eye from a map or display of the evolving positions of all detected Wi-Fi enabled devices. Thus, triangulator and tracker <NUM> is controllable to generate a map of the instantaneous evolving positions of all detected Wi-Fi enabled devices, and save it or display it display it (such as on a display of administrator interface <NUM>), and/or transmit it to another computing device for storage or display. In addition, triangulator and tracker <NUM> is configured to generate a map of the resulting path taken by one or more Wi-Fi enabled devices when these can be ascertained unambiguously (or to with a reasonable degree of confidence) from the evolving position data.

Thus, using temporal coincidence detection and triangulation, system <NUM>' can in suitable environments locate Wi-Fi enabled devices (such as smartphones) in a monitored area without the need to record the MAC addresses or any other personal data of those devices. In some environments, it is also able to identify the path of an individual Wi-Fi enabled device through the monitored area, subject to the accuracy of the position determination and constraints described above. The resulting position in particular can be used to generate maps of audience (or potential audience) density.

It will be appreciated that, in this embodiment, Wi-Fi trackers 140a-<NUM> can make unnecessary the detection of probe requests by Wi-Fi router <NUM>, but in practice it may be desirable to use Wi-Fi router <NUM> as, in effect, one of Wi-Fi trackers 140a-<NUM>.

It will also be appreciated that essentially the same technique can be implemented using Bluetooth technology (or supplemented with Bluetooth technology), such as by employing a plurality of Bluetooth beacons installed in the vicinity of advertising panel <NUM>, and detection software configured to detect Bluetooth beacon signals and installed on the Bluetooth enabled devices of audience members or potential audience members. The detection software responds to the Bluetooth beacons by transmitting an ID from the Bluetooth beacon signal to the system, including the strength of the Bluetooth beacon signal, each of which is time-stamped and employed by be used a triangulator and tracker to determine the position of the Bluetooth enabled devices.

It is to be understood that, if any prior art is referred to herein, such reference does not constitute an admission that the prior art forms a part of the common general knowledge in the art in any country.

Claim 1:
A computer-implemented method for real-time audience characterisation, the method comprising:
automatically detecting (<NUM>) one or more events associated with and arising from audience members or potential audience members in a proximity of a presentation device (<NUM>) configured to present content;
recording or counting the events in anonymous form;
generating one or more characteristics of an audience or potential audience of the presented content by processing the events or the number thereof according to empirical data pertaining to the one or more characteristics of the audience or potential audience; and
outputting the one or more characteristics of the audience or potential audience;
characterized in that
automatically detecting the one or more events comprises detecting a plurality of events with a plurality of wireless access points (<NUM>) or Wi-Fi trackers (140a-<NUM>), the events comprising Wi-Fi probe requests from at least one Wi-Fi enabled device of an audience member or potential audience member in the vicinity of the wireless access points (<NUM>) or Wi-Fi trackers (140a-<NUM>) and corresponding Wi-Fi probe request signal strengths;
associating a plurality of probe requests detected within a predefined time window; and
determining by triangulation a location of a Wi-Fi enabled device of an audience member or potential audience member using the Wi-Fi probe request signal strengths of the associated probe requests.