Method and apparatus for providing subimages to remote sites

Subimages are provided to remote sites by an image access system having an image sensor for sensing an image, and an image processing system for generating subimages from the sensed image. Users at a plurality of remotes sites can access the image access system, and can select a portion of the sensed image that they wish to view. The image sensor can be a sensor array for viewing a field of interest, and the users at the remote sites can pan and zoom electronically through the sensed image to select the subimage that they wish to view.

FIELD OF THE INVENTION

The present invention relates to providing images to remote sites. More particularly, the present invention relates to a method of and an apparatus for providing differing subimages of a sensed image to remote sites.

BACKGROUND

Transmission of images to remotes sites is known. One application for transmitting images to remote sites is a security system, in which one or more cameras are connected to a central station for monitoring.

Conventional security systems typically employ one or more cameras pointed at a particular field of interest, with a plurality of monitors in the central station being used to view the images from the cameras. The cameras are mounted on pan and tilt mechanisms, which allow security personnel to change the field of view of the cameras in order to view a particular field of interest.

While conventional security systems are useful in observing a desired field of interest, they require mechanical pan and tilt mechanisms to change the field of view of the cameras. In addition, if multiple personnel are viewing an image from a camera, only one person can control the field of view to be observed.

Another conventional method for transmitting images to remote sites is utilized in web-based applications. In the conventional method, persons accessing an image database or a live feed from a remote web server download images from the remote web server.

Web-based applications that operate in the above manner are inefficient in that a user at a remote site may only be interested in a portion of the image generally available from the web server, while the entire image is transmitted to the user. The transmission resources of the data path between the remote site and the web server are therefore wasted by transmitting image data that the user has no desire to view.

Therefore, a need exists for a method of providing images to remote sites that allows users at remote sites to independently view desired images, without wasting transmission resources.

SUMMARY OF THE INVENTION

The present invention overcomes the shortcomings of the conventional art and may achieve other advantages not contemplated by the conventional art.

According to a first aspect of the invention, an image access system includes an image sensor for sensing an image, and an image processing system operably coupled to the image sensor for receiving image data from the image sensor, and for generating and transmitting portions of the sensed image to remote sites. The portions of the sensed image are referred to as a “subimages” of the sensed image. The subimages are selected by users at the remotes sites.

According to a second aspect of the invention, a method of providing subimages to remote sites includes sensing an image of a scene, establishing a connection with remote sites, transmitting the sensed image to the remote sites, receiving selections of subimages of the sensed image to be viewed by the users at the remote sites, and transmitting the subimages to the remote sites.

According to the above aspects of the invention, an image access system can sense an image from a field of interest, and remote sites can access the image access system to view selected subimages from the sensed image. Further, because the users at the remote sites electronically select subimages from the sensed image, the image sensor does not need to be movably mounted to scan the field of interest.

As a further advantage, each remote site can select a subimage from the sensed image independent from the other remote sites.

A still further advantage results from transmitting selected subimages to remote sites, rather than the entire sensed image. Transmitting only the portion of the sensed image of interest to the user at the remote site conserves data path resources between the remote site and the image access system.

Other aspects and advantages of embodiments of the invention will be discussed with reference to the figures and to the detailed description of preferred embodiments.

DETAILED DESCRIPTION

An apparatus and a method for providing subimages to remote sites according to the present invention will be described below by way of preferred embodiments and with reference to the accompanying drawings.

FIG. 1is a schematic view of an image access system10according to an embodiment of the invention. The image access system10comprises optics12, an image sensor14disposed to sense images from a scene5through the optics12, an image processing system16for generating and transmitting subimages using image data from the image sensor14, and an input/output (I/O) device26.

The image processing system16includes an access control24that performs general management functions for the image access device10. The access control24is coupled to the I/O device26to receive requests from remote sites40, and is coupled to a sensor control18, a frame buffer20, and a processor22, to control the transmission of images to the remote sites40. The I/O device26is coupled to the remote sites40through a connection medium30. The sensor control18is coupled to the image sensor14for receiving image data, and coupled to the frame buffer20to transmit selected images to the frame buffer20. The frame buffer20is coupled to the processor22to transmit images to the processor22for formatting before transmission to the I/O device26.

