throbber
(12) Unlted States Patent
`(10) Patent No.:
`US 8,924,506 B2
`
`Levanon et al.
`(45) Date of Patent:
`*Dec. 30, 2014
`
`USOO8924506B2
`
`(54) OPTIMIZED IMAGE DELIVERY OVER
`LIMITED BANDWIDTH COMMUNICATION
`CHANNELS
`
`(75)
`
`Inventors:
`
`Isaac Levanona Raananaa IL (US);
`Yonatan Lavi, Roanana, IL (US)
`
`(73) Assignee: Bradium Technologies LLC, Suffem,
`NY (US)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`3:116. 1155:331:36:6O;dig/Eyed under 35
`This patent is subject to a terminal dis-
`Clalmer'
`(21) A 1 NO. 13/027 929
`pp .
`N
`’
`Filed:
`Feb- 15, 2011
`
`(22)
`
`(52) US. Cl.
`CPC .......... .. G06F 3/1454 (2013.01); G06T 3/4092
`(2013.01); G09G 2340/02 (2013.01); G09G
`2350/00 (2013.01)
`USPC ......... .. 709/217; 709/203; 345/625; 382/232;
`382/305
`
`(56)
`
`(58) Field of Classification Search
`CPC
`G06T 3/4092; G09G 2340/02; G06F 3/ 14
`USPC ............... .. 709/202, 203, 217, 230, 246, 247;
`345/625; 382/232, 305
`See application file for complete search history.
`References Cited
`U'S' PATENT DOCUMENTS
`5,929,860 A
`7/1999 Hoppe
`6,182,114 B1
`1/2001 Yap et al.
`(Continued)
`OTHER PUBLICATIONS
`
`(65)
`
`Prior Publication Data
`
`US 2011/0175914 A1
`
`Jul. 21, 2011
`
`Hoppe, H. “Progressive Meshes”, SIGGRAPH ’96: Proceedings of
`the 23rd annual conference on Computer graphics and interactive
`techniques, 1996, PP 99-103
`
`Related US Application Data
`(63) Continuation-in-part of application No. 12/619,643,
`filed on Nov. 16, 2009, now Pat. No. 7,908,343, Wthh
`is a continuation of application No. 10/035,987, filed
`on Dec. 24, 2001, now Pat. No. 7,644,131.
`(60) Provisional application NO. 60/258 488 filed on Dec.
`27 2000
`revisional a
`licafion’ NO’ 60/258 489
`filéd on be: 27 2000 pliovisional a '
`lication’ NO’
`60/258 465 'fileé on 1320
`27
`2008p revisionai
`applica’tion’No 60/258 468' filea on D’ecp 27 2000
`provisional application ’NO ’60/258 466 filed 611 Dec?
`27 2000
`revisional a
`licafion’ NO’ 60/258 467
`filéd on D’ecp 27 2000
`'
`’
`pp
`’
`'
`’
`
`'
`
`(51)
`
`Int. Cl.
`G06F 15/16
`G06F 3/14
`G06T 3/40
`
`(2006.01)
`(200601)
`(2006.01)
`
`y
`
`S. Weiser, Es .;
`q
`
`Primary Examiner 7 David Lazaro
`74 Attorn , A 6111, or FirmiAnatol
`£03116, LaweyGrmi,a RC
`(57)
`ABSTRACT
`Large-scale images are retrieved over network communica-
`tions channels for display on a client device by selecting an
`update image parcel relative to an operator controlled image
`viewpoint to display via the client device. A request is pre-
`pared for the update image parcel and associated with a
`request queue for subsequent issuance over a communica-
`tions channel. The update image parcel is received from the
`communications channel and displayed as a discrete portion
`of the predetermined image. The update image parcel opti-
`mally has a fixed pixel array size, is received in a single and or
`lurali
`of network data
`ackets, and were the fixed ixel
`P
`P
`ty
`P
`array may be constrained to a resolution less than or equal to
`the resolution of the client device display.
`21 Claims, 5 Drawing Sheets
`
`fimfléfi “‘ ‘
`13m.
`
`
`
`exefimssm
`magma 91:;
`
`Microsoft Corp. Exhibit 1013
`
`Microsoft Corp. Exhibit 1013
`
`

`

`US 8,924,506 B2
` Page 2
`
`(56)
`
`References Cited
`
`US. PATENT DOCUMENTS
`
`6,212,301 B1
`6,314,452 B1
`6,326,965 B1
`
`4/2001 Warner et a1.
`11/2001 Dekel et a1.
`12/2001 Castelli et a1.
`
`6,345,279 B1
`6,346,938 B1
`6,397,259 B1
`6,608,933 B1
`6,704,024 B2
`6,711,297 B1
`6,801,665 B1
`
`2/2002 Li et a1.
`2/2002 Chan et al.
`5/2002 Lincke et a1.
`8/2003 Dowell et a1.
`3/2004 Robotham et a1.
`3/2004 Chang et a1.
`10/2004 Atsumi et a1.
`
`Microsoft Corp. Exhibit 1013
`
`Microsoft Corp. Exhibit 1013
`
`

`

