Claims
- 1. A computer readable medium for use by a computer in providing an interface to multiple cameras accessible to the computer via a network, comprising:
a digital storage device; a user interface program stored on said digital storage device in computer readable form, said program being operable upon execution by the computer to access camera data uniquely identifying the cameras and to attempt access to the cameras over the network using the camera data; wherein said program is further operable to verify access to those ones of the cameras that are accessible over the network and to generate a user interface display on the computer that includes a display window for each of the cameras accessed over the network and to display in each of the display windows an image received from the camera associated with that display window.
- 2. A computer readable medium as defined in claim 1, wherein said program is operable to sequentially access each of the cameras that are accessible over the network and is further operable to update the image displayed in the window associated with each accessed camera using an updated image received from that camera.
- 3. A computer readable medium as defined in claim 2, wherein said program is operable to sequentially update the display windows using the updated images received from the cameras associated with those windows.
- 4. A computer readable medium as defined in claim 3, wherein said program is operable to sequentially highlight each display window as it is being updated.
- 5. A computer readable medium as defined in claim 1, wherein said program is operable to sequentially poll each of the cameras that are accessible over the network and to update the display window associated with a polled camera using an updated image received from the polled camera.
- 6. A computer readable medium as defined in claim 1, wherein said program is operable to scale the images received according to the number of display windows contained in the user interface display.
- 7. A computer readable medium as defined in claim 1, wherein said program is operable to permit a user of the computer to select the number of display windows included in the user interface display.
- 8. A computer readable medium as defined in claim 1, wherein said program is operable to receive the images as image files in which the images are represented using a graphic file format.
- 9. A computer readable medium as defined in claim 8, wherein said program includes a compression library and is operable to compress the size of the image files using said compression library.
- 10. A computer readable medium as defined in claim 9, wherein said program is operable to permit a user of the computer to select a level of compression used by said compression library.
- 11. A computer readable medium as defined in claim 1, wherein said program is operable to monitor the network for a trigger event generated by one of the cameras.
- 12. A computer readable medium as defined in claim 11, wherein said program is operable to send control instructions to a selected one of the cameras defining conditions under which the trigger event is generated by the selected camera.
- 13. A computer readable medium as defined in claim 1, wherein said program is operable to open a connection to a selected one of the cameras using a network protocol supported by the network and to initiate streaming of images from the selected camera, and wherein said program is operable to periodically pause and resume the streaming of images from the selected camera to thereby control the frame rate of images received from the selected camera.
- 14. A computer readable medium as defined in claim 13, wherein said program is operable to pause the streaming of images temporarily following each received image from the selected camera.
- 15. A computer readable medium as defined in claim 13, wherein said program is operable to pause the streaming of images during which time it accesses images from one or more other cameras.
- 16. A computer readable medium as defined in claim 13, wherein said program is operable to open a connection to a plurality of selected cameras using the network protocol and to initiate streaming of images from each of the selected cameras, and wherein the program is operable to sequentially cycle through each of the selected cameras, obtaining one or more of the streamed images from one selected camera, pausing the streaming from that selected camera, and then obtaining one or more streamed images from a next one of the selected cameras until all of the plurality of selected cameras have been accessed and paused and thereafter repeating the cycle one or more times for the selected cameras.
- 17. A computer readable medium as defined in claim 13, wherein the network is an Ethernet network and the network protocol is TCP/IP.
- 18. A computer readable medium as defined in claim 1, wherein said program is operable to launch a separate process that is itself operable to open a connection to a selected one of the cameras using a network protocol supported by the network and to initiate streaming of images from the selected camera.
- 19. A computer readable medium as defined in claim 1, wherein said program is operable to access a plurality of remote cameras via a video server connected between the remote cameras and the network.
- 20. A computer readable medium as defined in claim 1, wherein said program is operable to store images received from a selected one of the cameras in a hierarchical directory structure on a digital storage device, with the images being stored within a subdirectory located below a directory unique to the camera from which the images being stored originated, and wherein the subdirectory is identified according to date information that relates to when the image was stored.
- 21. A computer readable medium as defined in claim 1, wherein said program is operable to record sequences of individual images received by the computer from one or more of the cameras, with the individual images being stored together in a single file.
- 22. A computer readable medium as defined in claim 21, wherein said program is operable to build the single file by concatenating each image onto the end of the file upon receipt of the image by the computer.
- 23. A computer readable medium as defined in claim 22, wherein said program is operable to index the images within the single file and store the index as a separate index file.
- 24. A computer readable medium as defined in claim 22, further comprising an image viewer program that is operable to index the images within the single file.
- 25. A computer readable medium as defined in claim 24, wherein said image viewer program is operable to generate the index as a set of pointers to start-of-image and end-of-image markers contained within the single file.
- 26. A computer readable medium as defined in claim 24, wherein said image viewer program is operable upon user selection of the single file to use the index to locate individual images within said single file.
- 27. A computer readable medium as defined in claim 1, wherein said program is operable to detect motion in a sequence of images received by a camera by processing color component information contained in the images.
- 28. A computer readable medium as defined in claim 27, wherein said program is operable to store a first image from the sequence as a reference image and to compare color component values for pixels from one or more subsequent images in the sequence to the color component values of corresponding pixels in the reference image.
- 29. A computer readable medium as defined in claim 28, wherein said program is operable to maintain a count of the number of pixels for which the difference in color component values for corresponding pixels from the reference and selected images differ by more than the preselected amount.
- 30. A computer readable medium as defined in claim 1, wherein said program is operable in response to user selection of a display window to display a form that permits the user to initiate recording of images from the camera associated with that display window.
- 31. A computer readable medium for use by a computer in detecting motion in a sequence of color video images received by the computer, comprising:
a digital storage device; a program stored on said digital storage device in computer readable form, said program being operable upon execution by the computer to select one of the video images as a reference image and another of the video images as a selected image to be compared to the reference image; wherein said program is operable to access a color component value for each of a number of pixels from the reference image and for each of a number of corresponding pixels from the selected image, with said program being operable to perform pixel comparisons using the color component values and to generate a motion detect signal when the difference in color component values for corresponding pixels from the reference and selected images differ by more than a preselected amount.
- 32. A computer readable medium as defined in claim 31, wherein said program is operable to generate the motion detect signal only if more than a predetermined number of corresponding pixels from the reference and selected images have color component values that differ by more than the preselected amount.
- 33. A computer readable medium as defined in claim 31, wherein said program is operable during comparison of the selected and reference images to maintain a count of the number of pixels for which the difference in color component values for corresponding pixels from the reference and selected images differ by more than the preselected amount.
- 34. A computer readable medium as defined in claim 33, wherein said program is operable to generate the motion detect signal when the count exceeds a predetermined number.
- 35. A computer readable medium as defined in claim 34, wherein said program is operable to permit user selection of the predetermined number.
- 36. A computer readable medium as defined in claim 33, wherein each pixel has a plurality of different color component values associated therewith and wherein said program is operable to maintain a separate counter for each of the different color component values and to increment the counter associated with a particular color component value if that color component value for a pixel from the selected image differs from that same color component value for the corresponding pixel from the reference image by more than a preselected offset associated with that color component.
- 37. A computer readable medium as defined in claim 36, wherein said program is operable to generate the motion detect signal when, for each of the counters, the count stored in that counter exceeds a predetermined minimum count associated with the color component value associated with that counter.
- 38. A computer readable medium as defined in claim 37, wherein the different color component values comprise RGB component values, each of which has its own offset and minimum count.
- 39. A computer readable medium as defined in claim 38, wherein said program is operable to permit user selection of the offsets and minimum counts for each of the RGB component values.
- 40. A computer readable medium as defined in claim 31, wherein said program is operable during receipt of the video images by the computer to compare the video images with the reference image as those video images are received by the computer, whereby said program provides real time motion detection processing of the received images.
- 41. A computer readable medium as defined in claim 40, wherein said program is operable to periodically select a new reference image from the video images being received by the computer.
- 42. A computer readable medium as defined in claim 31, wherein said program is operable to perform the pixel comparisons only for those pixels located within a region of the reference and selected images.
- 43. A computer readable medium as defined in claim 42, wherein said program is operable to permit a user to specify the region using a mask.
- 44. A computer readable medium as defined in claim 43, wherein said program is operable to provide a display window containing one of the images and to enable the user to create the mask by erasing a portion of the image contained in the display window.
- 45. A computer readable medium as defined in claim 31, wherein said program is operable to begin recording of the video images in response to the motion detect signal.
- 46. A computer readable medium as defined in claim 45, wherein said program is operable to continue the comparison of the reference image with selected images during recording of the video images.
- 47. A computer readable medium as defined in claim 46, wherein said program is operable to stop recording after no further motion is detected using the pixel comparisons.
- 48. A computer readable medium as defined in claim 47, wherein said program is operable to stop recording after no further motion is detected and a specified number of extra images have been recorded.
- 49. A computer readable medium as defined in claim 45, wherein said program is operable to concatenate the video images and store them in a single file.
- 50. A computer readable medium for use by a computer in recording a sequence of images, each of which comprises an individual image file in which the image is represented in a graphics file format that includes a first marker identifying the start of the image and a second marker identifying the end of the image, comprising:
a digital storage device; a program stored on said digital storage device in computer readable form, said program being operable to store the images together as a single file that comprises the images concatentated together in sequential order; wherein said program is further operable to index the file using the first and second markers.
- 51. A computer readable memory as defined in claim 50, wherein said single file comprises a digital video file and said program is operable to store a plurality of digital video files on the data storage device.
- 52. A computer readable memory as defined in claim 51, wherein said program is operable to automatically index the digital video files on a periodic basis.
- 53. A computer readable memory as defined in claim 50, wherein said program comprises an image viewer program that is operable upon user selection of the single file to use the index to locate individual images within said single file.
- 54. A computer readable memory as defined in claim 53, wherein said program is operable to display the individual images on the computer.
- 55. A computer readable memory as defined in claim 53, wherein said program is operable upon user selection of the single file to search for the index and, if not fouid, is further operable to create the index.
- 56. A computer readable memory as defined in claim 50, wherein said program is operable to store the images into the single file using a start of image marker and an end of image marker for each image in the file.
- 57. A computer readable memory as defined in claim 56, wherein the markers for each image within the file are stored at particular memory locations and wherein said program is operable to generate the index as a set of pointers identifying the memory locations of at least some of the markers.
- 58. A computer readable memory as defined in claim 57, wherein the individual images comprise jpg images concatenated together into the single file.
- 59. A digital video system, comprising:
a client computer, one or more video servers accessible by the client computer over a network; a plurality of cameras connected to the video server(s), said video server(s) providing an interface between the cameras and client computer in which images from the cameras are accessed by the video server(s) and then sent to the client computer upon request by the client computer; wherein the client computer provides a user interface display on the computer that includes a display window for each of the cameras accessed over the network and that displays in each of the display windows an image received from the camera associated with that display window.
- 60. The digital video system of claim 59, wherein the one or more video servers comprises a plurality of video servers.
- 61. The digital video system of claim 60, wherein one of the cameras includes one of the video servers incorporated therein, whereby that camera comprises a camera server.
- 62. The digital video system of claim 59, wherein the one or more video servers includes a multi-camera video server connected to at least two of the cameras.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application claims the priority of U.S. Provisional Application Ser. No. 60/189,162, filed Mar. 14, 2000.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60189162 |
Mar 2000 |
US |