`
`Patentee
`
`Application to
`
`Reissue Patent No
`
`Issued
`
`I
`
`:
`
`:
`
`:
`
`Constance Nash
`
`7,974,339 B2
`
`July 5, 2011
`
`ASSENT OF AS§IfiflEE
`
`Mail Stop Reissue
`
`Commissioner for Patents
`
`P.0. Box 1450
`
`Alexandria, VA 22313-1450
`
`Sir:
`
`The undersigned, authorized by the assignee, Vedanti Systems Limited states that
`Vedanti Systems Limited I the assignee of the entireright, title and interest in Letters
`Patent 7,974,339 B2 by reason ofthe assignment from the inventors, recorded on May 16,
`2012.
`
`The undersigned has reviewed all the documents in the chain of title in the patent
`application identified above and, to the best of the und ersigned’s knowledge and belief, title
`is in the assignee identified above.
`
`Vedanti Systems Limited hereby assents to the filing of the above-identified
`application to re-issue U.S. Patent 7,974,339 B2.
`
`Date: June 4, 2013
`
`Vedanti Systems Limited
`
`By.
`
`Constance Nash
`
`Google Inc.
`GOOG 10]?
`
`[PR of US Pat. No. 7,974,339
`
`
`
`IN THE UNITED STATES PATENT AND TRADEMARK OFFICE
`
`APPLICATION FOR REISSUE OF LETTERS PATENT NO 7,974,339 B2
`
`Constance Nash
`
`Optimized Da_ta Transmission System and Method
`
`]Li]y 5, 2011
`
`5 1
`
`1
`
`3
`
`Patentee
`
`Title _;
`
`'
`
`Issued
`
`No. of Pages (Spec.):
`
`- No. of Claims-
`
`No. of Pages (Abstract):
`
`-No". of Pages (Inventor's
`
`Declaration):
`
`-
`
`No. of Pages Drawings:
`
`Attorney:
`
`Yorck Hernandez
`
`Wittmann-Hernandez Patent Attorneys,
`
`Munich, Germany
`
`Inventor /Assignee:
`
`.
`
`Constance Nash
`
`P.0. Box 1892
`
`’
`
`Laguna Beach, CA 92652
`
`Date:
`
`June 4, 2013
`
`
`
`Illlllllllllll||l|l[|||||llll|Jl|||||||||||Jl|||l||||l|l||lJ|||||||ll||||l|
`US00'.-’974339B2
`
`on United States Patent
`Krichevsky et al.
`
`(10) Patent Nn.:
`(45) Date of Patent:
`
`Us 7,974,339 B2
`Jul. 5, 2011
`
`3451604
`36
`g4B:§E99
`aasreou
`.. 3451698
`345.1695
`.. 345.163
`M9693
`‘_ 382,239
`
`
`
`‘#1998
`5.778.092 A
`711998
`5,134,125 A
`i|!l'}9B
`5,838,333 A ‘
`‘
`3:333
`f;;g}§;}g*,‘ i .
`GFZIJDD
`5,078,307 A *
`312001
`6.19836? 31 '
`1212001
`6,316,981 81‘
`6.473.052 B1‘ 1012002
`6'60sI632 8? Mom
`1. 050 539 3' .
`5,3006
`-}:s5I:ls9 B21
`6.22009
`
`(S45) OPTIMIZED DATA TRANSMISSION SYSTEM
`AND METHOD
`
`(151
`
`-
`
`(
`
`Inventors: Alex KrlcI1evs|iy,I..agu.na Beach, CA
`(US); Constance Nash. Lacuna Beach.
`CA (US)
`~
`-
`-
`-
`Subject to any d|SCl8.lmBr{ theterm ofthis
`patent is extended or adjusted under 35
`
`.
`-
`) Notice.
`
`(21) Appt No; 1n,rs92_59n
`
`(22) Filed:
`
`Jul. 16, 2004
`
`EP
`E?
`El’
`
`FOREIGN PATENT DOCUMENTS
`0 712 088 A2
`511996
`l 006 ‘M5 A2
`EIZOOIJ
`1 006 ‘HT A2
`612000
`
`(65)
`
`Prior Publication Data
`US 2004!O25Bl5O AI
`Dec. 23, 2004
`
`Related U.S. Application Data
`
`OTHER PUBLICATJONS
`Supplernenlaty European Seatch Report. dated Sep. 23. 2005.
`Strobach. Tree Stmcttned ScmcAd.aptivc Coder, [EEE'l"1'a.n5aclions
`on Conmiunications. Apr. 1990. vol. 38. No. 4. pp. 427486.
`
`(63) Continuation uf application No. PCTfUSO?J00503,
`filed on Jan. 15, 2002.
`
`‘ °i'°d '33-’ '~’W"i"°'
`
`(51)
`
`'
`Int CL
`(2005.01)
`HMN 7/12
`(52) us. Cl.
`................................................ .. 375240.01
`(53) Field oIC|assification Search ........... .. 3‘.'sr240.0t
`375.-240.15, 240.23; 33064; 3321239, 236;
`3481699
`See application file for complete Search history.
`
`Primary Etaminer -— Tung V0
`
`(56)
`
`Re I’: rcnces Cited
`
`‘
`ABSTRACT
`(57)
`A system for tmnsnlitfing data is provided The syswm
`includes a flame analysis system receiving frame data. such
`as a frame ofvideo data, and generating region data, such as
`a uniform niatrix size that is used to divide the flame into a
`prcdctennincd set of matrices. A pixel selection system
`receives the region data and generates one set ofpine! data for
`each region, such as by selecting one of the pixels contained
`Uvsv PATENT S within each of the original matrices that comprise the frame.
`4.776.013 A "
`I0.r'I938 Kairi a a1.
`........ .. JSOIS4
`4,785,349 A '
`Itl.r‘l988 Keith e1 31.
`3?S."240.23
`
`13 Claims, Q Drawing Sheets
`
`
`
`DATA TRANSMISSION SYSTEM E
`
`
`
`3
`
`DIS PLAY
` PIXEL DATA
`GENERATION
`SYSTEM
`SYSTEM
`1.12
`
`E
` DATA RECEIVING SYSTEM 1_o1
`
`
`
`
`ioofi
`
`6/4/2013, EAST Version: 3.1.1.2
`
`
`
`U.S. Patent
`
`Jul. 5, 2011
`
`Sheet 1 of-I
`
`US 7,974,339 B2
`
`DATA TRANSMISSION SYSTEM j_Q_2_
`
`
`
`PIXEL
`SELECTION
`SYSTEM
`
`FRAME
`ANALYSIS
`SYSTEM
`
`
`
`
`
`
`
`M
`
`M
`
`‘DISPLAY
`
`'°';‘$;1'%::A
`GENERATION
`
`SYSTEM
`LE
`
`
`
`FIGURE 1
`
`100?
`
`“XEL
`VARIATION
`SYSTEM
`
`MATRIX SIZE
`SYEOEEM
`
`IDENTIFICATION
`
`SYSTEM
`
`32?.
`4
`
`6/4/2013, EAST Version: 3.1.1.2
`
`
`
`U.S. Patent
`
`Jul. 5, 2011
`
`Sheet 2 of4
`
`US 7,974,339 B2
`
`PIXEL
`RANDOMIZER
`SYSTEM
`E
`
`PIXEL
`SEQUENCER
`SYSTEM
`Q
`
`E PIXEL SELECTION SYSTEM 1_o_§
`
`PIXEL
`IDENTIFICATION
`SYSTEM
`
`FIGURE 3
`
`300?
`
`MATRIX
`DEFINITION
`SYSTEM
`
`$0.2.
`
`‘E PIXEL DATA SYSTEM _1_1_0_
`
`PIXEL LOCATION
`
`SYSTEM
`
`FIGURE 4
`
`400?
`
`.
`
`DETERMINE MATRIX SIZE
`
`SELECT PIXEL IN MATRIX
`
`TRANSMIT MATRIX AND PIXEL DATA
`
`502
`
`504
`
`506
`
`ASSEMBLE MATRIX AND PIXEL DATA INTO FRAME
`
`508
`
`GENERATE DISPLAY USING MATRIX AND PIXEL DATA 510
`
`NO
`
`YES
`
`
`FRAME COM PLETE?
` 512
`GO TO NEXT FRAME
`
`FIGURE 5
`
`514
`
`500?
`
`5
`
`6/4/2013, EAST Version: 3.1.1.2
`
`
`
`US. Patent
`
`Jul. 5, 2011
`
`Sheet 3 of4
`
`US 7,974,339 B2
`
`DETERMINE PIXEL VARIATION
`
`VARIATION > TOL?
`
`GO TO NEXT PIXEL
`
`ASSIGN MATRIX SIZE
`
`MODIFY TOL
`
`303
`
`606
`
`RECEIVE MATRIX DATA
`
`610
`RANDOM OR SEQUENCE?
`
`
`
`. '
`
`SEQUENCE
`
`RANDOM
`
`
`
`712
`
`FIGURE 7
`
`700?
`
`B02
`
`804
`
`
`
`FRAME COMPLETE?
`
`808
`
`GO TO NEXT FRAME
`
`
`
`naune 3
`
`800?
`
`803
`
`6/4/2013, EAST Version: 3.1.1.2
`
`6
`
`
`
`U.S. Patent
`
`Jul. 5, 2011
`
`Sheet 4 of4
`
`Us 7,974,339 B2
`
`
`
`[J EX
`
`]
`
`FIGURE 10
`
`1000fi
`
`6/4/2013, EAST Version: 3.1.1.2 7"
`
`
`
`US 7,974,339 B2
`
`1
`DPTIMIZED DATA TRANSMISSION SYSTEM
`AND METHOD
`
`FIELD OF THE INVENTION
`
`The present invention pertains to the field ofdata transmis-
`sion, and more particularly to a system and method for opti-
`mizing data transmission that decreases bandwidth require-
`ments for data transmission.
`
`10
`
`BACKGROUND OF THE INVENTION
`
`Data transmission systems are known in the art. Such data
`transmission systems ofieo use compression to decrease
`bandwidth requirements. For example, compression tech-
`niques have beencltaracterizcd as “lossless“ when no reduc-
`tion in data occurs, or “lossy” when a loss of data occurs that
`does not adversely affect the intended use.
`One drawback with such data transmission systems is that
`the compressed data must be “decompressa:l“ on the receiv-
`ing end. Thus, for lossless data compression systems, the
`exact configuration of the data must be achieved when the
`data is decompressed. Likewise, even for lossy data compres-
`sion systems, the data is deoompressed and the lost data is
`then approximated. The need for such decompression con-
`tributes to the overall difficulty in implementing data trans-
`mission in conjunction with compression.
`
`SUMMARY OF THE 1‘NV'EN'I'ION
`
`JD
`
`In accordance with the present invention, a system and
`method for transmitting data are provided that overcome
`known problems with data transmission systems and meth-
`ods.
`In particular, a system and method for data transmission are
`provided that use data optimization instead of compression,
`so as to provide a mixed lossless and lossy data transmission
`technique.
`In accordance with an exemplary embodiment of the
`present invention, a system for transmitting data is provided.
`The system includes a frame analysis system receiving frame
`data, such as a frame ofvideo data, audio data, graphical data,
`text data, or other suitable data, and generating region data,
`such as a uniform matrix size that is used to divide the frame
`into a predetermined set ofmatrices. A pixel selection system
`receives the region data and generates one set ofpixel data for
`each region, such as by selecting one of the pixels contained
`within each of the original matrices that comprise the frame.
`For data that is used for purposes other than the generation of
`a display, the pixel data can instead be audio data, text data, or
`other suitable data.
`The present invention provides many important technical
`advantages. One important technical advantage of the present
`invention is a system and method for transmitting data that do
`not require the data to be mpressed at the sendirtg end and
`decompressed at the receiving end. The present invention
`uses data optimization to transmit only the data that is neces-
`sary for the application. such that decompression of the data
`on the receiving end is not required. In this manner, the
`present invention incorporates features of both lossless and
`lossy compression without requiring the data to he decom-
`pressed on the receiving end.
`Those skilled in the art will fitrther appreciate the advan-
`tages and superior features of the invention together with
`other important aspects thereof on reading the detailed
`description that follows in conjunction with the drawings.
`
`45
`
`65
`
`2
`BRIEF DESCRJPTION OF THE DRAWINGS
`
`FIG. 1 is a diagram of a system for transmitting data in
`accordance with an exemplary embodiment of the present
`invention;
`'
`FIG. 2 is a diagram of a system for performing frame
`analysis in accordance with an exemplary embodiment ofthe
`present invention;
`FIG. 3 is a diagram of a system for selecting optimized
`pixel data for transmission in accordance with an exemplary
`embodiment of the present invention;
`FIG. 4 is a diagram of a system for generating a frame in
`accordance with an exemplary embodiment of the present
`invention;
`FIG. 5 is a flow chart of a method for optimizing data
`transmission in accordance with an exemplary embodiment
`of the present invention;
`FIG. 6 isa flowchart ofa method for determining or assign-
`ing matrix or region size based on an exemplary embodiment
`ofthe present invention;
`FIG. 1' is a flowchart ofa method for sclcctinga pixel within
`a region in accordance with an exemplary embodiment ofthe
`present invention;
`FIG. 8 is a flowchart for method for generating optimized
`frame data in accordance with an exemplary hodiment of
`the present invention;
`_
`FIG. 9 is a diagram 900 showing an exemplary uniform
`matrix so-gmentation of an array of pixel data; and
`FIG. 10 is a diagram 1000 showing an exemplary non-
`uniform matrix segmentation of an array of pixel data.
`DETAILED DESCRIPTION OF PREFERRED
`EMBODIMENTS
`
`like parts are marked
`In the description that follows,
`throughout the specification and drawings with the same ref-
`crcnce numerals, respectively. The drawing figures might not
`be to scale, and certain components can be shown in gener-
`alized or schematic form and identified by commercial des-
`ignations in the interest of clarity and conciseness.
`FIG. 1 is a diagram of a system 100 for transmitting data in
`accordance with an exemplary embodiment of the present
`invention. System 100 allows data such as video data to be
`transmitted in a manner that does not require the data to be
`compressed, and which results in significant decreases in
`bandwidth requirements for data transmission.
`System llltl includes data transmission system 102, which
`is coupled to data receiving system 1 04 over a suitable com-
`munications medium 114. As used herein, the term "couple"
`and its cognate terms, such as "couples" and “coupled," can
`include a physical connection (such as a copper conductor}, a
`virtual connection (such as through randomly assigned
`memory locations of a data memory device), a logical con-
`nection (such as through logical gates of a semiconducting
`device), other suitable connections, or a suitable combination
`ofsuch connections. In one exemplary embodiment, systems
`and components are coupled to other systems and compo-
`nents througlr intervening systems and components, such as
`through an operating system of a general purpose computing
`platfonn. Communications medium 114 can be the Internet,
`the public switched telephone network, a wireless network, a
`local area network, an optical network, other suitable com-
`mttnicatiorls media, or it suitable ontrtbirtntion of such com-
`munications media.
`Data transmission system 102 includes frame analysis sys-
`tem J 06 and pixel selection system 108, ch ofwhich can be
`implemented in hardware, software, or a suitable combina-
`
`6/4/2013, EAST
`
`Version:
`
`3.1.1.2
`
`8
`
`
`
`US ';',974,339 B2
`
`5
`
`10
`
`3
`tionofhardwareand sofi'wa.re, andwhich canbeone ormore
`software systems operating on a general purpose processing
`platform. As used herein, a software system can include one
`or more objects, agents, threads, linesofcode, subroutines,
`separate soltwarc applications, user-readable (source) code,
`machine-readable (object) code, two or more lines of code in
`two or more corresponding sofiware applications, databases,
`or otha suitable software architectures. In one extcrnplary
`embodiment, a software system can include one or more lines
`ofcode in a geneml purpose software application, such as an
`operating system, and one or more lines of software in a
`specific purpose sofiware application.
`Data transmission system 102 reduces data transmission
`requirements by eliminating data that is not required for the
`application ofthe data on the receiving end. In one exemplary
`embodiment, data transmission system 102 can receive
`frames of video data, and can select pixels of data for trans-
`mission that are needed in order to allow the frames ofvideo
`data to be viewed by the human eye. In this exemplary
`embodiment, a video display having a quiescent state of pix-
`els in either the “on" or “off” states can be used to generate
`video data by selecting a subset ofpixels within the frame to
`display image data. Ln this exemplary embodiment, ifa frame
`of video data has low detail, it may only be necessary to
`provide a data value for one ofevery twenty-five pixels or less
`in order to create the image to be viewed by the human eye.
`Likewise, if the frame of video data has a large amount of
`detail, it may
`necessary to transmit each pixel in order to
`generate a suitable image. When a frame of video data
`includfi regions ofhigh detail and low detail, it may likewise so
`be desirable to transmit only the necessary number of pixels
`in each region that are required to generate the image. in this
`exemplary embodiment, the number of pixels to transmit can
`be decided on a region-by-region basis within the frame.
`Data receiving system 104 includes pixel data system 110
`and display generation system 112, each of which can be
`implemented in hardware, software. or a suitable combina-
`tion ofhardware and sofiware, and which can be one or more
`software systems operating on a general purpose processor
`platform. Data receiving system 104 receives the data from
`data transmission system 102, and generates a display for a
`user that utilizes the optimized data set transmitted by data
`transmission system 102.
`ln one exemplary embodiment,
`data receiving system 104 can generate a video display, such
`as by illuminating predetermined pixels within a frame based
`on the determination of the level of detail required for the
`frame, and by leaving the remaining pixels in a quiescent state
`of either “oil” or "on.” Likewise, data receiving system 104
`can generate flames of video data that have variable levels of
`detail, to accommodate the image data being transmitted.
`Frame analysis system 106 receives flame data including
`pixel data and gerates matrix size data based upon the pixel
`data. In one exemplary embodiment, flame analysis system
`106 can analyze adjact pixel data values in the frame, and
`can apply one or more predetermined variation tolerances to
`select a matrix size for a data optimization region. In this
`exemplary embodiment, the matrix size for each data optimi-
`zation region ofa frame can be uniform, such that each data
`optimization matrix has the same dimensions. Thus, ifa 640x
`480 pixel frame is being transmitted, then the 640x480 pixel
`frame can be split up into a 64x48 frame of matrices, where
`ch matrix is a 10:10 matrix. Likewise, flame analysis sys-
`tem 1 06 can assigna different matrix size on a frame by frame
`basis, such as where a first fame is transmitted using 10x10
`matrices for a 64x48 matrix frame, and a submuent frame
`could then be transmitted using 5x5 data matrices. for 3
`128x96 matrix frame. In another exemplary embodiment, the
`
`4
`size of matrices within the frame can be varied, such that a
`given frame is made up of ntatrices varying in size, such as
`from a 1x1 matrix to a 5x5 matrix or greater. In yet. another
`exemplary embodiment, the size of the matrices can be non-
`symmetrical, such that an NxM matrix can be used where N
`and M are integer values that are not equivalent. Likewise,
`other sui table data optimization regions can be selected, such
`as ones that are not based ona matrix structure, but which may
`be circular, elliptical, amorphous, or based on other suitable
`structures.
`
`Pixel selection system 108 selects one or more pixel within
`a predefined matrix or other region for transmission in an
`optimized data transmission system.
`In one exemplary
`embodiment, pixel selection system 108 can randomly select
`a pixel from a location within a matrix or other region, can use
`a seqtrence selection scheme such that the pixel is selected in
`accordance with a predetermined sequence, or other suitable
`selection criteria can be used. Pixel selection system 108 can
`20 ftn'1her generate pixel location data within the matrix, such
`that the pixel can be regenerated at a predetermined location,
`at a random location, or in other suitable manners. For
`example, if a predetermined location is used, the predeter-
`mined localion can be the same for each matrix or other
`25 region, such as by assigninga quadrant or other location (e.g.,
`the first row and column position in the matrix). Likewise, if
`randomization is used, control data can be generated that will
`cause data receiving system 104 to randomize the location of
`each pixel in each matrix or other region without requiring
`individual control data for each matrix or other region. Like-
`wise, other suitable pixel selection data can be generated.
`Pixel data system llll receives matrix data and pixel data
`and assembles frame data based on the matrix data and pixel
`data. In one exemplary embodiment, pixel data system 110
`35 receives a matrix size identifier for an entire frame, such that
`it can be determined that a uniform man-ix size is used for
`each frame. Likewise, pixel data system 110 can receive
`matrix map data, such that a sequence of matrices and the size
`of ch matrix can be detennined. Likewise, pixel data sys-
`40 tern 110 can receive pixel data for each matrix, such as pixel
`data with ch matrix identifier, pixel data in a predetermined
`order based on the order of matrix data transmitted, or other
`suitable data.
`Display generation system 112 receives frames of data
`45 from pixel data system 110 and generates video data, audio
`data, graphical data, textual data, or other suitable data for use
`by a user. In one exemplary embodiment, display generation
`system 112 receives an entire frame of data after it has been
`reconstructed by pixel data system 111]. In another cxplary
`so embodiment, display generation system 112 can receive
`frame data as it is generated by pixel data system 110 prior to
`the generation of the entire frame. Other suitable configura-
`tions can be um
`in operation, system 100 allows data transmission to be
`55 optimized so as to decrease bandwidth requirements. System
`100 determines the optimal data for transnzu‘ ssion based on the
`end use of the data. For example, system 100 can reduce the
`data transmitted for video display generation, such as by
`deterrniningthe level of detail required, and then transrnirting
`so data based on the level of detail required. Likewise, similar
`optimition processes can be used for audio data, graphical
`data, textual data, or other suitable data. Thus, system 100 is
`a lossy data transmission system, but can also he a lossless
`data transmission system depending on the data fields within
`as a set of data for which lossy or lossless data transmission is
`desired. In this exemplary embodiment, system 100 ailovvs
`data sets to be processed in a manner that allows data trans-
`
`6/4/2013, EAST
`
`Version: 3.1.1.2
`
`9
`
`
`
`US '.*',974,339 B2
`
`15
`
`20
`
`25
`
`35
`
`5
`mission to be both lossless and lossy bamd on application
`criteria for the data on the receiving end.
`System 100 can also be used in conjunction with a com-
`pression system, a frame elimination system, or with other
`suitable systems or processes to achieve further savings in 5
`bandwidth requirements. For example, alter data optimiza-
`tion has been achieved, the optimized data can then be com-
`pressed using a lossy or lossless compression technique.
`Likewise, frame elimination can be used where such tech-
`niques do not result in an unacceptable decrease in the quality
`of the data at the receiving end.
`FIG. 2 is a diagram of a system 200 for performing frame
`analysis in accordance with an exemplary embodiment ofthe
`present invention. System 200 includes flame analysis sys-
`tem 106 and pixel variation system 202, tnatrix size system
`204, and matrix identification system 206, each ofwhich can
`be implemented in hardware, software, or a suitable combi-
`nation of hardware and sofiware, and which can be one or
`more software systems operating on a general purpose pro-
`cessing platform.
`Pixel variation system 202 determines the level of detail
`required based on variations in pixel data. In one exemplary
`embodiment, pixel variation system 202 can receive pixel
`data values, such as (xfylz) in it suitable pixel color pixel
`system (e.g., I6-bit values for RIGIB, Y.-‘CblCr, YIUN, or
`other suitable color data formats). Pixel variation system 202
`can then compare two adjacent pixels to determine whether
`the amount of variation between those two adjacent pixels
`exceeds a predetermined tolerance, such that the amount of
`pixel data required to transmit image data or other suitable 30
`data for perception by a human eye or other suitable applica-
`tions can be detennined. In this exemplary embodiment, pixel
`variation system 202 can have a number oftolerance settings,
`so that a matrix size, region, or other data optimization setcan
`be determined. For example, consider the following pixel set:
`Pl(l 2lr"34fl B7) P2(l 19339.3] 93) P3(l 171421202)
`In this example, the variation between P] and P2 may be
`lowerthart a first tolerance for the purposes of select ‘mg a first
`data set, such as a 2x2 matrix, but the variation between P]
`and P3 may be greater than a second tolerance for the purpose
`of selecting a second data set, such as a 3x3 matrix. In this
`marutcr, increasing groups ofpixcls can be analyzed so as to
`insure that desired levels of detail are not inadvertently omit-
`ted. For example, if video data includes an image ofan essen-
`tially uniform object, such as the ocean or a grassy field, and
`where that essentially uniform object has details that are
`nonetheless of interest to the viewer, such as wave vvhitecaps
`or wildflowers, pixel variation system 202 can include toler-
`ance settings such that variations between pixels that identify
`such details would be identified. but where such variations
`between two adjacent pixels within the field would be
`ignored Likewise, other suitable pixel variation detection
`functionality can be provided.
`Matrix size system 204 generates matrix size data bag on
`pixel variation data. In one exemplary embodiment. matrix
`size system 204 can receive pixel variation data based on an
`atnlysis ofan entire frame ofdata, such that a uniform matrix
`size can be assigned. Lilrewiw, matrix size system 204 can
`receive pixel variation data from pixcl variation system 202,
`and can generate nonsymmetrical matrix dimensional data,
`such as N:-:M dimensions where "N" and “M” are integers
`that are not equivalent, circular region data, elliptical region
`data, amorphous region data, or other suitable region identi-
`fication data. Matrix sin system 204 canalso generate matrix
`size control data. such as where a non-uniform matrix or
`region size is used within a flame. In this exemplary embodi-
`ment, matrix size system 204 can identify a sequence for
`
`45
`
`S0
`
`55
`
`65
`
`6
`matrices, coordinate data for matrices, sire data for matrices,
`or other suitable data that can he used In ass emble or sequence
`pixel data within matrices.
`Matrix identification system 206 receives matrix size data
`and generates matrix identification data. In one exemplary
`embodiment, matrix identification system 206 can receive
`matrix sequence data, and can assemble the matrix sequence
`data for use with pixel data generated by pixel selection
`system 108. In this exemplary embodiment, nttltrix identifi-
`cation system 206 can identify whether a uniform matrix size
`is being gtmemted, the number of matrices within a frame,
`sequence data for the matrices when a non-un.il'on'n matrix or
`region is being used, or other suitable data. Matrix identifi-
`cation system 206 generates matrix identification data for use
`by data receiving system 104, so as to allow data receiving
`system 10-1 to generate the optimized data display.
`In operation, system 200 allows frames to be analyzed so as
`to detennine the optimal data to be transmitted, based on the
`intended use of the frame. In one exemplary embodiment,
`pixel variation system 202 or other suitable systems can be
`used to identify lossy and lossless regions within the frame.
`Likewise, uniform lossy regions can be identified, such as
`matrices having prcdctcnnincd dimensions of greater than
`1x] or other suitable data.
`FIG. 3 is a diagram ofa system 300 forselecting optimized
`pixel data for transmission in accordance with an exemplary
`embodiment of the present invention. System 300 includes
`pixel selection system 108 and pixel randomizer system 302,
`pixel sequencer system 304, and pixel identification system
`306, each of which can be implemented in hardware, soft-
`ware. or a suitable combination of hardware and software,
`and which can he one or more software systems operating on
`a general purpose processor platform.
`Pixel randomizer sy stem 302 selects a random pixel within
`a matrix or other region. In one exemplary embodiment, pixel
`randomizer system 302 can generate a random number and
`can select a pixel based upon a pixel sequence and the rela-
`tionship of the generated random number to that pixel
`sequence. ln this exemplary embodiment, pixel randominer
`system 302 can generate a random number between 0 and 1,
`and can multiply that random number times the number of
`pixels within a region, and can then select the pixel based
`upon a pixel sequence from a predetermined location. Like»
`wise, other snitable random pixel selection processes can be
`used. Pixel randomizer system 302 generates mndom pixel
`location data and random pixel value data.
`Pixel sequencer system 304 generates pixel selection data
`based on pixel muence data. In one exemplary embodiment,
`such as when a uniform frame matrix size is being um, pixel
`sequencer system 304 can select pixels in a predetermined
`order, such that if a 3x3 matrix is used uniformly across the
`frame, the pixel at location (1,1) is transmitted in the first
`frame, the pixel at location (1,2) is transmitted in the second
`frame, the pixel at location [I ,3] is transmitted in the third
`frame, and so forth, until the pixel at location (3,3) has been
`transmitted, alter which the pixel at location [l,l) will be
`transmitted. Pixel sequencer system 30-1 can likewise send
`other suitable sequences, such as skipping every other pixel,
`skipping pixels based on predetermined display generation
`characteristics, or other suitable sequences.
`Pixel identification system 306 generates pixel identifica-
`tion data, such as may be required by a data receiving system
`to illuminate the pixel in a display. In one exemplary embodi-
`ment, pixel identification system 306 can identify the coordi-
`nates of a pixel where generation of the pixel by the data
`receiving system at the exact location is desired. Likewise,
`pixel identification system 306 can identify a uniform pixel
`
`6/4/2013, EAST Version:
`
`3.1.1.2
`
`10
`
`
`
`US 7,974,339 B2
`
`7
`location within each matrix or other region, such as location
`(l,l)forallmatriocs, suchasrandomizerconnoldatathatwill
`randomly place a pixel within a matrix or region, or other
`suitable pixel identification data.
`In operation, syst 300 allows a pixel within a matrix or
`other suitable region to be selecttxi based on data optimiza-
`tion System 300 allows random, sequenced, or other suitable
`processes to be used to select and locate pixels within opti-
`mized regions.
`FIG. 4 is a diagram ofa system 400 for generating a frame
`in accordance with an exemplary embodiment of the present
`invention. System 400 includes pixel data system 1 10, matrix
`definition system 402 and pixel location system 404, each of
`which can be implemented in hardware, software, or a suit-
`able combination ofhardware and soflwa re, and which can be
`one or more software systems operating on a genera] purpose
`processor platform.
`Matrix definition system 402 receives matrix definition
`data for use in generating frame data. In one exemplary
`ernbodiment, matrix definition data can include data that
`identifies a uniform matrix size throughout the frame. In
`another exemplary embodiment, matrix definition data can
`includedata that identifies matrix dimensions and sequences,
`so that a sequence of non—similar matrices can be assembled
`into a frame. Liktnvisc, matrix definition system 402 can
`include region definition data, such as for ellipses, circles,
`amorphous shapes, or other suitable definition data.
`Pixel location system 404 receives pixel location data for
`locating a pixel within a matrix or other region. In one exem-
`plary embodiment, pixel location system 404 can receive data
`that locates pixels for each matrix within a frame on a uniform
`basis, such that each pixel received will be generated in a
`predetermined location {e.g. (1 ,1 ) in a 3x3 matrix). Likewise,
`pixel location system 404 can receive randomization data,
`such that the location ofa pixel within a matrix or other region
`is randomly assigned In yet anolherexemplary embodiment,
`pixel location system 404 can receive exact coordinates for
`placement of pixels. Other suitable processes can be imple-
`mented by pixel location system 404.
`In operation, system 400 is used to locate pixels of data
`within a matrix or other region in an optimized data transmis-
`sion system. System 400 thus allows optimized data, such as
`video data, audio data, or other suitable data, to be used to
`generate a display, an audio stream, graphic images, textual
`data, and other suitable data on a frame by frame basis.
`FIG. 5 is a flow chart of a method 500 for optimizing data
`transmission in accordance with an exemplary embodiment
`of the present invention. Method 500 begins at 502 where a
`matrix size is determined. In one exemplary embodiment, the
`matrix size can be uniformly assigned across the frame, a
`matrix size can assigned based upon regions within the frame,
`a region other than a matrix can be used, or other suitable
`matrix sizes or region sizes can be determined. The method
`then proceeds to 504.
`A1504 a pixel within the matrix is selected. In one exem-
`plary embodiment, the pixel can be selected based on a pre-
`determined location within the matrix, such as when uniform
`matrix sizes are used within a frame, or in other suitable
`manners. In another exemplary embodiment, pixel selection
`can be performed based on random selection, based upon
`prodaerrnined rules regarding selection of pixels, or in other
`suitable manners. The method then proceeds to 506.
`At 506 the matrix and pixel data is uansrnitted. In one
`exemplary embodiment, the matrix and pixel data can be
`transmitted in pairs, such that each set of matrix definition
`data or location data is paired with corresponding pixel
`brightness data. Likewise, matrix data and pixel data can be
`
`10
`
`I5
`
`20
`
`25
`
`45
`
`50
`
`S5
`
`65
`
`8
`transmitted in sequence, such that the sequence ofmatrix data
`is received first, and the sequence of pixel data for each
`con-esponding matrix is then received. Other suitable trans-
`mission sequences can likewise be used. The method then
`proceeds to 508.
`At 503 the matrix and pixel data is assembled into a ii-ame.
`In one exemplary embodiment, the frame assembly can be
`performed on a line-by-line basis, such that coach line of data
`can be generated as it
`is crted. In another exemplary
`embodiment, an entire frame ofdata can be generated prior to
`utilization ofthe frame ofdata. The method then proceeds to
`510.
`At 510 a display is generated using the matrix and pixel
`data. As previously described, the display can be generated
`from an entire flame data set after it has been completed.
`Likewise, the display can be generated on a line-by-line basis,
`audio streams or graphical displays can be generated, or other
`suitable displays can be generated. The method then proceeds
`to 512.
`At 512 it is determined wheth