`US. Patent
`
`Dec. 30, 2014
`
`Sheet 1 of5
`
`US 8,924,506 B2
`
`‘ ‘\.‘m\\,.
`e
`rfigfiw vfiiflmwwmm}
`S
`
`{\\\‘\
`
`13?";
`
`~
`w \ v‘
`.Q m
`N‘i‘ls- My
`
`‘
`
`fl
`Mp
`
`n
`..o"‘
`
`~
`
`,mmx‘m“
`s wwmm }
`s;
`\E
`‘3
`M
`ii
`9:
`:\\Nww~Ҥ
`mmx
`.
`sswmmm
`\
`.\ \\« \\<
`$§\\\\\\\i§l§\\\
`{k M-Mrm §
`R M-M-M .
`\A
`‘
`R u‘w\-\~\
`\
`{\M'nswim-‘9
`\\\\\\\\\\\\\-“
`3
`x
`.
`t"
`i
`‘>:‘\
`3
`


`\



`‘
`x

`$

`3

`

`k
`
`1mm \m
`\

`\

`K‘
`\
`3
`s

`%

`g
`V M

`
`w
`
`\
`\
`Q
`\
`g.
`\\
`\\
`§ \
`is
`‘
`§§

`
`
`
`
`.W
`
`\
`
`x. ‘
`.
`W8
`
`“‘x»
`\\‘
`
`.
`
`V
`
`F
`.
`
`‘ “
`I'
`
`n“
`\\\\\\h\w~:~°“‘
`
`\\
`

`
`~
`53‘ x
`
`is;
`i
`
`x.
`
`-"
`
`* _.
`§ \-
`‘1‘} M.
`
`\

`\
`
`w-w‘
`
`.
`
`f;
`
`.
`
`'.
`
`_
`
`‘
`
`w“
`w
`\\v.\\ ‘
`€*
`k g
`5
`‘
`§§s§
`3
`
`\\
`\\\
`
`3
`3
`k;
`\~x-“~“§v§:
`W;
`
`‘
`\.-“\
`
`
`
`i’Ic51
`
`;g13
`
`rMWMM/xmta
`
`6'”
`
`
`
`Microsoft Corp. Exhibit 1013
`
`R\\\\\\\\\\\\\\\\\\\\\\\\~\
`‘
`'u\
`< “ .
`.
`\-
`-V
`mmsmi
`Y
`I
`figkg
`3% \P.
`.3}.
`Li. fi‘e 3:331:33 k
`§N‘www“wm~w$
`M
`mow“ “x
`m
`v7“
`_h
`5*
`-.
`“MM-"MM ~.-.M; \\\~,,.
`33..
`.
`
`w WN
`V
`-\ NM ‘
`«M»
`.
`‘ ‘0‘
`\‘ .«~“
`‘
`\..w-I-‘“
`~
`
`
`
`N,“
`
`NM
`Q
`
`{
`
`_
`
`
`~\
`
`\
`\
`_
`\
`3
`§ §
`i
`-~

`3
`9“.
`\
`s
`s
`t:
`.3-
`‘
`‘x
`3
`
`A ‘
`‘ A
`e‘
`3 g:
`..o~
`
`‘~“\~~«~\\s§-»x»“\»~»~w\ ‘
`
`\

`.
`-\-

`~~~
`~
`g
`g“ MSSR g
`\
`
`\.~ ~
`~
`“.
`‘
`\§‘Q§}.§
`3
`“ “ ~
`“ ’
`‘
`‘ ‘\\\\\\ \ \\ §>
`k
`z
`\

`\)
`3
`.
`: msmx
`S
`\*< Q'nvc k
`'
`Am ism-2 g
`\\\\\\\\\\\\\\\\\\\\v~\\\i‘
`
`,
`\x‘
`{0"
`
`“x
`\. «Mn».
`~¢x~m‘ \ w“ ‘
`V
`.\.
`*\‘\“\\-\\W\m~x
`A\~\‘\\\"“~ $§\\\\
`.\§\k\\
`‘0'}. 1 ‘N ‘ N
`n“
`N
`“.9
`\\ MNle
`‘6‘»
`. «N‘
`\\\\ “meow
`‘
`-
`~‘

`-\:i'\'\"\'
`x
`0 mm“
`--~‘ *‘
`v M\
`z mm\ «
`
`
`x»
`
`éfimu i3§§x
`
`i
`f“
`
`x‘
`3
`\

`\
`\
`3
`s

`S
`*
`z
`5‘
`~‘v‘
`‘ w.»
`“‘Nx §"
`
`/,,,,,,,W,,M,,W,/
`
`.
`¢v~¢~
`\
`. \
`WW\
`‘Q. w“‘#\~§:\\ \\
`
`N.»-
`
`gI;A,'w mfir}
`
`4 -4(
`
`Microsoft Corp. Exhibit 1013
`
`

`

`US. Patent
`
`Dec. 30, 2014
`
`Sheet 2 of5
`
`US 8,924,506 B2
`
`§xxx\\\\\\\\\\\\\\v~\\\¥\\\\\\\i\

`.
`‘
`s
`'N “M:
`\
`‘ u .h ‘
`\
`3mm Ex
`\\\\\\\“\\w~§~w\~~v~~s~\\s~’
`’i

`
`.i V
`q ¢
`
`i .
`~
`N .N...
`xvii “em
`\‘ -\: -_-§---.\
`w
`$ Miami:
`
`i
`
`V:
`
`R \K\\\\v\
`5
`
`\
`\
`
`\
`\

`
`S *3
`
`“w
`
`\hxm. ~\._‘v
`N. \x:
`w \
`~ «‘5.
`imimu
`
`s

`\
`3‘
`s

`‘
`summng¢ KR§S§§‘§¥
`\
`\
`3
`
`.3 "‘5‘
`.
`{
`‘3.- qi £1.
`“mm..mm\w«\
`\
`S
`‘
`i
`M av» % 5‘“
`3
`.6.
`km?»
`“Unfit”; '\- \“~~\5
`gmmmi
`§ “
`‘9
`\
`\
`§ mum n}\\z\“\§.;\3 ‘
`Si.“w...wi§fWWMNJ
`g
`s
`~< “ > v -
`§§ Ykii3§§§
`f;
`.x _
`\
`" =§ R§Q$§§i
`\ \
`. :
`x;

