WO2005057322A2 - Procedes et appareil de detection d'evenements de changement de chaine de television - Google Patents

Procedes et appareil de detection d'evenements de changement de chaine de television Download PDF

Info

Publication number
WO2005057322A2
WO2005057322A2 PCT/US2004/012272 US2004012272W WO2005057322A2 WO 2005057322 A2 WO2005057322 A2 WO 2005057322A2 US 2004012272 W US2004012272 W US 2004012272W WO 2005057322 A2 WO2005057322 A2 WO 2005057322A2
Authority
WO
WIPO (PCT)
Prior art keywords
channel
interest
region
screenshot
image
Prior art date
Application number
PCT/US2004/012272
Other languages
English (en)
Other versions
WO2005057322A3 (fr
Inventor
Dan Nelson
Arun Ramaswamy
Original Assignee
Nielsen Media Research, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nielsen Media Research, Inc. filed Critical Nielsen Media Research, Inc.
Publication of WO2005057322A2 publication Critical patent/WO2005057322A2/fr
Publication of WO2005057322A3 publication Critical patent/WO2005057322A3/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/56Arrangements characterised by components specially adapted for monitoring, identification or recognition covered by groups H04H60/29-H04H60/54
    • H04H60/59Arrangements characterised by components specially adapted for monitoring, identification or recognition covered by groups H04H60/29-H04H60/54 of video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/35Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
    • H04H60/48Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for recognising items expressed in broadcast information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/35Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
    • H04H60/45Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying users

Definitions

  • This disclosure relates generally to audience measurement systems and, more particularly, to methods and apparatus for detecting a television channel change event.
  • the demographics of a television viewing audience are typically used by television program producers to improve the marketability of their television programming and determine a best price for advertising during such programming.
  • accurate television viewing demographics allow advertisers to target commercial content to desired segments of the population.
  • an audience measurement company may enlist a plurality of television viewers as panelists. The viewing habits of the enlisted viewers as well as demographic data about the enlisted viewers is collected and used to statistically determine the demographics of a television viewing audience.
  • One aspect of audience measurement involves determining the identity of the programming being displayed on a television.
  • Conventional audience measurement systems use channel detection as a means for identifying the channel to which a television set is tuned. This channel information may then be combined with programming information (e.g., a program schedule) to identify the program that was being displayed on the television while the television was tuned to the detected channel.
  • programming information e.g., a program schedule
  • channel detection systems are used to detect a channel change event in which a television stops displaying programming associated with a first channel and begins displaying programming associated with a second channel. Because a channel change event corresponds to a change in the programming being displayed to the programming audience, a channel change event may be used as a trigger for performing one or more methods for obtaining identification data about the new programming being displayed to the audience.
  • audience measurement systems may include a device, such as a people meter, having a set of input keys, each assigned to represent a single viewer.
  • the people meter may be adapted to capture infonnation about the audience by prompting the audience members to indicate that they are present in the viewing audience by, for example, pressing the appropriate input key disposed on the people meter.
  • a channel change event as a trigger for people meter prompting allows for the accurate recording of changes in the size and/or membership of the audience that may result from the channel change event or that may have caused the channel change event.
  • FIG. 1 is a block diagram of an example audience measurement system coupled to an example television system.
  • FIG. 2 is a block diagram of a first example on-screen channel change detector (OSCCD) for use in the example audience measurement system of FIG. 1
  • OSCCD on-screen channel change detector
  • FIG. 3 is a block diagram of a second example OSCCD for use in the example audience measurement system of FIG. 1.
  • FIG. 4 is a more detailed block diagram of the example television of FIG. 1.
  • FIG. 5 is a flowchart illustrating a first example process to determine whether a channel change event has occurred.
  • FIG. 6 is a flowchart illustrating a second example process to determine whether a channel change event has occurred.
  • FIG. 7 is an example of content that may be displayed in an example region of interest captured by the framegrabber of FIG. 1.
  • FIG. 8 depicts the example content of FIG. 7 after conversion from a grayscale image to a black-and-white image.
  • FIG. 9 illustrates a set of example characteristics for the example content shown in FIG. 8.
  • FIG. 10 illustrates a set of example numeric components arranged to form a set of numeric digits.
  • FIG. 11 is a flowchart illustrating an example process to identify a displayed channel number.
  • FIG. 12A is a block diagram of an example prior-art on-screen display reader (OSDR) system.
  • OSDR on-screen display reader
  • FIG. 12B is a block diagram of an example OSDR system that employs an OSCCD front-end filter.
  • FIG. 13 illustrates a set of example processing timelines corresponding to the example OSDR systems of FIGS. 12A-12B.
  • a block diagram of an example audience measurement system 100 capable of monitoring a television viewing audience is illustrated in an example environment of use in FIG. 1.
  • the example audience measurement system 100 includes a, a signal splitter 106, a framegrabber 108 and an on-screen channel change detector (OSCCD) 112.
  • the audience measurement system 100 is coupled to an example television system 101 that includes a set-top box 104 to receive a signal from a television service provider 102, and a television 110 coupled to the set-top box 104.
  • the components of the television system 101 may be connected in any well-known manner including that shown in FIG. 1.
  • the television 110 may be any type of television or television display device.
  • the television 110 may be a television and/or display device that supports the National Television Standards Committee (NTSC) standard, the Phase Alternating Line (PAL) standard, the Systeme Electronique pour Couleur Marie Memoire (SECAM) standard, a standard developed by the Advanced Television Systems Committee (ATSC), such as high definition television (HDTV), a standard developed by the Digital Video Broadcasting (DVB) Project, or may be a multimedia computer system, etc.
  • NTSC National Television Standards Committee
  • PAL Phase Alternating Line
  • SECAM Systeme Electronique pour Couleur Marie Memoire
  • HDTV high definition television
  • DVD Digital Video Broadcasting
  • the television service provider 102 may be any television service provider, such as a cable television service provider, a satellite television service provider and/or a radio frequency (RF) television service provider.
  • the television service provider 102 may provide analog and/or digital television signals to the television system 101, for example, over a coaxial cable or any wireless connection.
  • the set-top box 104 may be any set-top box, such as a cable television converter, a direct broadcast satellite (DBS) decoder, a digital personal video recorder (e.g., TiVo), a digital video disk (DVD) player, a video cassette recorder (VCR), etc.
  • the set-top box 104 receives a plurality of television channels from the television service provider 102.
  • the set-top box 104 selects one of the plurality of television channels based on a user input and outputs a video signal delivered on the selected television channel.
  • the set- top box 104 tunes to a particular channel to obtain programming delivered on that channel.
  • the set-top box 104 decodes certain packets of data to obtain the programming delivered on a selected television channel.
  • the output from the set-top box 104 is fed to the signal splitter 106 of the audience measurement system 100.
  • the signal splitter 106 may be a conventional analog y-splitter.
  • the signal splitter produces two signals indicative of the output from the set-top box 104.
  • a person of ordinary skill in the art will readily appreciate that any number of signals may be produced by the signal splitter 106.
  • One of the two signals is fed to the television 110 and the other signal is delivered to the framegrabber 108.
  • the framegrabber 108 may be implemented using any type of commercially available framegrabber and is used to convert a standard television signal into digital data.
  • the framegrabber 108 may convert NTSC signals to a digital bitmap.
  • An NTSC television image has 525 horizontal lines per frame. These lines are scanned or "grabbed" from left to right, and from top to bottom, where every other line is skipped (i.e., interlaced). As a result of the interlacing, two screen scans are required to complete a full frame. Each half-frame screen scan takes approximately l/60 th of a second, and a complete frame is scanned every 1/30* of a second.
  • the framegrabber 108 may convert PAL (Phase Alternation Line) signals and/or SECAM (Sequential Couleur Marie Memoire) signals to a digital bitmap.
  • PAL Phase Alternation Line
  • SECAM Sequential Couleur Electrode
  • the resulting bitmap may be any size and may encode any number of shades and/or colors.
  • the framegrabber 108 may capture 320x240 grayscale pixels, 640x480 grayscale pixels, color images, etc.
  • the framegrabber 108 periodically (e.g., every 120 ms) captures a "screenshot" corresponding to an image displayed on the television 110 at a specific instant in time and transmits the resulting digital image data to the on-screen channel change detector (OSCCD) 112.
  • the OSCCD 112 scans the series of captured images to determine if a channel change event has occurred.
  • the OSCCD 112 is discussed in greater detail below in conjunction with the description of FIG. 2.
  • the example television system 101 may also include a remote control device 114 to transmit control information that may be received by any or all of the set-top box 104, the television 110, the framegrabber 108 and the OSCCD 112.
  • the remote control device 114 may transmit this information using a variety of techniques, including, but not limited to, infrared (IR) transmission, radio frequency transmission, wired/cabled connection, and the like.
  • the example audience measurement system 100 may also include a people meter 116 to capture information about the audience.
  • the example people meter 116 may have a set of input keys, each assigned to represent a single viewer, and may prompt the audience members to indicate that they are present in the viewing audience by pressing the appropriate input key.
  • the people meter 116 may also receive an instruction or set of instructions from the OSCCD 112 to cause the people meter 116 to prompt the audience members.
  • the OSCCD 112 may receive information from the people meter 116 to modify an operation of the OSCCD 112, for example, to cause the OSCCD 112 to report information to a central processing facility, such as the central processing facility 222 of FIG. 2 discussed below.
  • the people meter 116 may receive and/or transmit information using a variety of techniques, including, but not limited to, infrared (IR) transmission, radio frequency transmission, wired/cabled connection, and the like.
  • IR infrared
  • FIG. 2 is a block diagram of an example OSCCD 200 that may be used to implement the OSCCD 112 of FIG. 1.
  • the example OSCCD 200 may be a personal computer (PC) or any other processor or computing device.
  • the example OSCCD 200 includes a main processing unit 202 powered by a power supply 203.
  • the main processing unit 202 may include a processor 204 electrically coupled by a system interconnect 206 to a main memory device 208 and one or more interface circuits 210.
  • the system interconnect 206 may be an address/data bus.
  • interconnects other than busses may be used to couple the processor 204 to the main memory device 208.
  • one or more dedicated lines and/or a crossbar may be used to connect the processor 204 to the main memory device 208.
  • the processor 204 may include any type of well-known central processing unit (CPU), such as a microprocessor from the Intel Pentium® family of microprocessors, the Intel Itanium® family of microprocessors, the Intel Centrino® family of processors, and/or the Intel XScale® family of processors.
  • the processor 204 may include any type of well-known cache memory, such as static random access memory (SRAM).
  • SRAM static random access memory
  • the main memory device 208 may include dynamic random access memory (DRAM), but may also include non-volatile memory. The main memory device 208 may be used to store a software program to be executed by the processor unit 204 in any well-known manner.
  • the interface circuit(s) 210 may be implemented using any type of well-known interface standard, such as an analog cable interface, a digital cable interface, a satellite signal interface, an Ethernet interface and/or a Universal Serial Bus (USB) interface.
  • One or more input devices 212 may be connected to the interface circuits 210 for entering data and commands into the main processing unit 202.
  • an input device 212 may be a keyboard, mouse, touch screen, track pad, track ball, isopoint and/or a voice recognition system.
  • the interface circuit(s) 210 may handle digital data inputs supplied by the framegrabber 108 of FIG. 1, inputs supplied by a remote control detector 213, and inputs and/or outputs corresponding to a people meter interface 214.
  • the remote control detector 213 detects signals transmitted by the remote control device 114 of FIG. 1.
  • the remote control detector 213 may be designed to detect signaling events (e.g., detect that the remote control device 114 transmitted any signal) or to decode the signals transmitted by the remote control device 114 to determine the control information being transmitted to a receiving device, such as the set-top box 104.
  • the people meter interface 214 may be designed to receive signals from and/or transmit signals to the people meter 116 of FIG. 1.
  • the people meter interface 214 may be used to transmit a signal to the people meter 116 if a chaimel change event is detected.
  • all or a portion of the framegrabber 108, the remote control detector 213 and/or the people meter interface 214 may be incorporated into the OSCCD 200.
  • one or more displays, printers, speakers and/or other output devices 215 may also be connected to the main processing unit 202 via one or more of the interface circuits 210.
  • an output device may be used to view collected data or for diagnostic purposes.
  • the display 215 may be a cathode ray tube (CRT), a liquid crystal display (LCD) or any other type of display.
  • the display 215 may provide visual indications of data generated during operation of the main processing unit 202.
  • the visual display may include prompts for human operator input, calculated values, detected data, etc.
  • the OSCCD 200 may also include one or more storage devices 216.
  • the OSCCD 200 may include one or more hard drives, a compact disk (CD) drive, a DVD drive and/or other computer media input/output (I/O) devices.
  • CD compact disk
  • DVD digital versatile disk
  • I/O computer media input/output
  • the OSCCD 200 may also exchange data with other devices via a connection 217 to a network 218.
  • the network connection 217 may be any type of network connection, such as an Ethernet connection, digital subscriber line (DSL), telephone line, coaxial cable, etc.
  • the network 218 may be any type of network, such as the Internet, a telephone network, a cable network, and/or any type of wireless network.
  • the OSCCD 200 may exchange data with a central processing facility 222 via the network 218.
  • the central processing facility 222 may receive data from the OSCCD 200 from which the central processing facility 222 may determine a set of viewing statistics or identify a set of viewing behaviors.
  • the OSCCD 200 may receive information from the central processing facility 222 to modify an operation of the OSCCD 200, such as the frequency with which the OSCCD 200 provides data to the central processing facility 222.
  • FIG. 3 is a block diagram of another example OSCCD 250 that may be used to implement the OSCCD 112 of FIG. 1.
  • the example OSCCD 250 receives images and/or image data from, for example, the framegrabber 108 that correspond to a screenshot or portions thereof associated with the television 110.
  • the OSCCD stores the received image data in a memory 252.
  • the memory 252 may also be used to store intermediate images and/or extracted regions of one or more images that result from processing the image data from the framegrabber 108.
  • the example OSCCD 250 includes a region of interest (ROI) extractor 254.
  • the ROI extractor 254 reads an image stored in the memory 252 and extracts one or more regions of interest (ROIs) from the image being processed.
  • ROIs regions of interest
  • the extracted ROIs may correspond to regions displayed on the television 110 associated with the display of channel numbers during a channel change event.
  • the ROI extractor may store the resulting ROI image back to the memory 252.
  • the ROI extractor 254 may pass the ROI image to an image quantizer 256.
  • an image quantizer 256 By quantizing the ROI image via the image quantizer 256, it may be possible to significantly reduce the amount of memory and/or processing required by the subsequent blocks/functions in the OSCCD 250. For example, a two-level black-and-white (e.g., binary) ROI image may require as little as one-eighth the memory storage space as a 256-level grayscale ROI image.
  • the image quantizer 256 takes as input a first image having multiple color and/or intensity levels.
  • the image quantizer 256 converts this first image to a second image having fewer colors and/or intensity levels that the original first image.
  • the image quantizer 256 may be implemented to convert a first image having 256 grayscale levels to a second, black-and-white image having two grayscale levels based on a single threshold 258.
  • pixels in the first image having grayscale values that are greater than the threshold 258 may be converted to white in the second image.
  • pixels in the first image having grayscale values that are less than the threshold 258 may be converted to black in the second image.
  • the quantizer threshold 258 may be adjusted (e.g., either manually or automatically based on the results of subsequent processing performed on the image) to improve the clarity of the second image.
  • the image quantizer 256 may store the resulting quantized image (i.e., the second image) to the memory 252 for subsequent processing.
  • the example OSCCD 250 includes an object detector 260 and an edge detector 262.
  • the object detector 260 may be used to detect one or more objects in the ROI image based on a set of object characteristics stored in the memory 252.
  • the object detector 260 may be configured to detect numeric digits in an ROI image based on a set of characteristics associated with numeric digits, such as height, width, spacing between digits, etc.
  • the edge detector 262 may be used to detect one or more edges (e.g., transitions/differences between intensity levels) in an ROI image.
  • the edge detector 262 may be used to determine whether an ROI image corresponds to a quiet area, i.e., an area having a constant background color/intensity.
  • the object detector 260 may increment a counter 264 each time a desired object or set of objects (e.g., a channel number) is detected.
  • the edge detector 262 may, for example, reset the counter 264 if an edge is detected in an ROI image corresponding to a quiet area.
  • the example OSCCD 250 includes a counter 264 that may be used to indicate the number of times a desired object or set of objects is detected by the object detector 260 in one or more images stored in memory 252.
  • a counter comparator 266 may be used to compare the value of the counter 264 with a comparator threshold 268 to determine, for example, whether a desired object or set of objects were detected in a sufficient number of images to indicate that a monitored event may have occurred (e.g., whether channel numbers were detected in a sufficient number of captured images to indicate that a channel change may have occurred).
  • the behavior and use of the counter 264 and the counter comparator 266 will become more apparent from the subsequent descriptions of FIGS. 4 through 11 provided below.
  • the example OSCCD 250 includes an image comparator 270.
  • the image comparator 270 may be used to compare two images, for example an ROI image and a stored reference image/template, to determine if the two images (or contents thereof) are substantially similar or different. For example, in the case of detecting a channel change event, the image comparator 270 may compare an ROI image corresponding to a currently displayed channel number with a reference image/template corresponding to a previously displayed channel number. If the image comparator 270 determines that the two images are substantially the same, then a channel change event has probably not occurred. However, if the two images are substantially different, then a channel change event may have occurred.
  • the example OSCCD 250 may include an object identifier 272 to identify one or more objects that are present in the image (e.g., ROI image) being processed.
  • the object identifier 272 may identify one or more objects in the ROI image based on a set of object characteristics stored in the memory 252.
  • the object identifier 272 may use the results from the image comparator 270 to identify one or more objects in the ROI image.
  • the image comparator 270 may compare the ROI image with a reference image/template corresponding to a known object. If the ROI image and the reference image/template are determined to be substantially the same, then the object identifier 272 may conclude that the ROI image contains the known object. The behavior and use of the object identifier 272 will become more apparent from the subsequent descriptions of FIGS. 4 through 11 provided below.
  • the example OSCCD 250 may also include a remote control signal detector 274 to detect signals from a remote control device, such as the remote control device 114 of FIG. 1.
  • the OSCCD 250 may use the remote control signal detector 274 to determine whether the remote control device 114 transmitted one or more signals within a window of time during which the image currently being processed was captured by the framegrabber 108.
  • the output of the remote control signal detector 274 may be used to determine whether the image being processed may correspond with a monitored event (e.g., a channel change event).
  • the remote control signal detector 274 may reset the counter 264 to indicate that, for example, any currently detected numeric digits do not correspond with a channel change event.
  • FIG. 4 is a block diagram of an example television 300 that may be used to implement the television 110 of FIG. 1.
  • the example television 300 includes a display device 302, such as a CRT or an LCD, capable of displaying video/image content within a display area 304.
  • a display device 302 such as a CRT or an LCD
  • the new channel number is displayed in a region 306 located, for example, near the upper right corner of the display area 304.
  • the region 306 includes a background area 308 that may be, for example, a solid color (e.g., blue), transparent, semi-transparent or opaque.
  • a set of numeric digits 310 that represent the new channel number may be superimposed on the background 308.
  • region 306 is also referred to as a first region of interest (ROI) 306 as this region may be associated with the display of channel numbers.
  • ROI first region of interest
  • programming content displayed in the first ROI 306 may contain characteristics substantially similar to a channel number (e.g., in the case of a sporting event or game show in which a score or other numeric information may be displayed).
  • a channel number e.g., in the case of a sporting event or game show in which a score or other numeric information may be displayed.
  • other regions of the display area 304 may be examined to confirm the presence or absence of a displayed channel number. For example, simultaneous with the display of a new channel number in the first ROI 306, many example televisions 300 and/or set-top boxes 104 may also display a banner guide in a banner area 312 located, for example, along the bottom of the display area 304.
  • the banner guide may include information such as the name and/or call letters for the current channel, the current time, a description of the programming content being broadcast over the selected channel, the duration of the programming content, etc.
  • the banner area 312 is predominately a solid background color (e.g., blue) on which the displayed information is superimposed.
  • a known quiet area 314 i.e., a region typically having a constant display color/intensity when the banner is displayed
  • the quiet area 314 is also referred to as a second ROI 314 as this region may be associated with the display of the banner guide.
  • detecting a channel number in the first ROI 306 along with a banner guide in the banner area 312 may be sufficient to indicate that the detection of the channel number was not erroneous.
  • the display of a banner guide in the banner area 312 may correspond to events other than a channel change.
  • other regions of the display area 304 may be examined to confirm the presence of a displayed channel number that corresponds to a channel change event.
  • the user may request that the set-top box 104 provide a banner guide containing information corresponding to the current channel being viewed.
  • This request may also cause the simultaneous display of the current channel number in the first ROI 306.
  • the user may request, for example, that the set-top box 104 produce a banner guide containing information corresponding to channels other than the channel currently being viewed.
  • the user may enter a "banner surfing" mode in which the user may cycle though the informational content (e.g., banner guide information) corresponding to a set of available channels other than the current channel while the programming content of the current channel is still displayed in the display area 304.
  • banner surfing the channel number for a banner surfed channel may be displayed in the first ROI 306 (rather than either the current channel or the new channel after a channel change event).
  • the current channel number may be displayed in a region 316 located, for example, near the upper left corner of the display area 304.
  • the region 316 is also referred to as a third ROI 316 as this region may be associated with the display of the current channel number during various operational modes of the baimer guide.
  • the displayed contents in the third ROI 316 may be examined, for example, to confirm that a detected channel number in the first ROI 306 corresponds to a channel change event or to determine that a channel number displayed in the first ROI 306 corresponds to a banner surfing event.
  • regions of interest may be tailored to the properties of a specific set-top box 104 and/or television 110 employed in the television system 101.
  • another example set-top box 104 may cause the display of channel numbers in a first ROI 306 located in the upper left corner of the display area 304 (rather than the upper right corner as described for the example television 300 of FIG. 4).
  • the banner area 312 may be located along the top of the display area 304 (rather than along the bottom as described for the example television 300).
  • some set-top boxes 104 and/or televisions 110 may display the banner surfed channel numbers in the banner area 312 rather than in a separate location in the display area 304 (as compared to the banner surf channel numbers being displayed in the first ROI 306 for the example television 300).
  • the number and characteristics of the various regions of interest are calibrated during the initial configuration of the audience measurement system 100.
  • the corresponding calibration settings may be updated, for example, when a new component is installed in the television system 101, such as a new set-top box 104.
  • the calibration settings may also be updated by any or all of the central processing facility 222, OSCCD 112 and/or framegrabber 108 to improve the reliability of detecting the channel change event.
  • the framegrabber 108 which receives substantially the same electrical signals as the television 110, periodically captures "screenshots" of the images displayed on the television 110.
  • a screenshot is a digital representation of an image displayed on the television 110 at a specific instant in time. These screenshots include one or more regions of interest, such as ROIs 306, 314 and 316 of FIG. 4, where on-screen activity (or lack thereof) may be used to determine if the channel of the television has been changed.
  • ROI 306 may be used as a first ROI and may be scanned horizontally and vertically and converted to a black-and-white image. The resulting image data may then be examined to determine whether one or more numeric digits indicative of a channel number are displayed in this region.
  • the display of content having the preprogrammed characteristics of channel numbers in the first ROI 306 may be used to indicate the occu ⁇ ence of a possible channel change and to trigger, for example, a prompt on the people meter 116.
  • the display of channel numbers in the first ROI 306 may not be sufficient evidence that a channel change has occurred.
  • a display of numbers detected in the first ROI 306 may be associated with the programming content being displayed and have no connection to a channel change. In this case, any similarity the displayed numbers have to those associated with an actual channel number display may be coincidental.
  • a variety of televisions 110 and set-top boxes 104 enable an activity refe ⁇ ed to as "banner surfing" that allows a viewer to continue viewing a first channel while causing the television to display a banner guide (e.g., in the banner area 312 of FIG.
  • the information contained in the banner guide may include channel number information and program identification information (e.g., a program title).
  • program identification information e.g., a program title.
  • the term "surfing" is often used to describe this behavior because many television systems 101 allow the viewer to rapidly cycle through information associated with each of a plurality of channels by repeatedly pressing a designated button on the remote control 114 or by holding the designated button in a depressed position for a predefined, minimum period of time.
  • some televisions 110 and/or set-top boxes 104 that enable banner surfing will also display the number of the channel being banner surfed (the channel for which the banner guide is providing information) in the same on-screen location where channel numbers are displayed in response to a channel change (e.g., ROI 306).
  • the banner surfed channel numbers may be displayed using the same stored characteristics as are used to display channel numbers associated with an actual channel change.
  • the detection of numeric digits in the first ROI 306 may not correspond to a channel change but may instead represent a channel for which information is being obtained via banner surfing.
  • a false positive determination is defined, hereinafter, to be the detection of numeric digits in the first ROI 306 that do not correspond to an actual channel change event and that are falsely identified as being indicative of a channel change.
  • additional regions of interest may be examined.
  • a second ROI such as a background area or a quiet area (e.g., ROI 314 of FIG. 2), may be examined.
  • the quiet area ROI 314 may constitute a portion of the television screen in which a solid color is displayed when a channel number is being displayed in the first ROI 306. Therefore, if the quiet area ROI 314 is not displaying a solid background when a channel change has been detected, then the detected channel change may be a false positive.
  • some televisions 110 and/or set-top boxes 104 cause a channel number to be displayed in the first ROI 306 when the viewer is banner surfing and, thus, when the quiet area ROI 314 is displaying a solid background.
  • the channel number being displayed in the first ROI 306 during such banner surfing does not indicate the channel number of the channel currently being viewed nor does it indicate that a channel change has occurred. Instead, the displayed channel number represents a channel other than the channel currently being viewed and about which the viewer seeks information.
  • a third ROI (e.g., ROI 316 of FIG. 4) may also be examined.
  • This third region of interest may be located, for example, in the upper left corner of the television screen because many televisions 110 and/or set-top boxes 104 are configured to cause the actual channel number to be displayed in the upper left corner of the display area 304 (e.g., ROI 316) when a banner surfing channel number is being displayed in the upper right corner of the display area 304 (e.g., ROI 306). Therefore, if a channel number is detected in both the first ROI 306 and third ROI 316, then the channel number detected in the first ROI 306 is not indicative of a channel change event.
  • a channel number is detected in the first ROI 306, it may be compared to a channel number that was displayed prior to the cu ⁇ ently displayed channel number. If the channel number previously displayed is identical to the channel number currently being displayed, then a channel change has not occu ⁇ ed. Instead, the number of the channel cu ⁇ ently being viewed is being displayed, most likely, for informational purposes. In contrast, if the channel number previously displayed is different from the channel number currently being displayed, then a channel change may have occu ⁇ ed.
  • a flowchart illustrating an example process 400 to determine whether a channel change event has occu ⁇ ed is provided in FIG. 5.
  • the process 400 may be performed by an OSCCD, such as the example OSCCDs 112 or 200, and may be embodied in one or more software programs which are stored in one or more memories and executed by one or more processors in any well-known manner. However, some or all of the blocks of the process 400 may be performed manually and/or by one or more hardware devices.
  • the process 400 is described with reference to the flowchart illustrated in FIG. 5, a person of ordinary skill in the art will readily appreciate that many other methods of performing the process 400 may be used. For example, the order of many of the blocks may be altered, the operation of one or more blocks may be changed, the operation of one or more of the blocks may be combined, and/or one or more of the blocks may be eliminated.
  • the example process 400 scans one or more ROIs (e.g., ROIs 306, 314 and 316 of FIG. 4) associated with a predetermined number of consecutively captured video frames to determine if numeric digits indicative of a channel change are being displayed in each of the consecutively captured frames.
  • the predetermined number of frames co ⁇ esponds to the number of consecutive frames in which a channel number is displayed when a channel change has occu ⁇ ed.
  • the television 110 and/or set-top box 104 typically causes the newly selected channel number to be displayed for a predefined length of time that may be sufficient, for example, to allow the viewer to see and recognize the channel number.
  • the predefined length of time will dictate the number of consecutive frames during which the channel number will be displayed and may vary depending on the settings of the television 110 and/or set-top box 104 being monitored. If such numeric digits are detected in a first ROI (e.g., ROI 306), one or more other regions of interest associated with the same video frame may also be examined to reduce the likelihood that the detected numeric digits will result in a false positive determination.
  • a first ROI e.g., ROI 306
  • one or more other regions of interest associated with the same video frame may also be examined to reduce the likelihood that the detected numeric digits will result in a false positive determination.
  • the example process 400 begins at block 402 where the framegrabber 108 of FIG. 1 captures a screenshot co ⁇ esponding to a frame of a video signal being delivered from, for example, the set-top box 104 to the television 110.
  • the captured screenshot may co ⁇ espond to an entire frame of video or may instead be only a portion of a frame.
  • the OSCCD 112 extracts one or more ROIs from the captured screenshot (block 404).
  • the OSCCD 112 may extract three separate ROIs (e.g., ROIs 306, 314 and 316 of FIG. 4) for storage in memory.
  • the ROIs are converted to gray-scale images using any of a variety of well-known methods.
  • the resulting gray-scale images may be further converted to sets of digital data that represents gray-scale images in one of many, well-known conventional formats.
  • Control then proceeds to block 406 where the OSCCD 112 scans a first ROI 306 both horizontally and vertically for the presence of numeric digits (block 406). Specifically, a horizontal scan of the first ROI 306 is performed by reading the co ⁇ esponding screenshot data, pixel by pixel, from left to right (or vice versa) and a vertical scan is performed by reading the frame data, pixel by pixel, from top to bottom (or vice versa).
  • the grayscale image co ⁇ esponding to ROI 306 is converted to a black-and-white (e.g., binary) image based on one or more quantization thresholds. This conversion process is discussed in greater detail below in conjunction with FIGS. 7 and 8.
  • each numeric digit may be divided into one or more components.
  • the OSCCD 112 may detect the presence of one or more numeric digits that are formed of such components.
  • the channel numbers and components thereof that are displayed in the first ROI 306 will have a predefined width/height, or range of widths/heights, such that any displayed content having a width/height not equal to the predefined width/height or having a width/height outside of the predefined range will not qualify as a potential component and therefore may be discarded.
  • Arabic numeric digits i.e., 1, 2, 3, 4, etc., do not have a horizontal gap, and, thus, any content having such a gap will not qualify as a potential numeral and therefore may be dismissed.
  • a horizontal gap is defined to be a region comprising a horizontally disposed row of pixels that extends the full width of a numeric digit and that is disposed between the outermost horizontal edges of the numeric digit, i.e., the top and bottom of the numeric digit.
  • the values of the pixels in a horizontal gap are substantially equivalent to each other and substantially different from the pixel values co ⁇ esponding to a displayed numeric digit.
  • the manner in which content is centered within the first ROI 306 may be compared to a stored character centering characteristic. If the content is centered in accordance with the stored character centering characteristic, then the content may represent a numeric digit.
  • the OSCCD 112 uses the results of the examination to either increment a digit detection counter (in the event a numeric digit has been detected) or to clear the digit detection counter (in the event a numeric digit has not been detected).
  • the number of characteristics that must be detected before the displayed content is validated as a numeric digit may vary depending on the certainty required by the system performing the process 400. For example, as the detection of characteristics consistent with the display of a numeric digit increases, certainty that the displayed content actually is a numeric digit also increases. Processing complexity may also increase as the examination of the region of interest becomes more comprehensive. For example, the process 400 may require that the map of digital data contains content that conforms to the stored height, width, spacing and character-centering characteristics.
  • the first ROI 306, and for that matter any ROI may be scanned/examined for the presence of numeric digits using any of a variety of methods that enable the detection of one or more of the digit components and/or any characteristics of the digit components: Such methods may include techniques that examine the position/locations of any of the edges of the components, the height of any of the components, the width of any of the components, the number and width of any vertical gaps separating any of the components (to determine whether the gaps are equal to or within an expected, predefined distance between two numeric digits representing a multi-digit number), the absence of any horizontal gaps, etc.
  • the OSCCD 112 determines that the content displayed in the first ROI 306 is not likely a numeric digit because the characteristics of the detected components, if any, are not consistent with the stored characteristics (block 408), then the OSCCD 112 checks if another threshold may be used to quantize the ROI image to a black-and-white format. As discussed below in greater detail, a different quantization threshold may result in a black-and-white ROI image with better edge clarity. If another threshold is available (block 409), control then returns to block 406 where the OSCCD 112 re-converts the gray-scale ROI image to a black-and-white image and re-scans the image for the presence of numeric digits.
  • Control then proceeds as described above. However, if another threshold is not available (block 409), the OSCCD 112 then clears the digit detection counter (block 410) and control returns to bloqk 402. If, instead, the OSCCD 112 determines that the characteristics of the displayed components are consistent with the stored characteristics of the numeric digits used to display a channel number (block 408), then the OSCCD 112 may increment the consecutive detection counter (block 412) to indicate that a channel number is being displayed in the cu ⁇ ently captured frame.
  • the OSCCD 112 determines whether scanning of a second ROI, such as the background area 314 of FIG. 4, is enabled (block 414). For example, the OSCCD 112 may read a location in memory 208 to determine if scanning of the second ROI 314 is enabled. In the example of FIG. 5, control reaches block 414 if, at block 408, a numeric digit was detected in the first ROI 306. Block 414 may be used to initiate a procedure to detect false positives by examining the second ROI 314 for the display of information that will either validate or invalidate the digits detected at block 408.
  • the second ROI 316 may be defined to include a portion of the banner area 312 in which a banner guide is programmed to appear in response to a user prompt entered via, for example, the remote control 114.
  • the banner guide as described above, may be configured to provide information about the programming available on the channel cu ⁇ ently being displayed or available on other channels.
  • the second ROI 316 is defined to be a region within the banner area 312 that would be quiet (i.e., a solid background color) if the banner guide is active.
  • the second ROI 314 will contain only a solid background when the first ROI 306 contains a channel number
  • the second ROI 314 is scanned for edges (block 416), the presence of which would indicate that the second ROI 314 is not filled solely with a background color and, thus, that the numeric digit detected in the first ROI 306 represents a false positive determination.
  • the gray-scale image co ⁇ esponding to the second ROI 314 is converted to a black-and-white image based on one or more quantization thresholds.
  • the OSCCD 112 may confirm/validate the determination made at block 408, i.e., that a channel number is being displayed.
  • control proceeds to block 410 and blocks subsequent thereto (as described above) at which the digit detection counter is cleared to indicate that a channel number has not been detected in the cu ⁇ ent frame and another video frame is captured for examination (block 402).
  • the OSCCD 112 may attempt to re-convert and re-scan the black-and-white image co ⁇ esponding to the second ROI 314 before deciding that no edges are located in this region.
  • the OSCCD 112 determines whether a scan of a third ROI, such as ROI 316 of FIG.3, is enabled (block 420).
  • the third ROI 316 may be scanned, for example, to provide further validation that the numeric digits detected in the first ROI 306 represent a channel number and co ⁇ espond to a channel change event. Users often surf the banner guide for information about available programming without having to actually change the cu ⁇ ently tuned channel.
  • the television 110 and/or set-top box 104 may be configured to display the number of the channel being surfed (for which information is being sought) in the first ROI 306 and the number of the cu ⁇ ent channel being viewed in the third ROI 316.
  • the presence of numeric digits in the third ROI 316 may indicate that the numeric digits detected in the first ROI 306 are not indicative of a channel change but are instead associated with a banner surfing event.
  • the OSCCD 112 may determine if scanning of a third ROI 316 is enabled (block 420). Again, the OSCCD 112 may read a location in memory 208 to determine if such scanning is enabled. If enabled, the OSCCD 112 scans the third ROI 316 to determine whether numeric digits are being displayed. Similar to the processing of the first ROI 306, during the scanning process, the grayscale image co ⁇ esponding to the third ROI 316 is converted to a black-and-white image based on one or more quantization thresholds.
  • some televisions 110 and/or set-top boxes 104 are configured to display the channel number in the third ROI 316 (e.g., the upper left corner of the display area 304) when the surfing guide channel is being displayed in the first ROI 306 (e.g., the upper right corner of the display area 304).
  • the numeric digits detected in the first ROI 306 may represent banner surf channel numbers instead of actual channel numbers (block 422). If the first ROI 306 contains channel numbers and the third ROI 316 contains channel numbers, then the determination made with respect to the first ROI 306 may represent a false positive.
  • any of the methods/tests described above with respect to examining the first ROI 306 may be used.
  • the OSCCD 112 clears the consecutive detection counter (block 410). If no digits are detected (block 424), or scanning of the third ROI 316 is disabled (block 420), then the chaimel numbers detected in the first ROI 306 are not treated as a false positive (i.e., they are treated as a valid detection).
  • the OSCCD 112 may attempt to reconvert and re-scan the black-and-white image co ⁇ esponding to the third ROI 316 before deciding that no digits are located in this region.) In this case, the OSCCD 112 determines whether the channel numbers being displayed in the first ROI 306 have been displayed for at least a minimum number of consecutive frames by determining whether the consecutive detection counter exceeds a predetermined threshold (block 426).
  • the consecutive detection counter does not exceed the predetermined threshold (block 426)
  • the chaimel numbers detected in the first ROI 306 have not been displayed for a sufficient number of video frames and, thus, control returns to block 402 and blocks subsequent thereto to capture another video frame as described above.
  • the consecutive detection counter does exceed the predetermined threshold (block 426)
  • the channel numbers detected in the first ROI 306 have been displayed for a sufficient number of frames and control passes to block 428.
  • the OSCCD 112 checks whether the channel numbers cu ⁇ ently being displayed in the first ROI 306 match the chaimel numbers that were captured in connection with the most recent channel change.
  • the OSCCD 112 performs this operation by comparing the cu ⁇ ent captured ROI image that contains the cu ⁇ ent channel numbers with a reference image or template that contains the chaimel numbers that were most recently displayed. If the cu ⁇ ent captured channel number image matches the previously captured reference channel number image/template, then a channel change has not occu ⁇ ed. Instead, the viewer has caused the channel number of the channel cu ⁇ ently being viewed to be displayed, most likely for info ⁇ national purposes. Thus, the OSCCD 112 clears the consecutive detection counter (block 410) and control loops back to capture another video frame (block 402). If the channel numbers cu ⁇ ently being displayed do not match the channel number previously displayed, then a channel change has occu ⁇ ed.
  • the OSCCD 112 stores the cu ⁇ ent channel number ROI image for use as a reference image/template for comparison to subsequent channel number displays (block 430).
  • the OSCCD 112 then reports the channel change event (block 432).
  • the reported channel change event may cause the OSCCD 112 to send information to the people meter 116 of FIG. 1 to cause the people meter 116 to prompt the audience members to indicate their presence in the viewing audience.
  • the process 400 may also save and/or report the channel number being displayed, for example, for purposes of channel identification.
  • a digitized image of the channel number may be captured and stored in memory 208 for later transmission over the network 218 to the central processing facility 222.
  • the OSCCD 112 may convert the digitized image of the channel number to a numeric value using one of many well-known image identification techniques. The numeric value could be stored in memory 208 for later transmission over the network 218 to the central processing facility 222.
  • the OSCCD 112 may compare the captured channel number image to a series of stored templates representing images of all possible channel numbers until a match is detected. Digital information identifying the channel number represented by the matching template may then be stored in memory 208 and/or transmitted over the network 218, and, thereby, used to report the cu ⁇ ent channel number to the central processing facility 222.
  • the central processing facility 222 may use the reported channel number to determine viewing statistics about, for example, the audience being monitored, the channels being viewed, the programs being viewed, etc. Channel number identification is discussed in greater detail below in conjunction with the description of FIG. 11.
  • FIG. 6 Another example process 500 for determining whether a channel change has occu ⁇ ed is shown in the flowchart of FIG. 6.
  • the example process 500 is similar to the example process 400 but further comprises the use of information from the remote control device 114 to reduce the likelihood of a false positive determination.
  • substantially similar blocks appearing in both figures will not be re-described here. Instead, the interested reader is refe ⁇ ed to the above description of FIG. 5 for a complete description of the co ⁇ esponding blocks. To assist the reader in this process, substantially similar blocks are labeled with identical reference numerals in the figures.
  • an OSCCD 112 performing the process 500 of FIG. 6 determines whether the remote control detector 213 is enabled (block 402). For example, the OSCCD 112 may read a location in memory 208 to determine whether the detection of signals from the remote control device 114 should be used to determine whether a channel change event has occu ⁇ ed.
  • the OSCCD 112 determines whether the remote control detector 213 received and/or decoded a signal from the remote control device 114 within a window of time preceding the detection of the numeric digits (block 504). If a signal was received and/or decoded by the remote control detector 213 (block 504), or the remote control detector 213 is not enabled (block 502), control passes to block 414, whose operation is described above.
  • control proceeds to block 410 and blocks subsequent thereto (as described above) wherein the digit detection counter is cleared to indicate that a channel number has not been detected in the cu ⁇ ent frame and another video frame is captured for examination.
  • information received from the remote control device may be used at any point in the example processes 400 and 500 to assist the identification of a channel change event.
  • the remote control detection procedures of block 502 and 504 of FIG. 6 may be used after a numeric digit is detected in the first ROI 306 (e.g., after block 412).
  • the remote control detection procedure may be used after either of the second or third ROIs (314 or 316, respectively) have been examined (e.g., block 418 or 424) or as an initial step of the process 400 or 500 that precedes the examination of the first ROI 306.
  • the detection of remote control information may be used as a trigger to cause one or more of the blocks in the processes 400 or 500 to be executed.
  • ROI 600 representative of ROIs 306 and/or 316 of FIG. 4 is illustrated in FIG. 7.
  • ROI 600 may be extracted by the OSCCD 112 from a screenshot captured by framegrabber 108.
  • the grayscale ROI 600 may be quantized to a black-and-white (e.g., binary) ROI 700 shown in FIG. 8.
  • ROI 600 includes a channel number 604, a solid color background (quiet area) 610, and an area 612 between two digits.
  • ROI 700 includes a channel number 604, a solid color background (quiet area) 610, and an area 612 between two digits.
  • ROI 700 includes a channel number 604, a solid color background (quiet area) 610, and an area 612 between two digits.
  • ROI 700 includes a channel number 604, a solid color background (quiet area) 610, and an area 612 between two digits.
  • ROI 700 includes a channel number 604, a solid color background (quiet area) 610, and
  • the lightly shaded channel number 604 is converted to a white channel number 704.
  • the darkly shaded background 610 and areas between digits 612 are converted to the black regions 710 and 712, respectively.
  • light and/or dark thresholds may be used to set an intensity level above which all pixels are converted to white and below which all pixels are converted to black. Using such a quantization threshold to convert grayscale (or color) images to black-and-white images simplifies both the edge detection and the channel number comparison procedures.
  • the co ⁇ esponding procedure For edge detection (either for channel number detection in ROIs 306 and/or 316 or characterization of quiet area ROI 314), the co ⁇ esponding procedure identifies columns and/or rows of v pixels that change from black to white (or white to black depending on the polarity of the display used by the particular set-top box 104) as the image is scanned vertically and/or horizontally. Moreover, the OSCCD 112 may be given an optional polarity parameter to initialize the edge detection procedure with an expected, dominant background color (e.g., white or black) for a particular set-top box 104.
  • the co ⁇ esponding procedure for channel number comparison is discussed in greater detail below.
  • a single quantization threshold may not be sufficient to yield robust performance.
  • the difference in intensity between the displayed channel number 310 and the background 308 will depend on the intensity of the displayed program content that coincides with the first ROI 306.
  • the chaimel number 310 is represented using a light color (e.g., white)
  • coincident program content whose intensity is relatively light in the first ROI 306 may require a different quantization threshold than for the case of content whose intensity is dark in this region.
  • the example procedure 400 of FIG. 5 supports the use of multiple quantization thresholds as represented by block 409.
  • the quantization thresholds may be selected and used as follows. First, a baseline threshold is calibrated based on the display characteristics of the set-top box 104 and/or television 110. Many set-top boxes 104 and televisions 110 may be inte ⁇ ogated to provide a baseline (reference) grayscale value. Next, at each point in procedure 400 where an image is quantized to a black-and-white format, a first quantization attempt may be performed using the initial quantization threshold. If a positive result is achieved based on the quantized image (e.g., a number is detected in the case of ROIs 306 and/or 316 or an edge is detected in the case of ROI 314), then control passes to an appropriate subsequent point in the procedure.
  • a positive result is achieved based on the quantized image (e.g., a number is detected in the case of ROIs 306 and/or 316 or an edge is detected in the case of ROI 314)
  • a negative result is achieved, then another threshold is attempted. For example, additional thresholds may be determined relative to the initial threshold (e.g., that deviate from the initial threshold by +/- 4%, +/- 10%, etc.). Multiple attempts may be made to quantize the image until the set of quantization thresholds is exhausted, at which point control would follow the path co ⁇ esponding to a negative result at the respective point in the procedure 400.
  • additional thresholds may be determined relative to the initial threshold (e.g., that deviate from the initial threshold by +/- 4%, +/- 10%, etc.).
  • Multiple attempts may be made to quantize the image until the set of quantization thresholds is exhausted, at which point control would follow the path co ⁇ esponding to a negative result at the respective point in the procedure 400.
  • One having ordinary skill in the art will recognize that many techniques may be used to determine one or more quantization thresholds, of which the preceding is one such example.
  • FIG. 9 illustrates an example set of characteristics associated with ROI 700 of FIG. 8 that may be detected and/or examined to determine whether the displayed matter constitutes a channel number display.
  • the distance between an upper horizontal edge 802 and a lower horizontal edge 804 defines a character height 818 which may be compared to upper and/or lower expected character height thresholds when determining if on-screen channel numbers are present.
  • the distance between various vertical edges 805, 806, 808, 810, 812, 814 define character widths 824, 828, 832 which may be compared to upper and/or lower expected character width thresholds when determining if on-screen channel numbers are present.
  • the distance between vertical edges 805, 806, 808, 810, 812, 814 may be used to define the spacing 826, 830 between characters which may be compared to upper and/or lower expected character spacing thresholds when determining if on-screen channel numbers are present. Still further, the distance between edges may be used to define the centering characteristics 816, 820, 822, 834 of a displayed digit which may be compared to upper and/or lower expected character centering thresholds when determining if on-screen channel numbers are present. As will be appreciated by one having ordinary skill in the art, edge detection techniques may be used to identify the location of one or more edges and the distance between the edges may then be used to define the height, width, etc., of a numeric digit.
  • a number of pixels having the same color characteristic that are disposed adjacent to one another and that extend in a particular direction, such as horizontally, may be counted to determine the width of a numeric digit.
  • the number of adjacent, commonly colored pixels extending in a vertical direction may be counted to determine the height of a numeric digit.
  • the channel change detection process detects a channel number in the appropriate ROI (e.g., ROI 306) based on, for example, the characteristics described above, and ascertains that the displayed number does not co ⁇ espond to a banner surfing event
  • the process compares the detected channel number with the previous channel number (e.g., block 428 of FIG. 5). While many techniques may be used to perform this comparison, a prefened approach is based on computing the dot-product of the quantized image co ⁇ esponding to the ROI containing the cu ⁇ ent channel number with a stored reference image/template co ⁇ esponding to the previous channel number.
  • the ROI containing the cu ⁇ ent channel number is captured by the framegrabber 108 and converted (quantized) to a black-and-white image.
  • the stored reference image/template co ⁇ esponding to the previous channel number is also a black-and-white image that may co ⁇ espond to, for example, a previously captured ROI or an ideal representation of the stored number based on the characteristics of the set-top box 104 and/or television 110.
  • the dot- product is computed by multiplying co ⁇ esponding pixels of the quantized ROI image and the stored reference image/template to form an intermediate set of inner-products at each pixel location.
  • dotproduct ⁇ ⁇ T image(r, c) x template(r, c) r c
  • image(r,c) represents the value of the captured ROI image at the pixel location (r,c)
  • template(r,c) represents the value of the stored reference image/template at the pixel location (r,c)
  • the index (r,c) references the pixel location at the r th row and c ] column of the co ⁇ esponding image.
  • the inner-products will constructively add and the resulting dot-product will be a large positive value. Conversely, if the two images are dissimilar, the inner-products will destructively add and the resulting dot-product will be in the range of a small positive value to a large negative value.
  • a number of useful criteria may be used to compare the channel number of the captured ROI to the previous channel number represented by the stored reference image/template.
  • numpixels is the total number of pixels in an image, which is equal to the number of pixels in a row, R, multiplied by the number of pixels in a column, C.
  • R the number of pixels in a row
  • C the number of pixels in a column
  • criterion ratio of same pixels - ratio of different pixels where num same pixels denotes the number of pixel location for which the values of the captures ROI image and the stored template are the same and num diff pixels denotes the number of pixel location for which the values are different.
  • the quantity ratio of same pixels is equal to num same pixels divided by the total number of pixel locations (numpixels) and the quantity ratio of different pixels equals num diff pixels divided by numpixels.
  • the channel change detection process may use the number-equivalence criterion defined above to determine whether the channel number represented by the captured ROI image is substantially similar to or substantially different from the previous channel number represented by the stored reference image/template. For example, the process may determine that the numbers are substantially similar and, thus, no chaimel change has occu ⁇ ed if the criterion has a value >95%. If the criterion has a value ⁇ 95%, the process may determine that the numbers are substantially different and, thus, that a channel change has occuned.
  • the displayed content may be examined to determine whether it contains components representative of numeric digits.
  • the numeral one may be treated as a numeric digit having a single component comprising a set of adjacent, commonly colored/shaded pixels 950 extending vertically for a predefined number of pixel locations wherein the predefined number of pixel locations is representative of the expected height of a numeral one based on the height characteristics stored in the associated television or set-top box.
  • a numeral three may be treated as having three horizontally disposed components 954, 956, 958 and a single, vertically disposed component 952.
  • the OSCCD 112 may indicate that an on-screen channel number display has been detected. For example, the OSCCD 112 may compare the positions of one or more of a set of detected components to a set of stored component configurations co ⁇ esponding to the display of a numeric digit. If a match is identified, then the OSCCD 112 may indicate that an on-screen channel number display has been detected. The OSCCD 112 may further use information associated with the matching configuration to identify the value of the channel number being displayed.
  • the OSCCD 112 may not compare the anangement of the components relative to each other and/or relative to component configuration information stored in memory. Instead, the OSCCD 112 may merely examine the characteristics of the components and, provided that such components have a set of characteristics expected of a set of displayed numeric digit components, then the OSCCD 112 may identify such components as being indicative of an on-screen numeric digit display.
  • the channel change detection process such as the process 400 or 500, may be augmented to not only detect a channel change event but also identify the newly selected channel.
  • An example process 1000 for identifying a displayed channel number is shown in FIG. 11. Given the additional processing resources and time that may be needed to identify a channel number, the example process 1000 may execute in parallel as a background process to the foreground channel change detection processes 400 or 500. To accomplish this type of execution, the example channel identification process 1000 employs a queue to store pending channel number ROI images that are awaiting identification. Referring to FIG. 11, the example process 1000 includes two sub-processes 1002 and 1004 that execute in parallel (although the processes 1002 and 1004 could be configured to execute in a serial fashion as well). The purpose of the sub-process 1002 is to add channel number ROI images to the image queue. The purpose of the sub-process 1004 is to process ROI images stored in the image queue.
  • control begins at block 1004 where the OSCCD 112 determines whether a new channel number ROI image is available (e.g., from the output of example processes 400 or 500). If a new image is not available, control returns to block 1004 where the OSCCD 112 waits for a new image to become available. If, instead, a new image is available, then the OSCCD 112 examines the state of the image queue. If the image queue is not full (block 1006), then the OSCCD 112 adds the new channel number ROI image to the queue (block 1008). After the image is added to the queue, control returns to block 1004 where the OSCCD 112 waits for a new channel number ROI image to become available. However, if at block 1006 the OSCCD 112 determines that the queue is full, an e ⁇ or condition may be invoked causing the example process 1002 to exit.
  • a new channel number ROI image is available (e.g., from the output of example processes 400 or 500). If a new image is not available, control returns to block
  • control begins at block 1010 where the OSCCD 112 determines whether the image queue contains any channel number ROI images. If the queue is empty, control returns to block 1010 where the OSCCD 112 waits for an image to be added to the queue. If, instead, the queue is not empty, control proceeds to block 1012 where the OSCCD 112 gets the oldest image stored in the queue for the case where the queue has a first-in first-out (FIFO) configuration. A last-in first-out (LIFO) configuration may also be used depending on the particular application of the channel identification procedure.
  • FIFO first-in first-out
  • LIFO last-in first-out
  • the channel number image template is one of a set of templates co ⁇ esponding to a set of known channel numbers.
  • the OSCCD 112 compares the captured channel number ROI image with the template image (block 1016). If the two images do not match, control proceeds to block 1018 where the OSCCD 112 determines if another stored template is available. If another template is available, control returns to block 1014 where the OSCCD 112 gets this next template from memory and control proceeds as described above. If another template is not available (block 1018), the OSCCD 112 generates a report indicating that channel identification was unsuccessful. Control then returns to block 1010 and proceeds as described above.
  • the OSCCD 112 determines that the captured channel number ROI image matches the stored channel number image template (e.g., based on the dot-product computation and the number-equivalence criterion described above), then control proceeds to block 1022.
  • the OSCCD 112 generates a report that identifies the channel number in the captured ROI image as the channel number co ⁇ esponding to the matched template. Control may then return to block 1010 and proceed as described above, or control may optionally proceed to the set of blocks included in block 1024.
  • the processing performed by block 1024 may be used to modify the channel change event detection process (e.g., processes 400 or 500) by replacing a reference image based on a previously captured channel number image (e.g., as used in block 428 of FIG. 5) with a stored template having known characteristics. If block 1024 is enabled, then contiol proceeds from block 1022 as follows. After the channel number is identified based on the selected template (block 1022), contiol proceeds to block 1026 where the OSCCD 112 determines if the identified channel number is still being used as the reference channel number for the channel change event detection process (e.g., process 400 or 500).
  • the OSCCD 112 determines if the identified channel number is still being used as the reference channel number for the channel change event detection process (e.g., process 400 or 500).
  • the OSCCD 112 could examine the captured ROI image to determine whether it co ⁇ esponds to the captured reference channel number image being used to determine the occu ⁇ ence of a channel change event (e.g., based on a tag and/or header information included in the digital representation of each image). If the identified channel number is not being used (block 1028), then control returns to block 1010 and proceeds as described above. If, instead, the identified channel number is still active, then contiol proceeds to block 1028 where the OSCCD 112 determines whether a captured reference image or a stored template is being used as the reference channel number image. If a stored template is already in use (block 1028), then contiol returns to block 1010 and proceeds as described above. However, if a captured image is being used as the reference (block 1028), then the OSCCD 112 may replace the captured reference image with the co ⁇ esponding template determined at block 1022. Contiol then returns to block 1010 and proceeds as described above.
  • a captured image is being used as the
  • the channel identification process may be off-loaded to, for example, a companion processor or even the central processing facility 222 for processing.
  • the OSCCD 112 would transmit the captured ROI images to the companion processor (e.g., via the interface circuits 210) and/or the central processing facility 222 (e.g., via the network 218).
  • one or more of the ROIs, stored templates and/or reference characteristics may be modified to allow an OSCCD such as OSCCD 200 to detect changes in displayed letters/text and to also identify such letters/text.
  • OSCCD such as OSCCD 200
  • specific shapes/objects may be detected and/or identified based on the appropriate selection of ROIs, stored templates and reference characteristics.
  • An OSCCD such as OSCCD 200 may also be used as a front-end filter or gate for any number of image processing and/or recognition algorithms (such as an on-screen display reader for processing captured images co ⁇ esponding to received video frames).
  • the OSCCD 200 (and/or a process similar to the channel change detection processes 400 or 500) may be used to select only those images to process that contain desired content, such as specific numerals, letters, objects, etc.
  • the OSCCD 200 (or similar process) could be configured to detect the desired numerals, letters, objects, etc. based on the selection of appropriate ROIs, stored templates and reference characteristics.
  • FIG. 12A A block diagram of an example prior-art on-screen display reader (OSDR) system 1200 is illustrated in FIG. 12A.
  • the example OSDR system 1200 includes a framegrabber 1204 which may be substantially similar or identical to the framegrabber 108 of FIG. 1.
  • a video signal having, for example, a video frame rate of 30 frames/sec is provided as an input to the framegrabber 1204.
  • the framegrabber 1204 captures screenshots of the input video signal at a predetermined rate, such as, for example, one screenshot every 120 ms or, equivalently, a rate of 8.3 screenshots/sec.
  • the captured screenshots are provided to an OSDR 1208 for processing.
  • the OSDR 1208 analyzes each screenshot at the aforementioned predetermined screenshot rate to determine, for example, whether a given screenshot contains content of interest and, if so, processes the screenshot containing such content.
  • the processing performed by the OSDR 1208 on a first screenshot must be completed before the arrival of a second screenshot.
  • the OSDR 1208 may require significant processor resources to meet this real-time processing constraint.
  • FIG. 12B illustrates a block diagram of an example OSDR system 1250 that employs an OSCCD 1254 as a front-end filter.
  • the OSCCD 1254 may be substantially similar or identical to the OSCCD 112 of FIG. 1.
  • the example system 1250 includes the framegrabber 1204 and the OSDR 1208 discussed in connection with the example OSDR system 1200 of FIG. 12A.
  • the OSCCD 1254 processes the screenshots received from the framegrabber 1204 at the predetermined screenshot rate (e.g., one screenshot every 120 ms) before providing such screenshots to the OSDR 1208.
  • the OSCCD 1254 may be configured to analyze each input screenshot for content of interest and to provide only screenshots containing such content to the OSDR 1208.
  • the average rate at which screenshots are provided to the OSDR 1208 of the example system 1250 may be significantly reduced from the starting predetermined screenshot rate (e.g., significantly less than the starting rate of one screenshot every 120 ms).
  • the OSCCD 1254 may be configured to provide original and/or quantized (e.g., black-and-white) versions of the selected screenshots to the OSDR 1208 based on the requirements of a given application.
  • FIG. 13 illustrates example processing timelines for the example system 1200 of FIG. 12A and the example system 1250 of FIG. 12B.
  • the horizontal axis represents time and the vertical access represents the processor speed (e.g., measured in millions of instructions per second or MIPS) required to perform the respective processing in the indicated amount of time.
  • FIG. 13 A sequence of four (4) screenshots 1316, 1320, 1324, 1328 captured by the framegrabber 1204 of FIGS. 12A or 12B is shown in FIG. 13.
  • the processing timeline conesponding to the OSDR 1208 is represented by the timeline 1304.
  • the OSDR 1208 in FIG. 12A is configured to process each input screenshot and, as expected, the timeline 1304 shows three processing regions 1332, 1336 and 1340 conesponding to the screenshots 1316, 1320, and 1324, respectively. Due to the real-time processing constraints for the OSDR 1208 of FIG.
  • the OSDR 1208 may require significant processor resources (e.g., as indicated by the height of the processing regions 1332, 1336, 1340).
  • the processing timeline for an OSCCD, such as the OSCCD 1254 of FIG. 12B, to process each screenshot 1316, 1320, 1324 is represented by the timeline 1308.
  • the OSCCD 1254 may be configured to search for only specific objects (e.g., channel numbers) in black-and-white (binary) versions of the screenshots 1316, 1320, 1324.
  • the processing requirements for the OSCCD 1254 may be significantly less than those for the OSDR 1208 (e.g., as indicated by the reduced heights and widths of the OSCCD processing regions 1344, 1348, 1352 as compared to the OSDR processing regions 1332, 1336, 1340, respectively).
  • the processor timeline co ⁇ esponding to the example system 1250 of FIG. 12B is represented by the timeline 1312.
  • the OSCCD 1254 is configured to process each input screenshot 1316, 1320, 1324, etc., as indicated by the processing regions 1356, 1360 and 1364, respectively.
  • the screenshot 1316 contains content of interest, whereas the screenshots 1320 and 1324 do not.
  • the OSCCD 1354 may be used to select the screenshot 1316 for processing by the OSDR 1208 and to discard the screenshots 1320 and 1324.
  • the time required by the OSDR 1208 to process the screenshot 1316 may now be spread across the time associated with screenshots 1320 and 1324 as well.
  • the real-time constraints faced by the OSDR 1208 may still be met if the original processing region 1332 required by the OSDR 1208 in the system 1200 is spread over the processing regions 1368, 1372 and 1376 in the case of the OSDR 1208 in system 1250.
  • the OSDR 1208 as used in the system 1250 having the OSCCD 1254 front-end filter may have significantly lower processing requirements (e.g., as indicated by the reduced heights of the processing regions 1368, 1372, 1376) than the OSDR 1208 as used in the example system 1200.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Channel Selection Circuits, Automatic Tuning Circuits (AREA)

