System and method for real-time whiteboard capture and processing
First Claim
1. A computer-implemented process for outputting whiteboard content, comprising the following process actions:
- inputting a sequence of image frames of content written on a whiteboard in real-time;
dividing each of said image frames into cells;
for each cell in each image frame,determining if there is a change in the cell image compared to a correspondingly located cell the immediately preceding image frame in said sequence of image frames;
whenever it is determined that there is a color change, setting a cell age to a prescribed minimum value, and if there is no change increasing cell age by a prescribed increment value;
determining if cell age is greater than a specified threshold value;
whenever the cell age is not greater than the threshold value, not processing said cell any further;
if said cell age is greater than the threshold value,computing the background color of the cell;
updating a whiteboard color model;
classifying each cell image as a foreground or whiteboard cell using said whiteboard color model;
whenever a cell image is classified as a foreground cell not processing that cell any further; and
whenever a cell image is classified as a whiteboard cell, outputting the cell image whenever it exhibits strokes not present in the correspondingly located cell in the preceding image frames or is missing strokes found in the preceding image frames in real-time.
2 Assignments
0 Petitions
Accused Products
Abstract
A system that captures both whiteboard content and audio signals of a meeting using a video camera and records or transmits them in real-time. The Real-Time Whiteboard Capture captures pen strokes on whiteboards in real time using an off-the-shelf video camera. Unlike many existing tools, the RTWCS does not instrument the pens or the whiteboard. It analyzes the sequence of captured video images in real time, classifies the pixels into whiteboard background, pen strokes and foreground objects (e.g., people in front of the whiteboard), and extracts newly written pen strokes. This allows the RTWCS to transmit whiteboard contents using very low bandwidth to remote meeting participants. Combined with other teleconferencing tools such as voice conference and application sharing, the RTWCS becomes a powerful tool to share ideas during online meetings.
-
Citations
30 Claims
-
1. A computer-implemented process for outputting whiteboard content, comprising the following process actions:
-
inputting a sequence of image frames of content written on a whiteboard in real-time; dividing each of said image frames into cells; for each cell in each image frame, determining if there is a change in the cell image compared to a correspondingly located cell the immediately preceding image frame in said sequence of image frames; whenever it is determined that there is a color change, setting a cell age to a prescribed minimum value, and if there is no change increasing cell age by a prescribed increment value; determining if cell age is greater than a specified threshold value; whenever the cell age is not greater than the threshold value, not processing said cell any further; if said cell age is greater than the threshold value, computing the background color of the cell; updating a whiteboard color model; classifying each cell image as a foreground or whiteboard cell using said whiteboard color model; whenever a cell image is classified as a foreground cell not processing that cell any further; and whenever a cell image is classified as a whiteboard cell, outputting the cell image whenever it exhibits strokes not present in the correspondingly located cell in the preceding image frames or is missing strokes found in the preceding image frames in real-time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A computer-readable medium having computer-executable instructions for transferring whiteboard content captured during a meeting in real-time, said computer executable instructions comprising program modules for:
-
capturing a sequence of images of content written on a non-electronic whiteboard in Bayer color format; recording audio signals correlated with the sequence of images; and analyzing the sequence of images to transmit said images of the whiteboard and audio signals to at least one remote meeting participant by; dividing each of said image frames into cells of cell images; determining if there is a change in the cell image compared to a correspondingly located cell the immediately preceding image frame in said sequence of image frames; whenever it is determined that there is a color change, setting a cell age to a prescribed minimum value, and if there is no change increasing cell age by a prescribed increment value; determining if cell age is greater than a specified threshold value; whenever the cell age is not greater than the threshold value, not processing said cell any further; if said cell age is greater than the threshold value, computing the background color of the cell; updating a whiteboard color model; classifying each cell image as a foreground or whiteboard cell using said whiteboard color model; whenever a cell image is classified as a foreground cell not processing that cell any further; and whenever a cell image is classified as a whiteboard cell, outputting the cell image whenever it exhibits strokes not present in the correspondingly located cell in the preceding image frames or is missing strokes found in the preceding image frames in real-time. - View Dependent Claims (26, 27, 28, 29)
-
-
30. A computer-implemented process for creating an enhanced data stream content written on a piece of paper, comprising the following process actions:
-
inputting a sequence of image frames of content written on the document in real-time; dividing each of said image frames into cells of cell images; for each cell location in each image frame, determining if there is a change in said cell image from the cell in the same location in the previous image frame in said sequence of image frames; if there is a change, setting cell age to a minimum value, and if there is no changes increasing cell age by a prescribed value; determining if cell age is greater than a specified value; if cell age is not greater than a specified value, not processing said cell further for said image frame; if said cell age is greater than a specified value, computing the background color of the cell; updating a document color model; classifying cell images into foreground or document cells using said document color model; if a cell image is classified as a foreground cell not processing that cell any further for that input image frame; and if a cell image is not classified as a foreground cell, outputting any cell image frames with newly appeared strokes or newly deleted strokes in real-time.
-
Specification