`$\ 3 . 3i w
`f\§w3~;:§:;‘m\§
`

`k
`
`.
`
`“
`
`
`
`~ _ s
`{:r‘x
`3’ -\
`
`\\“\~s-~ss~
`


`...m~m“$..mm~\m“
`w .h
`,
`mm: Rama»;
`-
`\_.\<
`\
`ii
`v.
`'.g
`??‘\*i-
`m\w\\\~\\\\\m\~v~m~m\x\x\x~r3
`
`2
`
`‘
`
`gs}
`
`i
`
`“ w . m u i
`Mfl xs‘m‘fi i§s§§s§< Es}
`
`
`
`A A
`A; {.3
`
`"N
`
`m m
`$23

`
`~‘
`
`
`“mmmgwm“mm. ‘
`\
`i

`3
`\
`x
`\
`\
`_


`§ mu -\
`R
`‘
`\~\~\.‘.‘\-
`\
`§---~m--~m§~§


`\\\\-.l.
`.
`5
`5
`\
`\
`S
`$
`t:

`S
`S
`
`‘
`
`m».
`{8.2.-
`b
`\
`\x .. \ \-

`i’fifiiii’fi‘ii‘k‘
`
`~
`g
`k
`‘
`
`i
`*~
`s
`\

`a
`i
`:
`\

`\
`3
`i
`$
`

`‘
`k

`WWW“Mgwwwmm“
`‘\
`\
`\
`.
`-
`\t
`.
`‘v
`_
`_
`“W. i
`is m, mm g x“ M ‘\
`immmmwwiwMM“
`23%;;
`
`.
`.~‘
`5 n »
`‘\
`3} G
`
`w~w.\.“\\
`\\\
`
`\
`\
`\
`3
`\
`
`
`
`‘
`.
`\x‘t“ ;\\u \"\ v 3 . .v .
`Sufi“ ssssni § m
`
`.
`
`2
`
`E
`\
`
`I
`
`"-
`
`\
`\
`‘
`
`
`.
`\
`\ x x \x: \ x
`_ \
`\
`_‘
`\
`‘
`\\
`» ~
`~
`
`g haw; 53§§§
`‘\
`As
`«Mm
`\\\
`N\\waw“
`
` \
`
`.‘o’
`°'
`
`<
`-\
`My
`\° \
`
`'w}
`
`figi 9::
`
`Microsoft Corp. Exhibit 1013
`
`Microsoft Corp. Exhibit 1013
`
`

`

`US. Patent
`
`Dec. 30, 2014
`
`Sheet 3 of5
`
`US 8,924,506 B2
`
`82
`DETERMINE I
`
`
`VIEWABLE PAREEIs
`FOR UPDATE
`
`
`"memo"
`EVENTS
`
`EXAMINE
`OUADTREES
`
`
`
`
`86
`
`
`
`DOWNLOADS
`
` TRIM
`
`u.I'v n
`QUADTREE NOOE
`
`FIG . 5
`
`84
`
`ISSUE PRIORmr
`
`REDUESIS
`
`REQUEST PARCEL
`
`. . v
`
`o
`
`-
`
`NEIWORK
`
`88
`
`DOADTREE NOOEs
`
`-" "
`94
`
`SIORE PARCEL TO
`
`
`
`
`SEIECI HIGHEST
`REQUESI THREAD
`PRIORITY REOOESI
`
`
`FREE
`WAITING
`
`
`
`
`
`
`Wm FOR
`
`100 j
`
`105
`
`Microsoft Corp. Exhibit 1013
`
`Microsoft Corp. Exhibit 1013
`
`

`

