×

Video actuated interactive environment

  • US 7,775,883 B2
  • Filed: 11/05/2003
  • Issued: 08/17/2010
  • Est. Priority Date: 11/05/2002
  • Status: Active Grant
First Claim
Patent Images

1. A video-actuated system for creating an interactive environment on an interaction surface for a participant, comprising:

  • at least one energy source capable of generating electromagnetic energy in a relatively limited wavelength range, wherein the at least one energy source is positioned such that the energy from the at least one energy source strikes at least a portion of the interaction surface;

    at least one electromagnetic imaging device, wherein the at least one electromagnetic imaging device is capable of detecting electromagnetic energy in at least the relatively limited wavelength range generated by the at least one energy source and converting the detected energy into an output video signal including a plurality of frames, and wherein the at least one electromagnetic imaging device is positioned such that the at least one electromagnetic imaging device can detect the electromagnetic energy from at least a portion of the interaction surface;

    at least one visible light projector having at least one input, wherein the at least one projector is capable of projecting visible light onto the interaction surface;

    at least one computer; and

    at least one computer program process operating on the at least one computer, capable of receiving the output video signal from the electromagnetic imaging device, detecting blobs of infrared energy within the output signal by scanning each pixel in each frame of the output signal and setting pixel intensity in each frame to zero for each pixel having an intensity less that a predetermined threshold, reporting information about the blobs, processing the blob information, and generating an input to the at least one visible light projector based on the processed blob information, wherein the blob information includes coordinates of a bounding box for each blob, determined by;

    setting each pixel at or above the threshold as a blob pixel and each pixel below the threshold as a zeroed pixel,determining a top and bottom edge of each blob by selecting a first blob pixel, moving up and down a frame one row at a time in a same column as the selected first blob pixel until a zeroed pixel is encountered, and saving coordinates of each last encountered blob pixel in the same column;

    calculating and saving coordinates of a vertical mid-point pixel between the coordinates of the last encountered blob pixels in the same column;

    setting the vertical mid-point pixel as a next blob pixel;

    determining a right and left edge of each blob by moving left and right in the frame one column at a time in the same row as the next blob pixel until a zeroed pixel is encountered, and saving coordinates of the last encountered blob pixels in the same row;

    calculating and saving coordinates of a horizontal mid-point pixel between the coordinates of the last encountered blob pixels in the same row;

    determining a top and bottom edge of the blob by moving up and down the frame one row at a time in the same column as the horizontal midpoint pixel until a zeroed pixel is encountered, and saving the coordinates of the last encountered blob pixels in that column; and

    calculating and saving the bounding box coordinates of each blob from an intersection of a vertical line through the horizontal midpoints and a horizontal line through the vertical midpoints as above determined.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×