The general functions of the elements of the image access device10will be discussed below with reference toFIGS. 1 and 2. A remote site40establishes a connection with the image access system10through the I/O device26. The I/O device26transmits the request for connection to the access control24, where the access control24determines characteristics of the remote site40. The access control24instructs the sensor control18to provide an image of the scene5sensed by the image sensor14to the remote site40. The sensor control18transmits the sensed image to the frame buffer20, and the sensed image is then transmitted to the processor22for formatting. The formatted sensed image is transmitted to the remote site40via the I/O device26and the connection medium30, and the remote site40displays the sensed image50(FIG. 2). The user at the remote site40selects a subimage52of the sensed image50, and transmits a request to view the subimage52to the access control24via the connection medium30and the I/O device26. The access control24instructs the sensor control18to obtain the image data of the subimage, and to transmit it to the remote site40, where the subimage52is displayed.

Referring toFIG. 2, a user at a remote site40can select the subimage52from the sensed image50, while another user at another remote site40can select a subimage54,56, or any other subimage, from the sensed image50. Any subimage may be transmitted to one or more of the remote sites40. For the purposes of this specification, the term “subimage” is intended to indicate a particular portion of a sensed image, rather than a single, static frame of an image. Both the sensed image and subimages may be transmitted to remotes sites as a series of frames. Once the user has chosen a subimage from the sensed image50, the image access device10may provide updated, or refreshed, frames of the subimage, as the image sensor14senses sequential frames of the sensed image50. A user at a remote site40can therefore view a sensed image or a subimage in real time. While viewing, for example, the subimage52, the user can also select a new subimage54,56, or any other subimage, from the sensed image50.

InFIG. 1, three remote sites40are shown for illustrative purposes, and it is within the scope of the invention for the image access system10to provide subimages to any number of remote sites40. A remote site40can be any site capable of displaying image data and capable of transmitting data over the connection medium30.

According to the embodiment illustrated byFIG. 1, the image sensor14may include a relatively high resolution, wide field of view sensor array. In general, the image sensor14may be directed towards a field of view containing the scene5to be observed. By accessing the image access system10, users at the remote sites40can either view a sensed image of the entire scene5, or they may view subimages of the sensed image. A wide field of view sensor14is particularly desirable in applications such as, for example, an area security system, where a large area must be monitored. Other applications, such as monitoring large outdoor events (parades, etc.), classrooms, or similar environments, may also require a wide field of view sensor. In general, the field of view of the image sensor14can be tailored to accommodate the activity or area to be monitored.

Because the image sensor14may be of relatively high resolution, users at the remote sites40can observe a wide field of view, and can select subimages from the sensed image that are of satisfactory resolution. A further advantage is that by observing a wide field of view, there is no need for mechanical steering servomechanisms to steer the image sensor14. Instead, a user at a remote site40can pan and zoom electronically through the sensed image, and select a desired subimage without mechanical movement of the image sensor14.

The image sensor14may alternatively have a relatively small field of view. A small field of view may be desirable for observing, for example, medical procedures, astronomical images, presentations of data, and other activities or regions where the field of interest is relatively small. In these types of applications, the field of view of the image sensor14may be tailored to the size of the activity observed, and the resolution of the image sensor14may also be tailored so that a desired degree of resolution may be obtained for subimages transmitted to the remote sites40.

The image sensor14can comprise any sensor array capable of receiving energy reflected from or emitted by an image5. For example, the image sensor could be an optical sensor, such as a charge coupled device (CCD), or a CMOS imaging array, and may, for example, be incorporated into a camera. For some applications, such as in a telescope used for astronomical observation, the image sensor14could be a radio frequency or ultraviolet sensor array. An infrared sensor may also be used for applications such as security devices, where night vision may be required.

The resolution of the image sensor14is dependent upon the degree of resolution required by the users at the remote sites40. For example, for viewing a surgical procedure, it may be desirable to use a CCD camera having a relatively narrow field of view, which may be, for example, between 1 and 20 degrees, and having a CCD sensor array with a resolution of between, for example, 10,000 and 100,000 pixels per inch.

It may also be desirable to utilize a high resolution image sensor14to observe a large field of view. This application may be required for monitoring outdoor events or other large gatherings in which it may be necessary to focus on specific locations, objects, or persons. If a sufficiently large field of view is to be monitored, the image sensor14can be constructed of a plurality of sensor arrays arranged in a tiled fashion so as to constitute a single image sensor14. The image data from the individual arrays may be formatted as a single sensed image at the sensor control18. If an array of tiled sensor arrays is used to form the image sensor14, the natural demarcations between the tiled arrays can be presented to the users at the remote sites40as a dividing line between predetermined subimages. Alternatively, users may be allowed to select any desired subimage from the sensed image.

In applications such as the use of the image access system10in conjunction with a telescope for astronomical observation, the field of view for the image sensor14may be relatively narrow, on the order of, for example, 1 to 30 seconds of arc. It would also be desirable to use a relatively high resolution sensor array in the image sensor14, which may be on the order of, for example, between 10,000 and 100,000 pixels per inch. The field of view of the image sensor14, as modified by the optics12, is selected such that the image sensor14does not require mechanical steering in order to observe a region of interest, while allowing users at remote sites40to observe subimages within the field of view.

The image sensor14can include a controller for an iris for the image sensor's sensor array, a focus and aperture control, control functions for scanning rate, active gain control, and refresh rate, and other standard array control functions.

The optics12may be any lens arrangement suitable for modifying images.

Examples of lens arrangements providing a wide field of view include wide angle lenses, and fish eye lenses. If the optics12includes a “fish eye”, or some other wide field of view lens utilizing distortion, a wider field of view can be observed by the image sensor14. A distortion compensation algorithm or a correction table may be applied to the image data of the sensed image to compensate for distortion from a lens with distortion. If a wide field of view lens is utilized in the optics12, it is preferable to increase the resolution of the image sensor14, so that users at the remote sites40have access to subimages of sufficient resolution.

The sensor control18is coupled to the image sensor14to receive image data of a sensed image from the image sensor14, and to provide image data of either a sensed image or a subimage to the processor22. The sensor control18may be, for example, a control processor utilizing routines such as array access and control routines. The image sensor14transmits the sensed image to the sensor control18in, for example, analog format. The sensor control18can include, for example, a graphics processing system, for converting the image data from the image sensor14into, for example, byte serial digit format, for transmission to the processor22. The sensor control18is responsive to the access control24to obtain data for either a sensed image or a selected subimage for transmission to the processor22, and for eventual transmission to a remote site40on a channel assigned to the remote site40. The sensor control18is illustrated in further detail inFIG. 3.

FIG. 3is a schematic view of the sensor control18. The sensor control18comprises a buffer32for storing image data from the image sensor14, and an image data allocator34for allocating image data to channels1–n. The sensor control18is responsive to requests for specific subimages, and other requests, from the remote sites40, as communicated by the access control24.

The buffer32can include at least n parallel buffers, a buffer corresponding to each of the n channels for communicating images to the remote sites40. Therefore, when the user at a remote site40requests to view a subimage, the access control24transmits the request to the sensor control18, the sensor control18selects the image data (or, more specifically, “subimage data”) corresponding to the subimage from one of the n buffers, and transmits it to the frame buffer20via a channel assigned to the remote site40. The access control24interprets the user's request for a particular subimage as a location of the sensed image, and transmits this location to the sensor control18. The location describing the subimage may be described in terms of, for example, row and column values on the image sensor14. The sensor control18can select the appropriate data using, for example, a block of pixels between two pairs of diagonally opposed coordinates.

Alternatively, the buffer32can include a buffer having multiple ports, from which the image data allocator34can draw the subimage data of requested subimages, and transmit each subimage on its appropriate channel to the frame buffer20, for eventual transmission to the requesting remote sites40.

The characteristics of the n channels, which can be described in terms of, for example, bandwidth, update rate, and image optimization characteristics such as real time capability, high resolution capability, update rate, and color depth, may vary. Channels may be configured to allow multiple remote sites40to be assigned to one channel, by, for example, multiplexing. The access control24may assign multiple remote sites40to a single channel if the transmission requirements for the remote sites40can be accommodated by the channel.

The access control24is responsible for receiving requests from the remote sites40, determining whether the remote sites40are authorized to access the image access system10, assigning priority levels to the remote sites40, assigning channels to the remote sites40, and performing other management functions such as determining a level of exclusivity of the remote sites40. The access control24can include, for example, access and security verification and control routines. The access control24may include one or more input ports that are coupled to the I/O device26, to receive communications from the remote sites40.

The access control24can include one or more authorization routines, such as password or biometric verification. When a remote site40accesses the image access system10through the connection medium30, the user at the remote site40may be asked to provide a user ID, an access code, or other identifying data, before being provided access to the sensed image or other options available from the image access system10.

The access control24may also include one or more priority routines. Using the priority routines, the access control24can allocate resources of the image access system10according to a level of priority assigned to a particular remote site40. For example, the image access system10may be provided to certain users at remote sites40for a fee, and the fee may vary according to a desired level of service. Alternatively, certain users, such as government agencies, may be afforded a high priority level based upon, for example, emergency status, national security, and other factors affecting the public interest. The priority routines allow the access control24to assign resources, such as preference in being assigned a channel, channel bandwidth, refresh rate, and other variables, according to the priority level of the remote site40.

The image access system10can transmit subimages on a finite number of channels. Therefore, during periods of particularly high demand, certain remote sites40may be denied access to a desired subimage because a channel is not available for use. Alternatively, the remote site40may be given the option to view a subimage currently being viewed at another remote site40that has been assigned a channel. A remote site40may elect to “share” another remote site's image data if, for example, the subimage transmitted to the other remote site40is of interest to the user at the remote site40that was denied a channel assignment. If a user at a remote site40does not wish for another user to view his subimage selection, the user may request of the access control24that her assigned channel not be shared with other remote sites40. This “exclusivity” option can be available based upon, for example, priority level, or, exclusivity may be made generally available to all remote sites40.

A user at a remote site40may also elect to specifically identify his subimage selection by his user ID, by name, or by some other identifying indicia. This feature would allow other users, such as students, to view the subimages selected by the identified user. To facilitate viewing of an identified user's subimages, the access control24can provide a prompt or a menu allowing users at remote sites40to select among identified users.

Depending upon the nature of the sensed image, the access control24can also restrict certain remote sites40to certain regions of the sensed image, and may allow the remote sites40to view subimages only from authorized portions of the sensed image.

The frame buffer20temporarily stores subimages transmitted on the n channels for eventual transmission to the processor22. The frame buffer20can comprise a plurality of parallel buffers, each buffer being assigned to a particular channel. Alternatively, the frame buffer20can be one or more buffers, with the frame buffer20having at least n ports for transmitting subimages on the n channels. The access control24is coupled to the frame buffer20to control the transmission of subimages to the processor22. The frame buffer20may also perform some formatting of subimages, such as scaling and normalization.

The processor22receives subimages from the frame buffer20and formats them for transmission to the remote sites40via the I/O device26and the connection medium30. The processor22may have MPEG encoding functionality for scaling, compressing, and performing other tasks on the subimages so that they are suitable for use by the remote sites40. After formatting the subimages, the processor22transmits the subimages to the I/O device26, where the subimages are subsequently transmitted to the connection medium30.

The elements comprising the image processing system16are all illustrated as individual elements for the purposes of illustration. However, one or more of these elements can comprise routines or instructions stored on and executable by, for example, a central processing unit or units of the image processing system16. The terms “transmit,” “transmission,” and variations thereof, are used broadly in this specification to generally describe the passage of data, and are not specifically intended to require the passage of data through a cable, the airwaves, or any other specific medium.

The image access system10is adapted to transmit images through a variety of connection media. For example, the connection medium30may be the Internet, an intranet, a direct cable connection, a satellite network, or other media for connecting remote sites.

A method of providing images using the image access system10will now be discussed with reference toFIGS. 4 and 5. In the discussion below, the method describes providing images to a single remote site40. It is to be understood that the image access system10can simultaneously provide images to a plurality of remote sites40.

In Step S8, the image access system10senses an image of the scene5using the image sensor14. The sensed image can be a static image, or, it may constitute a series of frames of the scene. As long as the image access system10is operating, the image sensor14can substantially continuously sense images from the scene5.

In step S10, a remote site40transmits a request to connect to the image access system10via the connection medium30. If the connection medium30is the Internet, the request may be transmitted by, for example, entering a universal resource locator (URL) address for the image access system10. The I/O device26transmits the remote site40request to the access control24, and the access control24determines whether the remote site40is authorized to access the image access system10in step S12. The access control24can establish remote site authorization by, for example, requesting a user name and/or password from the remote site40.

If the remote site40cannot provide a proper user name and/or password, the access control24notifies the remote site40that its attempt to access has failed in step S14. At this time, the access control24can terminate the connection with the remote site40. Alternatively, the access control24can prompt the remote site40to reenter its user name and/or password.

If the access control24determines that the remote site is authorized to access the image access system10, the access control24determines the remote site40characteristics in step S16. The characteristics of the remote site40can include, for example, priority level, exclusivity level, a preference for certain channel characteristics, a preference for certain transmission characteristics, and the preference to have the subimages associated with the user's name or user ID. The characteristics can be requested of the remote site40by the access control24, or, they may have been provided on a previous access, and may be stored within the access control24.