Abstract

L'invention concerne des procédés et un appareil permettant de détecter un événement de changement de chaîne de télévision. Un desdits procédés consiste à essayer de détecter un numéro de chaîne dans une première zone d'intérêt sur un instantané d'écran de télévision. Si le numéro de chaîne est détecté, le procédé consiste ensuite à essayer de détecter une bannière dans cet instantané. Si une bannière est détectée, le procédé consiste alors à enregistrer l'événement de changement de chaîne.
PCT/US2004/012272 2003-11-19 2004-04-19 Procedes et appareil de detection d'evenements de changement de chaine de television WO2005057322A2 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US52344403P 2003-11-19 2003-11-19
US60/523,444 2003-11-19

Publications (2)

Publication Number Publication Date
WO2005057322A2 true WO2005057322A2 (fr) 2005-06-23
WO2005057322A3 WO2005057322A3 (fr) 2007-07-05

Family

ID=34676581

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2004/012272 WO2005057322A2 (fr) 2003-11-19 2004-04-19 Procedes et appareil de detection d'evenements de changement de chaine de television

Country Status (1)

Country Link
WO (1) WO2005057322A2 (fr)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007149458A3 (fr) * 2006-06-20 2008-11-13 Nielsen Media Res Inc Procédé et dispositif de détection de sources de média sur écran
CN101950366A (zh) * 2010-09-10 2011-01-19 北京大学 一种台标检测和识别的方法
US8019162B2 (en) 2006-06-20 2011-09-13 The Nielsen Company (Us), Llc Methods and apparatus for detecting on-screen media sources
US8260055B2 (en) 2009-03-27 2012-09-04 The Nielsen Company (Us), Llc Methods and apparatus for identifying primary media content in a post-production media content presentation
EP1821240A3 (fr) * 2006-02-18 2012-09-26 Samsung Electronics Co., Ltd. Dispositif et procédé pour la détection d'informations de numéros de téléphone à partir d'une diffusion multimédia numérique dans un terminal de réception de diffusion multimédia numérique
EP2720469A1 (fr) 2012-10-10 2014-04-16 Samsung Electronics Co., Ltd Appareil d'affichage et son procédé de détection d'un événement de changement de canal
CN104301755A (zh) * 2013-07-19 2015-01-21 联想(北京)有限公司 一种电视信息获取方法、电视、后台服务器及系统
WO2018000699A1 (fr) * 2016-06-27 2018-01-04 乐视控股(北京)有限公司 Procédé et dispositif d'identification de canal de télévision, télévision et serveur
US10631044B2 (en) 2009-12-31 2020-04-21 The Nielsen Company (Us), Llc Methods and apparatus to detect commercial advertisements associated with media presentations

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5973750A (en) * 1996-05-11 1999-10-26 K.K. Video Research Television channel selection monitoring apparatus

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5973750A (en) * 1996-05-11 1999-10-26 K.K. Video Research Television channel selection monitoring apparatus

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1821240A3 (fr) * 2006-02-18 2012-09-26 Samsung Electronics Co., Ltd. Dispositif et procédé pour la détection d'informations de numéros de téléphone à partir d'une diffusion multimédia numérique dans un terminal de réception de diffusion multimédia numérique
US8019162B2 (en) 2006-06-20 2011-09-13 The Nielsen Company (Us), Llc Methods and apparatus for detecting on-screen media sources
CN101536513B (zh) * 2006-06-20 2012-01-11 尼尔森(美国)有限公司 用于检测屏上媒体源的方法和设备
WO2007149458A3 (fr) * 2006-06-20 2008-11-13 Nielsen Media Res Inc Procédé et dispositif de détection de sources de média sur écran
US8260055B2 (en) 2009-03-27 2012-09-04 The Nielsen Company (Us), Llc Methods and apparatus for identifying primary media content in a post-production media content presentation
US8917937B2 (en) 2009-03-27 2014-12-23 The Nielsen Company (Us), Llc Methods and apparatus for identifying primary media content in a post-production media content presentation
US10631044B2 (en) 2009-12-31 2020-04-21 The Nielsen Company (Us), Llc Methods and apparatus to detect commercial advertisements associated with media presentations
US11558659B2 (en) 2009-12-31 2023-01-17 The Nielsen Company (Us), Llc Methods and apparatus to detect commercial advertisements associated with media presentations
US11070871B2 (en) 2009-12-31 2021-07-20 The Nielsen Company (Us), Llc Methods and apparatus to detect commercial advertisements associated with media presentations
CN101950366A (zh) * 2010-09-10 2011-01-19 北京大学 一种台标检测和识别的方法
EP2720469A1 (fr) 2012-10-10 2014-04-16 Samsung Electronics Co., Ltd Appareil d'affichage et son procédé de détection d'un événement de changement de canal
CN104301755B (zh) * 2013-07-19 2017-11-03 联想(北京)有限公司 一种电视信息获取方法、电视、后台服务器及系统
CN104301755A (zh) * 2013-07-19 2015-01-21 联想(北京)有限公司 一种电视信息获取方法、电视、后台服务器及系统
WO2018000699A1 (fr) * 2016-06-27 2018-01-04 乐视控股(北京)有限公司 Procédé et dispositif d'identification de canal de télévision, télévision et serveur

Also Published As

Publication number Publication date
WO2005057322A3 (fr) 2007-07-05

Similar Documents

Publication Publication Date Title
US8019162B2 (en) Methods and apparatus for detecting on-screen media sources
US7643090B2 (en) Methods and apparatus to distinguish a signal originating from a local device from a broadcast signal
US11496231B2 (en) Methods and apparatus to detect a blank frame in a digital video broadcast signal
EP2244208B1 (fr) Procédés et appareil pour identifier un contenu de média primaire dans une présentation de contenu de média post-production
US7876381B2 (en) Telop collecting apparatus and telop collecting method
EP0720114B1 (fr) Méthode et appareil pour détecter et interpréter des sous-titres dans des signaux vidéo digitaux
US7712114B2 (en) Methods and apparatus to monitor audio/visual content from various sources
CA2654816C (fr) Procede et dispositif de detection de sources de media sur ecran
US20030091237A1 (en) Identification and evaluation of audience exposure to logos in a broadcast event
US20090009532A1 (en) Video content identification using ocr
JP5086393B2 (ja) 複数のコンテンツ・ウィンドウを含むマルチメディア・プレゼンテーションを監視する方法および装置
JP2010246161A (ja) ビデオデータストリーム内に配置されたコマーシャルを位置決めする装置及び方法
WO2005057322A2 (fr) Procedes et appareil de detection d'evenements de changement de chaine de television
CN107306342A (zh) 监视具有字幕的视听内容
KR100785963B1 (ko) 디지털 방송 수신기에서 사용자 시청 패턴에 따른오디오/비디오 처리장치 및 방법
CN101207743A (zh) 存储开放字幕信息的广播接收设备和方法
KR20040045837A (ko) 비디오 컨텐트로부터 이미지 추출
MXPA06007503A (es) Metodos y aparatos para distinguir una señal que se origina desde un dispositivo local de una señal de difusion
AU2012268871A1 (en) Methods and apparatus for identifying primary media content in a post-production media content presentation
Ortiz et al. Digital Recording of TV Broadcasting and Advertisement Detection.

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase in:

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

122 Ep: pct application non-entry in european phase