`Bradium Technologies LLC - patent owner
`Microsoft Corporation - petitioner
`IPR2016-01897
`1
`
`
`
`OPTIMIZATION OF IMAGE PARCEL SIZE FOR
`FAST QUALITY BUILD-UP OF DATA PACKETS
`STREAMED OVER LIMITED AND
`NARROWBAND COMMUNICATION
`CHANNELS
`
`Inventors:
`
`Isaac Leva non
`
`Yoni Lavi
`
`Background of the Invention
`
`The present invention is generally related to the delivery at high-resolution
`
`highly featured graphic images over limited and narrowband communications
`
`channels.
`
`Summagg of the Invention
`
`The objective is to display a two-dimensional pixel map, at 6-Bit RGB color
`image in the preferred embodiments, of very large dimensions and permitting the
`viewing of the image from a dynamic th ree-dimensional viewpoint. Multiple such
`
`Attorney Docket No.: FLVT3000
`gbr/tlvt/3000.000.provisionaI.wpcl
`
`‘I2/26/2000
`
`2
`
`
`
`-2-
`
`©\000\lO~U‘I-k0Ol\3—‘
`
`images are remotely hosted for on-demand selection and transfer to a client
`
`system for viewing.
`
`Images, as stored by the sewer, may individually range from gigabytes to
`
`multiple terabyte in total size. A correspondingly large server storage and
`
`processing system is contemplated. Conversely, client systems are contemplated
`
`to be conventional personal computer systems and, in particular, mobile, cellular,
`
`embedded, and handheld computer systems, such as personal digital assistants
`
`(PDAs) and internet-capable digital phones, with relatively limited to highly
`
`constrained network communications capabilities. For most wireless applications,
`
`conventional narrowband communications links have a bandwidth of less than
`
`approximately three kilobytes of data per second. Consequently, transmittal of
`
`entire images to a client system in reasonable time is infeasible as a practical
`
`matter.
`
`Description of the Invention
`
`For purposes of the present invention, each image (Figure 1) is at least
`
`logically defined in terms of multiple grids of image parcels with various levels of
`
`resolutions (Figure 2) that are created through composition of information from
`
`all level of resolutions, and stored by the server to provide an image for transfer
`
`to a client system (Figure 3). Composed and separate static and dynamically
`
`created layers are transferred to client system in parcels in a program selectable
`
`order to optimize for fast quality build-up of the image presented to a user of the
`
`client system, particularly when the parcels are streamed over a narrowband
`
`communication link.
`
`
`
`Attorney Docket No.: FLVT3000
`gbr/flvt/3000.000.provisional.wpcl
`
`12/26/2000
`
`3
`
`
`
`
`
`-3-
`
`The multiple layers of an image allow the selectivity to incorporate
`
`topographical, geographical, orientational, and other terrain and mapping
`related information into the image delivered. Other layers, such as geographic
`
`grids, graphical text overlays, and hyperlink selection areas, separately provided
`
`or composed, aid in the useful presentation and navigation of the image as
`
`presented by the client system and viewed by the user.
`Compositing of layers on the server enables the data transfer burden to be
`
`reduced, particularly in analysis of the requirements and capabilities of the client
`
`system and the connecting communications link. Separate transfer of layers to the
`client system allows the client system selectivity in managing and presentation of
`
`the data to the user.
`
`The system and methods of the present invention are designed to, on
`
`demand, select, process and immediately transfer data parcels to the client
`
`system, which immediately processes and displays a low-detail representation of
`
`the image requested by the client system. The system and methods immediately
`
`continue to select, process and sequentially transfer data parcels that, in turn, are
`
`processed and displayed by the client system to augment the presented image
`
`and thereby provide a continuously improving image to the user.
`
`Selection of the sequentially transferred data is, in part, dependent on the
`
`progressive translation of the three-dimensional viewpoint as dynamically
`
`modified on the client system during the transfer process. This achieves the
`
`above-stated objective while concurrently achieving a good rendering quality for
`
`continuous fly-over of the image as fast as possible, yet continuously building the
`
`image quality to the highest resolution of the image as stored by the server.
`
`Attorney Docket No.: FLVT3000
`gbr/flvt/3000.000.provisional.wpd
`
`12/26/2000
`
`4
`
`
`
`-4-
`
`To optimize image quality build-up over
`
`limited and narrowband
`
`communication links, the target image, as requested by the client system,
`
`is
`
`represented by multiple grids of 64x64 image pixels (Figure 4) with each grid
`
`having some corresponding level of detail. That is, each grid is treated as a
`
`sparse data array that can be progressively revised to increase the resolution of
`
`the grid and thereby the level of detail presented by the grid. The reason for
`
`choosing the 64x64 pixel dimension is that, using current image compression
`
`algorithms, a 16-bit 64x64 pixel array image can be presented as a 2KByte data
`
`parcel.
`
`In turn, this 2KByte parcel is the optimal size, subject to conventional
`
`protocol and overhead requirements, to be transmitted through a 3KByte per
`
`second narrowband transmission channel. Using a smaller image array,‘such as
`
`32x32, would create a O.5KByte parcel, hence causing inefficiencies due to packet
`
`transmission overhead, given the nature of current wireless communications
`
`protocols.
`
`lmage array dimensions are preferably powers of two so that they can be
`
`used in texture mapping efficiently. Each parcel, as received by the client system,
`
`is preferably immediately processed and incorporated into the presented image.
`
`To do so efficiently, according to the present invention, each data parcel
`
`is
`
`independently processable by the client system, which is enabled by the selection
`
`and server-side processing used to prepare a parcel for transmission.
`
`In addition,
`
`each data parcel is sized appropriate to fit within the level-l cache, or equivalent,
`
`of the client system processor, thereby enable the data processing intensive
`
`operations needed to process the data parcel to be performed without extended
`
`memory access delays.
`
`In the preferred embodiment of the present invention,
`
`Attorney Docket No.: FLVT3000
`gbr/flvt/3000.000.provisional.wpd
`
`"I2/26/2000
`
`
`
`5
`
`
`
`-5-
`
`data parcels are also processed for texture mapping and other image features,
`
`such as topographical detailing.
`
`Currently, with regard to conventional client systems, a larger image array,
`
`such as l28xl 28, is too large to be fully placed within the level-l cache of many
`
`of the smaller conventional current processors, such as used by personal digital
`
`assistants (PDAs) and cellular phones.
`
`Since access to cache memory is
`
`substantially faster than to RAM this will likely result in lower frame rate.
`
`Different and larger data parcel sizes may be optimal as transmission
`
`protocols and micro-architectures of the client computers change. For purposes
`above, the data content was a pixel array representing image data. Where the
`
`data parcel content is vector, text or other data that may subiect to different client
`
`system design factors, other parcel sizes may be used.
`In the process implemented by the present invention, data parcels maybe
`
`selected for sequential transmission based on a prioritization of the importance
`
`of the data contained. The criteria of importance maybe defined as suitable for
`
`particular applications and may directly relate to the presentation of image
`quality, provision of a textual overlay of a low-quality image to quickly provide a
`
`navigational orientation, or the addition of topography information at a rate or
`
`timing different from the rate of image quality improvement. Thus, image data
`
`text overlays, and topography can be
`layers reflecting navigational cues,
`composed into data packets for transmission subject to prioritizations set by the
`server alone, based on the nature and type of the client system, and interactively
`
`influenced by the actions and commands provided by the user of the client system
`
`(Figure 5).
`
`Attorney Docket No.: FLVT3000
`gbr/flvt/3000.000.provisional.wpd
`
`l 2/26/2000
`
`6
`
`
`
`-5-
`
`Progressive transmission of image parcels is performed in an iterative
`process involving selection of an image data grid within the target image of the
`client system, which is a portion of a potentially multi-layered source image stored
`by the server. The selection parameters are preferably dependent on the client
`navigation viewpoint, effective velocity, and height, and the effective level of detail
`currently presented in each grid. Once a grid is selected, the server selects the
`source data to be logically composed into the selected grid to complement the
`
`effective resolution of that grid, processing the grid data to produce the optimally
`
`sized size grid data parcels, and sequentially transmitting the parcels to the client
`
`system. Preferably, the detail of a grid array is sequentially enhanced by division
`of the grid into sub-grids related by a power of two (Figure 6). Thus, a given grid
`is preferably updated using four data parcels having twice the data resolution of
`the existing grid. Whatever number of parcels are used, each data parcel is
`
`rendered by the client system into the target image. Additional client system
`
`image data processing to providetexturing and three-dimensional representation
`
`of the data may be performed as part of the parcel rendering and integration into
`
`the target image.
`
`
`
`Attorney Docket No.: FLVT3000
`gbr/flvt/3000.000.provisional.wpd
`
`12/26/2000
`
`7
`
`
`
`
`
`
`
`:8.‘5...36._mu_:am._0
`
`mEmEm_mmm.25on
`
`:6$5.
`
`3.”.6&0.n____%£3
`
`..$.
`
`
`
`Inn....&,m.mx,_.
`
`.
`
`
`
`‘fag\..
`
`
`
`
`
`5ms.?...._E__::m>=omn_m$.__
`
`
`m_mx_.___o3_E@»__}._:.Vx_m5:5on
`M,9..howwmhmwt
`
`..6
`
`
`
`<mm__nos_:_amAm.Eoumw:
`
`m»\\os_.._a_m._mom0Wm_m:_E._m._.
`
`6:0
`
`8
`
`
`
`
`
`
`
`
`ii!
`
`FIG.2
`
`9
`
`
`
`64
`
`64
`
`64
`
`64
`
`64
`
`64
`
`64
`
`64
`
`FIG. 4
`
`10
`
`10
`
`
`
`11
`
`
`
`
`
`
`
`1.:...:w.“W:.r:.m:.._.m”:....ww
`
`
`
`
`
`X...in:sun.
`
`E
`
`0U5
`
`12
`
`12