When the access control24has determined the characteristics of the remote site40, the access control24instructs the processor22to transmit the sensed image to the remote site40in step S18. The remote site displays the sensed image in step S20. The sensed image transmitted to the remote site40can have many forms. For example, the sensed image may be the entire image sensed by the image sensor14. The sensed image could also be the entire image sensed by the image sensor14, minus any restricted areas that the remote site40is not authorized to view.

The sensed image could also be a symbolic representation of the field of view that the image sensor14senses. For example, if the image sensor were used in an astronomical observatory, the sensed image may represent quadrants of a telescope's field of view. Transmitting a symbolic representation of the image sensor14field of view may enable the user at the remote site40to more quickly identify the subimage that the user wishes to view. In addition, a symbolic representation of the sensed image may require less data path resources to transmit over the connection medium30.

The sensed image may be made generally available to all authorized remote sites40via the processor22, prior to assigning channels to the remote sites40. Therefore, channels within the image access system10are not wasted on remote sites40that choose not to select a subimage from the sensed image. In that case, the user at the remote site40can simply disconnect from the image access system10.

In step S22, the user at the remote site40selects a subimage from the sensed image, and transmits the selection to the access control24. When selecting a subimage of the sensed image, the user at the remote site40can select from, for example, predetermined quadrants or sectors of the sensed image. The user at the remote site40can alternatively select a portion of the sensed image using, for example, a mouse, a keyboard, and electronic pen devices interacting with sensitive viewing screens. In selecting a subimage, the user can pan across the sensed image, and may zoom in on a particular portion of the sensed image before selecting a subimage.

Depending upon the priority level of the remote site40, the user may also change the transmission characteristics of the subimage to be transmitted during the selection of a subimage. For example, upon viewing the sensed image, the user at the remote site40may decide to change the resolution, update rate, real time capability, the pixel rate, color depth, or other transmission characteristics of the subimage, based upon the particular image that he wishes to view.

In step S24, the access control24determines whether a channel is available to transmit the selected subimage to the remote site40. If a channel is available, the access control24assigns a channel to the remote site in step S26. As an alternative to assigning a channel to the remote site40after selecting a subimage, the remote site40may be assigned a channel upon connecting with the image access system10.

Each remote site40may be assigned to a single channel, or depending upon the channel characteristics, one or more remote sites40may be multiplexed to a single channel. The plurality of channels are preferably configured so that they are able to convey image data of the sensed image, and subimages, having a desired resolution, color depth, update rate, pixel rate, color depth, and other image characteristics. The channels need not be identical, and certain channels may have, for example, different optimization characteristics or bandwidth than other channels. Channels with certain characteristics, such as real time capability, or high resolution, could be reserved for remote sites having a higher priority level.

The channels can be digital channels, in which the channel characteristics vary. Alternatively, the channels can be hard wired. If digital channels, or other variable channels are used, the characteristics of a channel can be altered in order to accommodate certain remote sites40, or to accommodate the assignment of additional remote sites40to a channel.

Rather than denying access to the image access system10due to a lack of channel availability, the access control24can also reconfigure the transmission characteristics of one or more remote sites40so that the image access system10can accommodate more remote sites40.

In step S28, the image access system10generates the subimage for transmission to the remote site40. The process of generating a subimage is discussed in detail with reference toFIG. 5. Once the subimage has been generated in step S28, the image access system10transmits the subimage to the remote site40in step S30. The remote site40displays the subimage in step S32.

The return arrow from step S32to step S28indicates that frames of the selected subimage may be continuously generated and transmitted to the remote site40. If the subimage is a static image, the image processing system16may not refresh the subimage, and the image displayed at the remote site40would not change.

If the user at the remote site40wishes to view a different subimage, he may select a different subimage at any time. If the user selects a new subimage, the sensor control18obtains image data from a different portion of the sensed image when generating the subimage in step S28. The user at the remote site40may also change the transmission characteristics of the subimage at any time, subject to priority level and channel availability.

Referring again to step S24, if there is no channel available for the remote site40, the access control24asks the remote site40whether the access control24should wait for an available channel in step S34. If the user at the remote site40decides to wait for an available channel, the access control24periodically monitors the availability of channels, and assigns a channel to the remote site40in step S26when a channel becomes available.

If the user at the remote site40indicates that he does not want to wait for a channel to become available, in step S36, the access control24asks the user whether he is willing to view subimages currently being transmitted to another remote site40that is assigned a channel. If the user at the remote site40does not want to view another user's subimages, he is returned to step S22, where he may select a new subimage, attempt to select his original subimage choice, or, he may elect to disconnect from the image access system10.

If the user at the remote site40that is not assigned a channel wishes to view another remote site's subimages, the access control24selects a channel that approximates the user's original subimage selection in step S38. For example, the access control24can include a routine to match the user's preference for a region of the sensed image, and transmission characteristics, to a subimage currently being transmitted on a channel assigned to another remote site40. The remote site40is then “assigned” this channel in a limited capacity in step S26. The remote site40sharing another site's channel is limited in that it may only observe the subimages transmitted on the channel, and may not alter the subimage.

The access control24instructs the processor22to transmit the subimages to the remote site in step S30. The processor22can include a number of output ports that exceeds the number of channels n of the image processing system16. This allows the processor22to transmit duplicate subimages to users at remote sites40who are sharing the subimages communicated on channels assigned to other remote sites40.

FIG. 5is a flow chart illustrating in detail the step S28of generating subimages. In step S40, in response to the access control24transmitting the remote site40selection for a subimage, the image data allocator34obtains subimage data from the buffer32(FIG. 3) corresponding to the user's subimage selection. The subimage data in the buffer32may be in, for example, analog format, and the image data allocator may perform formatting functions such as, for example, byte serial digital formatting. The image data allocator34then transmits the subimage data on the channel assigned to the remote site40to the frame buffer20.

The subimages communicated by the assigned channel are then temporarily stored in the frame buffer20in step S42. The frame buffer20, may, for example, perform some formatting functions operations on the subimage data. For example, the frame buffer20could scale and normalize the subimage. The access control24can control the transmission of subimages to the processor22, or, the frame buffer20can independently control the transmission of subimages to the processor22.

In step S44, the processor22formats the subimages transmitted on the assigned channel for transmission to the I/O device26. The formatting can include, for example MPEG encoding functions such as, for example, scaling, compressing, and other tasks that renders the subimage data appropriate for use by the remote sites40.

The embodiments of a method of and apparatus for providing subimages to remotes sites discussed above have many practical applications. For example, one embodiment of the present invention could be employed for medical training. In this embodiment, a surgeon at a remote site could deploy an image sensor14to focus on a patient during an operation. Other medical personnel, located at remote sites40, could connect via the connection medium30, and could view the operation by accessing the image access system10. The medical personnel at the remote sites40would not be restricted to any particular region of the image sensed from the operation, and could electronically pan and zoom on particular subimages of interest. In this embodiment, the image sensor14could have a relatively narrow field of view, sufficient to view the surgical procedure.

Another embodiment of the present invention could be used to train security or other law enforcement personnel. For example, trainees at remote sites40could view a sensed image selected by a trainer. The image sensor14used to sense the image can have a wide field of view, so that the sensed image captures a variety of actions. The trainees may be asked to detect suspicious or unlawful activity, and to select a subimage to more carefully monitor the activity.

The present invention may also be used in the field of astronomy. Given the high cost of building and operating modem high power telescopes, it is preferable to allow as many users as possible access to each telescope's gathered images. According to an embodiment of the present invention, the image sensor14could be coupled to the optics of a telescope at, for example, an observatory. In this application, the image sensor14may have a relatively small field of view, sufficient to sense a field of view captured by a telescope. The image access system10could utilize the image sensed by the telescope as the sensed image, and could allow users at remote sites40to view subimages of the sensed image, thereby maximizing the use of the telescope.

The steps of the above embodiments can be implemented with hardware or by execution of programs, modules or scripts. The programs, modules or scripts can be stored or embodied on one or more computer readable mediums in a variety of formats, such as source code, object code or executable code, for example. The computer readable mediums may include, for example, both storage devices and signals. Exemplary computer readable storage devices include conventional computer system RAM (random access memory), ROM (read only memory), EPROM (erasable, programmable ROM), EEPROM (electrically erasable, programmable ROM), and magnetic or optical disks or tapes. Exemplary computer readable signals, whether modulated using a carrier or not, are signals that a computer system hosting or running the described methods can be configured to access, including signals downloaded through the Internet or other networks.

The terms and descriptions used herein are set forth by way of illustration only and are not meant as limitations. Those skilled in the art will recognize that many variations are possible within the spirit and scope of the invention as defined in the following claims, and their equivalents, in which all terms are to be understood in their broadest possible sense unless otherwise indicated.