`U.S. Patent
`
`Sheet 4 of 5
`
`\.t!a.\x}.
`3..“
`
`
`“suavfixemm.\.\rxn..\“x“\3w“.5?~NMa9“.{Us““x“\Exn“xx}5K“m\.{xxkxxtxkxxxxxxxxxxxn.\>3\.....xE»R.\»cwx«a}“KT“ix.V‘x“K”“\e,“x:n».Rx“‘xm.3xx:.an‘‘..5miaxe‘“\.‘iYx.\xi{>3V‘“i9»x}\3.3.m«“{5‘“xx35m“.u3.‘vmkmm‘9.«RmatSK9mDmmmmmifixxsxssxxxxiw3\\\\\\\\\\\\\\\§§§§§oxx\xxx\\\\\\\\\\\\\\\\\>§§\{§“R\\\\\\\*\\\\x\x\\
`
`
`
`
`
`~sss~§§§§§3§x§§km\x.%wM“Mm«mx\\\x‘\\xx“v“mx““mw~x~~xx:~~~mmNvx\.xh,wp.‘
`
`Fs\sssx\xx§xkkxxxxxxxx\\\\\\\\\\\\\\\\\\§§xxxx\s\s\ssxsxxx‘~..xxs~s\\\\\\\\k‘kxxxxxixm.\xxx§xx\x\xxkx\x).\x2xtssssk5stt\\\\\\§\\\\§\\Q\\\\\\§
`
`0v‘m2N«m“é.a»;xv:w:\{K\v}.\an“3\x\~3‘\\Ks\9\~\>3.,3‘an“x51n.»xx\~‘)\\yK.0xvxxxx\33.i.x9“a«W“xn‘\5!v:m{k“in.x.3»Q.m“Aw.9..R.“VS,«a«.“«K\&wn,is..‘.aq‘\n~‘~\3.
`
`
`
`
`
`,.wo«\\§§\3§WXxx.x}N?‘35:?“«X\{m«$3\\\w§..\\“\k)
`
`\(»
`
`o.<»VJ.»S..E..X:..a“
`
`53
`
`iii-w i?
`
`.x:\S(hS“.‘“‘3vian»MR
`
`{3NAm“t.IS..Ya“a?ma«K.hi5%mffiRR.‘KRsVx}.é«Q..finn§§x§§Wv‘‘mun“My,fix<3«‘3
`
`
`
`33%E
`
`F\MS{xx
`
`mx‘
`
`S\u\x\§3\\\\\\\§\§§§k
`
`“wfi\\\\\\-\\«\
`
`l}\4Wm“X2k
`Uwmmy.»1‘x.WEN«ximm.z
`x..m\mv?9m3g“\uw3»v.\\\\
` (4KA\..¢.8,g1as.ov»“5w“\xwe;fixs:“mm“.{8¢\\.\\§S.5\NRaw39..{Ruv{n“N.
`
`:v\§\Eé‘
`
`\§\.
`
`
`,3“:N:3A..\o‘N‘xsstsis‘sktki
`
` .{\xC\x\‘o“o.‘»\
`
`“m“\:u
`
`Microsoft Corp. Exhi
`
`it 1013
`
`Microsoft Corp. Exhibit 1013
`
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Sheet 5 of 5
`
`~\\~\\~~\\\~\mx\s~v~v.\v~v~v~s~\vv~vs‘
`
`
`.3}\{x0{aEv.3;.1.am«8a...“9X,s.K4.\.\
`3*\»““m..abmmmSN.\.u.mUS““..as...x_......x:..or.{xv«wtax“.9.mR?u.“Mn.mit.“Mii\\an,“.mm.<2«avk.«nw...“.r:k.“...\.gS.Ru“M«a»“3\s.“no\««\I»“.3PM“NH.
`
`.2...as\\\s\\32..Kxx,...i\\.v.\\sx.V.»0/\\\\\x\\....\\$\\....89..w.
`
`
`
`.3:(t.33%?wE..A...“W.“é3.wWa“m....Q1fl“..a.»x.a.3iWVa$3..“E...S:$5u:3.x3we33..Mme\v»S....«...ex.9E....SSx.\.a“.s\e..‘Ah.»““NV.<72..\~or?“{\xu»““..SA\Ro..{3~V.w.““mm<2V».3:\\mNa...z.....~x}.“.~~~\.K.\m\.Vs}«.33\~...~339w...
`
`
`
`
`.faiS§$§z§riiéit:.§..§.i§zz....xxiz§3§§§\m.x:
`
`.3~.as....w...w...,s“.x.c;v.....n...s._w.3.»«x.W!3%.«E««R.«{oxxxxxxi“.9“.
`..~..<3\\\\“Q\\\X\\\\3§\\.\§.\\.\\\\\\\§§\§§.E§$
`
`
`.95...w...mWW3“
`
`
`is:\R\\«t,
`.,m.-\x\x\m“
`
`~m0
`
`x
`
`§\s~s\s\\xxx§\\\\\\\\\\\\\\\i\\\\\§\\\\\§\\\\\\\)§\3:“xii)...3553!;E55~525i§5§§§~§§§5§§§§§
`
`\
`
`Microsoft Corp. Exhi
`
`it 1013
`
`k$33s....kx:\KxSSS$$§Sx.z§i§§§3s§§§§§...$233?§§R§§\3§§§§§§;§§E§§S§§§§§§§§§S:§S§§§§3§53§33§w
`
`..m“\u..
`
`
`{$333.33.$.33§S§§.1.x..t:\‘\xC.:....3..xi.“auSm“.“1Qeflu.“wuw“\.Kbu§.«x:\D.S.33::amy.“22.:\“K3is:m3:32\\“R“.1.“.黓a:3v..._Q..
`$§§§€§s§E...3*.mm.w“.ux\u>A.\“m«Tm$\(AvmmMu.»ma:a:......4mx“m..mu:..01“.2.y““K..m...».,“R.wm“$“mu2“xx~\Nrt“he.“.z§§§\x“m.a.0.,“.x.“““m“»..\........“9.»wMNmmN:91»u.x\a\..xM.»vNNf§§$§t§k
`.u.s3....mmw...““..x>.»ss3~sxxsxxxxxxxxxxxxxxxxxx\\\\\\\\\\\\\\\\\\\\\\§xxxxxxssxsssssss>2§i§§<5§§\§\\\\§\i‘-\\\\\\\\\\\\\\s\{\gsgfissssssssss
`k§\\\\\\\\\\§§§\§\skkxsxx\\\\\\\\\\\\\\\\“yin\.m\x.é.....n.I....s.m.mw\»v».x\«I\\.\mua;mix....xx.““.S.nmnt:wrx\\v.e.\.Nm‘0‘“m“xvNu“(\hw\\\\>v“N.R“Mi3.333..\.\\\\\\\!§§§§S
`.«2.:\lx‘m.3....Na...SN.x.“s§§§§fic...L.“m““ax...Qs....R.s.“..3.i;v3..m““Wu“.3a?5...“ix,..wn...“wm“......«...,.\SQ5...A3.““aw....«\.\\..\‘«‘{\v2Nn..xxm“\..\xc\eS!l§§§x§§§s§§x
`...x“it\3.
`
`..
`
`.:
`
`Microsoft Corp. Exhibit 1013
`
`
`
`
`

`

`US 8,924,506 B2
`
`1
`OPTIMIZED IMAGE DELIVERY OVER
`LIMITED BANDWIDTH COMMUNICATION
`CHANNELS
`
`PRIORITY CLAIMS/RELATED APPLICATIONS
`
`This application is a continuation in part of and claims
`priority under 35 USC 120 to US. patent application Ser. No.
`12/619,643 filed on Nov. 16, 2009 now US. Pat. No. 7,908,
`343 which in turn in a continuation of and claims priority
`under 35 USC 120 to US. patent application Ser. No. 10/035,
`987 filed on Dec. 24, 2001 and entitled “Optimized image
`delivery over limited bandwidth communication channels”
`(that now issued on Jan. 5, 2010 as US. Pat. No. 7,644,131)
`which in turn claims the benefit under 35 USC 1 19(6) of US.
`Provisional Application Nos. 60/258,488, 60/258,489,
`60/258,465, 60/258,468, 60/258,466, and 60/258,467, all
`filed Dec. 27, 2000, all of which are incorporated herein by
`reference. The present application is also related to the co-
`pending application Ser. No. 10/035,981 entitled “System
`and Methods for Network Image Delivery with Dynamic
`Viewing Frustum Optimized for Limited Bandwidth Com-
`munication Channels, Levanon et al., filed on Dec. 24, 2001
`(now US. Pat. No. 7,139,794 issued on Nov. 21, 2006 and
`which is assigned to the Assignee of the present Application.
`
`FIELD
`
`The disclosure is related to network based, image distribu-
`tion systems and, in particular, to a system and methods for
`efiiciently selecting and distributing image parcels through a
`narrowband or otherwise limited bandwidth communications
`
`channel to support presentation of high-resolution images
`subject to dynamic viewing frustums.
`
`BACKGROUND
`
`The Internet and or other network systems may provide a
`unique opportunity to transmit for example complex images,
`typically large scale bit-maps, particularly those approaching
`photo-realistic levels, over large area and or distances. In
`common application, the images may be geographic, topo-
`graphic, and or other highly detailed maps. The data storage
`requirements and often proprietary nature of such images
`could be such that conventional interests may be to transfer
`the images on an as-needed basis.
`In conventional fixed-site applications, the image data may
`be transferred over a relatively high-bandwidth network to
`client computer systems that in turn, may render the image.
`Client systems may typically implement a local image navi-
`gation system to provide zoom and or pan functions based on
`user interaction. As well recognized problem with such con-
`ventional systems could be that full resolution image presen-
`tation may be subject to the inherent transfer latency of the
`network. Different conventional systems have been proposed
`to reduce the latency affect by transmitting the image in
`highly compressed formats that support progressive resolu-
`tion build-up of the image within the current client field of
`view. Using a transform compressed image transfer function
`increases the field of the image that can be transferred over a
`fixed bandwidth network in unit time. Progressive image
`resolution transmission, typically using a differential resolu-
`tion method, permits an approximate image to be quickly
`presented with image details being continuously added over
`time.
`Tzou, in US. Pat. No. 4,698,689, describes a two-dimen-
`sional data transform system that supports transmission of
`
`2
`
`differential coefficients to represent an image. Subsequent
`transmitted coefiicient sets are progressively accumulated
`with prior transmitted sets to provide a succeedingly refined
`image. The inverse-transform function performed by the cli-
`ent computer is, however, highly compute intensive. In order
`to simplify the transform implementation and further reduce
`the latency of presenting any portion of an approximate
`image,
`images are sub-divided into a regular array. This
`enables the inverse-transform function on the client, which is
`time-critical, to deal with substantially smaller coefficient
`data sets. The array size in Tzou is fixed, which leads to
`progressively larger coefiicient data sets as the detail level of
`the image increases. Consequently, there is an inherently
`increasing latency in resolving finer levels of detail.
`An image visualization system proposed byYap et al., US.
`Pat. No. 6,182,114, overcomes some of the foregoing prob-
`lems. TheYap et al. system also employs a progressive encod-
`ing transform to compress the image transfer stream. The
`transform also operates on a subdivided image, but the divi-
`sion is indexed to the encoding level of the transform. The
`encoded transform coefiicient data sets are, therefore, of con-
`stant size, which supports a modest improvement in the algo-
`rithmic performance of the inverse transform operation
`required on the client.
`Yap et al. adds utilization of client image panning or other
`image pointing input information to support a foveation-
`based operator to influence the retrieval order of the subdi-
`vided image blocks. This two-dimensional navigation infor-
`mation is used to identify a foveal region that is presumed to
`be the gaze point of a client system user. The foveation opera-
`tor defines the corresponding image block as the center point
`of an ordered retrieval of coefficient sets representing a vari-
`able resolution image. The gaze point image block represents
`the area of highest image resolution, with resolution reduc-
`tion as a function of distance from the gaze point determined
`by the foveation operator. This technique thus progressively
`builds image resolution at the gaze point and succeedingly
`outward based on a relatively compute intensive function.
`Shifts in the gaze point can be responded to with relative
`speed by preferentially retrieving coefficient sets at and near
`the new foveal region.
`Significant problems remain in permitting the convenient
`and effective use of complex images by many different types
`of client systems, even with the improvements provided by
`the various conventional systems. In particular, the imple-
`mentation of conventional image visualization systems is
`generally unworkable for smaller, often dedicated or embed-
`ded, clients where use ofimage visualization would clearly be
`beneficial. Conventional approaches effectively presume that
`client systems have an excess of computing performance,
`memory and storage. Small clients, however, typically have
`restricted performance processors with possibly no dedicated
`floating-point support, little general purpose memory, and
`extremely limited persistent storage capabilities, particularly
`relative to common image sizes. A mobile computing device
`such as mobile phone, smart phone, tablet and or personal
`digital assistant
`(PDA)
`is a characteristic small client.
`Embedded, low-cost kiosk, automobile navigation systems
`and or Internet enabled/connected TV are other typical
`examples. Such systems are not readily capable, if at all, of
`performing complex, compute-intensive Fourier or wavelet
`transforms, particularly within a highly restricted memory
`address space.
`As a consequence of the presumption that the client is a
`substantial computing system, conventional image visualiza-
`tion systems also presume that the client is supported by a
`complete operating system. Indeed, many expect and require
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Microsoft Corp. Exhibit 1013
`
`Microsoft Corp. Exhibit 1013
`
`

`

`US 8,924,506 B2
`
`3
`an extensive set of graphics abstraction layers to be provided
`by the client system to support the presentation of the deliv-
`ered image data. In general, these abstraction layers are con-
`ventionally considered required to handle the mapping of the
`image data resolution to the display resolution capabilities of 5
`the client system. That is, resolution resolved image data
`provided to the client is unconstrained by any limitation in the
`client system to actually display the corresponding image.
`Consequently,
`substantial processor performance
`and
`memory can be conventionally devoted to handling image
`data that is not or cannot be displayed.
`Another problem is that small clients are generally con-
`strained to generally to very limited network bandwidths,
`particularly when operating under wireless conditions. Such
`limited bandwidth conditions may exist due to either the
`direct technological constraints dictated by the use of a low
`bandwidth data channel or indirect constraints imposed on
`relatively high-bandwidth channels by high concurrent user
`loads. Cellular connected PDAs and webphones are examples
`of small clients that are frequently constrained by limited
`bandwidth conditions. The conventionally realizable maxi-
`mum network transmission bandwidth for such small devices
`
`10
`
`15
`
`20
`
`may range from below one kilobit per second to several tens
`of kilobits per second. While Yap et al. states that
`the
`described system can work over low bandwidth lines, little
`more than utilizing wavelet-based data compression is
`advanced as permitting effective operation at low communi-
`cations bandwidths. While reducing the amount of data that
`must be carried from the server to the client is significant, Yap
`et al. simply relies on the data packet transfer protocols to
`provide for an efficient transfer ofthe compressed image data.
`Reliable transport protocols, however, merely mask packet
`losses and the resultant, sometimes extended, recovery laten-
`cies. When such covered errors occur, however, the aggregate
`bandwidth of the connection is reduced and the client system
`can stall waiting for further image data to process.
`Consequently, there remains a need for an image visual-
`ization system that can support small client systems, place
`few requirements on the supporting client hardware and soft-
`ware resources, and efficiently utilize low to very low band-
`width network connections.
`
`SUMMARY
`
`Thus, a general purpose of the present invention is to pro-
`vide an efficient system and methods of optimally presenting
`image data on client systems with potentially limited process-
`ing performance, resources, and communications bandwidth.
`This is achieved in the present invention by providing for
`the retrieval of large-scale images over network communica-
`tions channels for display on a client device by selecting an
`update image parcel relative to an operator controlled image
`viewpoint to display via the client device. A request is pre-
`pared for the update image parcel and associated with a
`request queue for subsequent issuance over a communica-
`tions channel. The update image parcel is received from the
`communications channel and displayed as a discrete portion
`of the predetermined image. The update image parcel opti-
`mally has a fixed pixel array size, is received in a single and or
`plurality of network data packets, and were the fixed pixel
`array may be constrained to a resolution less than or equal to
`the resolution of the client device display.
`An advantage of the present invention is that both image
`parcel data requests and the rendering of image data are
`optimized to address the display based on the display resolu-
`tion of the client system.
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`
`Another advantage of the present invention is that the pri-
`oritization of image parcel requests is based on an adaptable
`parameter that minimizes the computational complexity of
`determining request prioritization and, in turn, the progres-
`sive improvement in display resolution within the field of
`view presented on a client display.
`A further advantage of the present invention is that the
`client software system requires relatively minimal client pro-
`cessing power and storage capacity. Compute intensive
`numerical calculations are minimally required and image
`parcel data is compactly stored in efficient data structures.
`The client software system is very small and easily down-
`loaded to conventional computer systems or embedded in
`conventional dedicated function devices, including portable
`devices, such as PDAs, tablets and webphones.
`Still another advantage of the present invention is that
`image parcel data requests and presentation can be readily
`optimized to use low to very low bandwidth network connec-
`tions. The software system of the present invention provides
`for re-prioritization of image parcel data requests and presen-
`tation in circumstances where the rate of point-of-view navi-
`gation exceeds the data request rate.
`Yet another advantage ofthe present invention is that image
`parcel data rendering is performed without requiring any
`complex underlying hardware or software display subsystem.
`The client software system ofthe present invention includes a
`bit-map rendering engine that draws directly to the video
`memory ofthe display, thus placing minimal requirements on
`any underlying embedded or disk operating system and dis-
`play drivers. Complex graphics and animation abstraction
`layers are not required.
`Still another advantage of the present invention is that
`image parcel block compression is used to obtain fixed size
`transmission data blocks. Image parcel data is recoverable
`from transmission data using a relatively simple client
`decompression algorithm. Using fixed size transmission data
`blocks enables image data parcels to be delivered to the client
`in bounded time frames.
`
`A yet further advantage of the present invention is that
`multiple data forms can be transferred to the client software
`system for concurrent display. Array overlay data, correlated
`positionally to the image parcel data and generally insensitive
`to image parcel resolution, can be initially or progressively
`provided to the client for parsing and parallel presentation on
`a client display image view.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`These and other advantages and features of the present
`invention will become better understood upon consideration
`of the following detailed description of the invention when
`considered in connection with the accompanying drawings,
`in which like reference numerals designate like parts through-
`out the figures thereof, and wherein:
`FIG. 1 depicts a preferred system environment within
`which various embodiments of the present invention can be
`utilized;
`FIG. 2 is a block diagram illustrating the preparation of
`image parcel and overlay data set that are to be stored by and
`served from a network server system in accordance with a
`preferred embodiment of the present invention;
`FIG. 3 is a block diagram of a client system image presen-
`tation system constructed in accordance with a preferred
`embodiment of the present invention;
`
`Microsoft Corp. Exhibit 1013
`
`Microsoft Corp. Exhibit 1013
`
`

`

`US 8,924,506 B2
`
`5
`FIG. 4 provides a data block diagram illustrating an opti-
`mized client image block processing path constructed in
`accordance with a preferred embodiment of the present
`invention;
`FIG. 5 is a process flow diagram showing a main process-
`ing thread implemented in a preferred embodiment of the
`present invention;
`FIG. 6 provides a process flow diagram showing a network
`request thread implemented in a preferred embodiment of the
`present invention;
`FIG. 7 provides a process flow diagram showing a display
`image rendering thread implemented in a preferred embodi-
`ment of the present invention;
`FIG. 8 provides a process flow diagram showing the parcel
`map processing performed preliminary to the rendering of
`image data parcels in accordance with a preferred embodi-
`ment of the present invention;
`FIG. 9 provides a process flow diagram detailing the ren-
`dering and progressive prioritization of image parcel data
`download requests in accordance with a preferred embodi-
`ment of the present invention; and
`FIG. 10 provides a process flow diagram detailing the
`determination of an optimal detail level for image parcel
`presentation for a current viewing frustum in accordance with
`a preferred embodiment of the present invention.
`
`DETAILED DESCRIPTION OF ONE OR MORE
`EMBODIMENTS
`
`The preferred operational environment 10 of the present
`invention is generally shown in FIG. 1. A network server
`system 12, operating as a data store and server of image data,
`is responsive to requests received through a communications
`network, such as the Internet 14 generally and various tiers of
`internet service providers (ISPs) including a wireless connec-
`tivity provider 16. Client systems, including conventional
`workstations and personal computers 18 and smaller, typi-
`cally dedicated function devices often linked through wire-
`less network connections, such as PDAs, webphones 20, and
`automobile navigation systems, source image requests to the
`network server 12, provide a client display and enable image
`navigational input by a user of the client system. Alternately,
`a dedicated function client system 20 may be connected
`through a separate or plug-in local network server 22, pref-
`erably implementing a small, embedded Web server, to a fixed
`or removable storage local image repository 24. Characteris-
`tically, the client system 18, 20 displays are operated at some
`fixed resolution generally dependent on the underlying dis-
`play hardware of the client systems 18, 20.
`The image navigation capability supported by the present
`invention encompasses a viewing frustum placed within a
`three-dimensional space over the imaged displayed on the
`client 18, 20. Client user navigational inputs are supported to
`control the x, y lateral, rotational and Z height positioning of
`the viewing frustum over the image as well as the camera
`angle of incidence relative to the plane of the image. To effect
`these controls, the software implemented on the client sys-
`tems 18, 20 supports a three-dimensional transform of the
`image data provided from the server 12, 22.
`In accordance with the preferred embodiments of the
`present invention, as generally illustrated in FIG. 2, a network
`image server system 30 stores a combination of source image
`data 32 and source overlay data 34. The source image data 32
`is typically high-resolution bit-map raster map and or satellite
`imagery of geographic regions, which can be obtained from
`commercial suppliers. The overlay image data 34 is typically
`a discrete data file providing image annotation information at
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`defined coordinates relative to the source image data 32. In
`the preferred embodiments of the present invention, image
`annotations include, for example, street, building and land-
`mark names, as well as representative 2 and 3D objects,
`graphical icons, decals, line segments, and or text and or other
`characters, graphics and or other media.
`The network image server system 30 preferably pre-pro-
`cesses the source image data 32 and or source overlay data 34
`to forms preferred for storage and serving by the network
`server 12, 22. The source image data 32 is preferably pre-
`processed to obtain a series K.sub. l -N of derivative images of
`progressively lower image resolution. The source image data
`32, corresponding to the series image K.sub.0, is also subdi-
`vided into a regular array such that each resulting image
`parcel ofthe array has for example a 64 by 64 pixel resolution
`where the image data has a color or bit per pixel depth of 16
`bits, which represents a data parcel size of 8K bytes. The
`resolution of the series K.sub.l-N of derivative images is
`preferably related to that of the source image data 32 or
`predecessor image in the series by a factor of four. The array
`subdivision is likewise related by a factor of four such that
`each image parcel is of a fixed 8K byte size.
`In the preferred embodiment of the present invention, the
`image parcels are further compressed and stored by the net-
`work server 12, 22. The preferred compression algorithm
`may implements for example a fixed 4:1 compression ratio
`such that each compressed and stored image parcel has a fixed
`2K byte size. The image parcels are preferably stored in a file
`of defined configuration such that any image parcel can be
`located by specification of a K.sub.D, X, Y value, represent-
`ing the image set resolution index D and corresponding image
`array coordinate.
`the image array dimensions
`In other implementations,
`(which as 64x64 above) may be powers of two so that the
`image array can be used in texture mapping efficiently. To
`accommodate different data parcel size than the 2 KByte
`associated with 64x64 pixel parcel dimension described
`above and other communication protocol and overhead
`requirements, to accommodate transmission through other
`than a 3 KByte per second transmission channel, the present
`invention may use larger compression ratios that takes, for
`example, a 128x128 or 256x256 pixel parcel dimension and
`compresses it to meet the 3 KByte per second transmission
`channel, or other communication bandwidth used to stream
`the parcel.
`The system may also accommodate different and larger
`data parcel sizes as transmission protocols, compression ratio
`achieved 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 subject to different client
`system design factors, other parcel sizes may be used. Fur-
`thermore, the parcel sizes can be different between the server
`and the client. For example the server may create parcels or
`hold parcels, for streaming with 256x256 pixel parcel dimen-
`sion and the client my render them as 64x64. In addition,
`parcels sizes on different servers may vary from one server to
`another and from the client side rendering. In the system, 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 source overlay data 34 is preferably pre-processed 36
`into either an open XML format, such as the Geography
`Markup Language (GML), which is an XML based encoding
`standard for geographic information developed by the
`OpenGIS Consortium (OGC; www.opengis.org), or a propri-
`etary binary representation. The XML/GML representation is
`
`Microsoft Corp. Exhibit 1013
`
`Microsoft Corp. Exhibit 1013
`
`

`

`US 8,924,506 B2
`
`7
`preferred as permitting easier interchange between different
`commercial entities, while the binary representation is pre-
`ferred as more compact and readily transferable to a client
`system 18, 20. In both cases, the source overlay data 34 is
`pre-processed to contain the annotation data preferably in a
`resolution independent form associated with a display coor-
`dinate specification relative to the source image data 32. The
`XML, GML or binary overlay data may be compressed prior
`to storage on the network server 12, 22.

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket