This disclosure relates generally to techniques to display media items in a visually pleasing arrangement. More particularly, the disclosure relates to techniques to efficiently organize media items in a visually pleasing arrangement.
With the rapid increase in the number of devices capable of capturing digital media and the number of repositories for such media, there exists a need for an interface that is capable of aggregating, sorting, and displaying all of the media to which a user has access in a visually pleasing manner. Unlike traditional media item displays which generally include display frames having a common size and repetitive spacing, a visually pleasing display of media items may include a more natural and random arrangement of media items in display frames having varying sizes and orientations. Many of the devices capable of capturing and displaying media items in a more visually pleasing arrangement may have relatively limited memory and processing capabilities (e.g., mobile devices such as phones, tablets, and PDAs).
In order to display a set of media items in a visually pleasing manner, a method may include determining the relationship between the set of media items and a plurality of predefined media arrangements. A score corresponding to the set of media items may be compared to a score corresponding to each of the predefined media arrangements to generate a comparison score for each media item set/media arrangement pair. The media item score and the media arrangement scores may be based on properties of the media items and properties of the media arrangements, respectively. The media arrangement that is most closely related to the set of media items may be identified based on the comparison scores and the media items may be displayed in the identified media arrangement. The method may be embodied in program code and stored on a non-transitory medium. The stored program code may be executed by one or more processors that are part of, or control, a system that is configured to implement the method.
This disclosure pertains to systems, methods, and computer readable media for identifying a media arrangement for displaying media items (e.g., digital images, digital videos, etc.). In general, a set of media items may be matched to, and displayed in accordance with, one of a number of predefined media arrangements as described in co-pending applications entitled “Viewable Frame Identification”, and “Multi-Source Media Aggregation”, both of which are being filed concurrently with this application and the contents of which are incorporated herein by reference. More specifically, in one embodiment, a score is calculated for each of a finite number of predefined media arrangements. When a request to display media items in a media set is received, one or more media subsets (i.e., a subset of the media items in the media set) are identified and a score is calculated for each of the one or more media subsets. The scores for the one or more media subsets can be compared to the predetermined scores of the media arrangements, and the most compatible media subset/media arrangement pair can be identified based on the scores. The media items from the media subset from this pair may be displayed according to the corresponding media arrangement of the pair.
In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the inventive concept. As part of this description, some of this disclosure's drawings represent structures and devices in block diagram form in order to avoid obscuring the invention. In the interest of clarity, not all features of an actual implementation are described in this specification. Moreover, the language used in this disclosure has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter, resort to the claims being necessary to determine such inventive subject matter. Reference in this disclosure to “one embodiment” or to “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention, and multiple references to “one embodiment” or “an embodiment” should not be understood as necessarily all referring to the same embodiment.
It will be appreciated that in the development of any actual implementation (as in any development project), numerous decisions must be made to achieve the developers' specific goals (e.g., compliance with system- and business-related constraints), and that these goals will vary from one implementation to another. It will also be appreciated that such development efforts might be complex and time-consuming, but would nevertheless be a routine undertaking for those of ordinary skill in the art of media processing having the benefit of this disclosure.
Referring to
Group 110B occupies the right side of page 105. The particular derivative of group 110B in the illustrated embodiment includes three media frames. A first media frame in group 110B has a portrait orientation and occupies the top portion of group 110B. The two additional media frames of group 110B are landscape oriented media frames in a side-by-side arrangement at the bottom of group 110B. The particular orientation of groups within a page and media frames within the groups forms a unique arrangement of media items. For example, the orientation of groups 110A and 110B and the arrangement of media frames within those groups in page 105 forms unique media arrangement 215. As will be described in greater detail below, an arrangement score can be generated for each unique media arrangement according to a particular weighting function.
It will be understood that media arrangement 215 is illustrated for the purpose of describing the terminology that will be used throughout this Specification rather than to illustrate any preferred arrangement. In different embodiments, groups may be defined with irregular shapes (e.g., not a simple rectangular shape) to accommodate media frames of various sizes and to combine with other groups to create a visually pleasing arrangement within a page. The properties (e.g., size, shape, aspect ratio, etc.) of groups, the arrangement of groups within a page, and the arrangement of media frames within a group to form multiple group derivatives may be defined by a media designer to provide visually pleasing media arrangements.
Referring to
While increasing the number of media arrangements increases the pool of potential fits for a given set of media items, the desire to increase the number of predefined media arrangements must be weighed against the required processing resources to locate the appropriate arrangement and fit the media to the arrangement. Therefore, in certain embodiments, the number of page layouts (i.e., unique layouts of groups within a page) may be selected to balance the pool of media arrangements with the available processing resources and speed with which media items are fit to a selected arrangement. As will be shown below, even a limited number of page layouts will typically result in a relatively large number of media arrangements. For example, the number of derivatives for each group in a particular page layout will generate multiple media arrangements for the given page layout. Therefore, for a given set of page layouts, a large pool of media arrangements may be available for matching with a media set. In one embodiment, a subset of page layouts may be selected from a full set of page layouts. In such an embodiment, the subset of page layouts may be selected based on a particular device or a device orientation (e.g., landscape oriented pages may be selected from a set of pages including landscape and portrait orientations where a landscape orientation is appropriate based on the device or device orientation), processing capacity (e.g., a larger subset of page layouts may be selected for a device having a higher processing capacity), user settings (e.g., a user may indicate a preference for page layouts having larger groups and smaller number of groups per page), etc.
Referring to
As described above, each group (G) has a specified number of derivatives (D), and each derivative includes a specified number of media frames (M). For a given layout, the total number of possible media arrangements is given by:
where NA(P) is equal to the number of media arrangements for the page (P), NG(P) is equal to the number of groups for the page (P), and ND(Gi) is the number of derivatives for a specified group (G) in page (P). By way of example, for the layout illustrated in
After the media arrangements for a selected set of page layouts have been identified, the number of media supported by each of the identified media arrangements may be identified (block 310). Because each derivative for a particular group may contain different numbers of media frames, the range of available media frames for the group of identified media arrangements must be determined. The minimum and maximum number of media items (M) that can be supported for a particular page layout can be identified by:
where NMmin(P) and NMmax(P) represent the minimum and maximum number of media items for a given page layout (P), respectively, and where NMmin(G) and NMmax(G) represent the minimum and maximum number of media items for a particular group (G), respectively (i.e., the number of media items supported by the most lightly and heavily populated derivatives of a group (G)). By way of example, the NMmax(P) value for the page layout in
Based on the minimum and maximum numbers of media items for the selected set of page layouts, one or more ordered media subsets may be gathered from a given media set (block 315). The one or more media subsets may be defined as:
M[y][z] f or y=0→NMmax−NMmin and z=0→NM(M[y]) (4)
where M[y] is an array of media items, M[y][z] specifies a particular item in the array M[y], and NM(M[y]) is the number of media items in the array M[y]. Referring again to the above example of
The selection and ordering of media items from a media set to fill the media item subsets can be performed in different manners. In a first embodiment, the one or more media subsets may be filled based on a structured ordering of available media items. This selection and ordering approach is illustrated in
In accordance with the “structured” selection and ordering of media items, the media subsets may be filled according to a predefined ordering of media items in media set 405. That is, the number of media items required to fill each of the media subsets may be selected from media set 405 according to a specified order. In one embodiment, the media items in media set 405 may be ordered chronologically. For example, metadata associated with the media items that represents an image capture time may be utilized to order the media items. In another embodiment, the media items may be ordered based on an order in which they are read from a memory or received from a remote device. In yet another embodiment, the media items in media set 405 may be ordered according to an importance ranking of the media items. In such an embodiment, the importance of a media item may be determined based on an online ranking or the number of comments that the media item receives (e.g., via a social networking website). Similarly, the importance of a media item could be determined based on the number of times that the media item has previously been viewed or has been sent via an electronic communication medium. Alternatively, an importance ranking may be determined based on image characteristics. For example, a higher importance ranking may be assigned to a media item having certain predefined characteristics (e.g., brightness, etc.) than a media item without those characteristics.
Ordering the media items in the media subsets according to the structured approach may enable media items to be presented in a media arrangement that takes this ordering into account. For example, a chronological ordering of media items may result in a display of the media items in a media arrangement that depicts the media items chronologically from left to right. Similarly, an importance ordering of the media items may enable more important media items to be displayed in larger media frames, in media frames closer to the center of a particular page layout, etc.
In another embodiment, the one or more media subsets may be filled based on a random ordering of available media items. This approach is illustrated in
The “random” approach to selecting and ordering the media items may be useful where the media items are to be displayed dynamically. For example, in one embodiment, the techniques for displaying media items in accordance with this disclosure may be utilized to scroll through available media items. In such an embodiment, the display of different subsets of media items in corresponding media arrangements may fade in and fade out as if presented as part of a slideshow. Similarly, the subsets of media items in their corresponding media arrangements, may appear to slide across a display device with one media arrangement (containing media items from a corresponding media subset) followed by another media arrangement (containing media items from a corresponding media subset). The random selection and ordering of media items from media set 405 can be utilized to continuously choose media items from the available media items and display them randomly for as long as the dynamic display is desired. In one embodiment, when a media subset of media set 405 is matched with a media arrangement, additional media subsets may be formed from the remaining media items in media set 405 and matched with other media arrangements. The media arrangements corresponding to the different media subsets of media set 405 may be appended together. In such an embodiment, the media arrangement visible to a user may actually be formed from multiple media arrangements (e.g., sub-media arrangements).
Returning to
The score for a particular media arrangement may be determined in different manners. In one embodiment, the media score may be the result of the sum of the scores of the derivatives that form the media arrangement. For example, A(x) may represent one arrangement among NA(P) possible arrangements for a particular page layout (P) and may be specified as:
A(x)=D(G0),D(G1), . . . D(GNG(P)) (5)
where D(Gi) specifies a selected derivative for a group in a page layout (P). Keeping with this notation, the media arrangement score for such an arrangement may be defined as:
where NF(D(Gi)) is equal to the number of media frames for a selected derivative of group Gi and where S(Mk) is the score for a particular media frame (Mk). It will be understood that the score for a particular media arrangement is highly dependent on the score function S(Mk). Therefore, very different scores could be generated by altering the score function (e.g., using a weighted sum rather than a simple sum as discussed above). As will be described in greater detail below, the score associated with a media arrangement will be used to match the media arrangement with a given subset of media items. As such, the score function should incorporate factors that are indicative of the “closeness” of the media arrangement with a particular subset of media items. Some factors that should be considered when defining the scoring function include the typical number of media items in a media set, the number of media arrangements, the typical number of media frames per page layout, the different aspect ratios of the media frames, the inclusion of ordering media items by importance, processing requirements, and battery life performance of a device on which the arrangement operation is executed. In general, it is important that a balance is struck between identifying an ideal arrangement and the processing costs of identifying such an arrangement.
It should be noted that where a single numeric score is generated for each particular media arrangement (as in the above-described summation method), there is a potential that false positives may lead to the selection of an improper media arrangement for the display of items within a particular media subset if the score function is not specifically tailored to account for the differences between media arrangements. By way of example, if the score function was simply defined in terms of the aspect ratio of a media frame in a particular media arrangement (i.e., S(Mk)=frame width/frame height), media arrangements 215 and 220 in
In another embodiment, rather than a single numerical score, the media arrangement score may be specified as an array of values. In one embodiment, as will be described in greater detail below, a media arrangement score may be specified as an array of binary values where a first value represents a portrait orientation of a media frame and a second value represents a landscape orientation of a media frame. In such an embodiment, the array of binary values may be ordered in the same manner in which the media items are fit into media frames of the media arrangement (e.g., by importance, left to right, etc.). For example, the first value in the array may represent the orientation of the first media frame to be filled by the first media item in a media subset, and so on. In one embodiment, multiple media arrangement scores may be determined for a single media arrangement based on different orders of fitting media items into media frames. For example, a first media arrangement score may be determined for fitting media items in an order based on importance and a second media arrangement score may be determined for fitting media items in chronological order. The array of values for various media arrangements may be compared against an array of corresponding values for a media subset in order to identify the most appropriate media arrangement for displaying the media items in the media subset. This type of score may be beneficial for multiple reasons. First, identification of an appropriate media arrangement using the binary array technique may be relatively inexpensive computationally. The generation of an array of binary values representing the orientation of each media item in a media subset may be performed quickly and without any significant demand on processing resources. Moreover, the comparison of the score for a particular media subset with the scores for various media arrangements may be performed, at least in part, as a simple binary logic operation, which is also computationally inexpensive. Therefore, the binary array score technique may be useful when the disclosed arrangement techniques are to be performed on a device having limited processing capabilities, such as mobile devices. Second, the ordering of media frame scores in an array to be compared to corresponding scores of a media subset array essentially eliminates the above-described false positive problem by ensuring a direct comparison of corresponding items (i.e., a media frame and a media item that would be fit within the media frame).
In another embodiment, a media arrangement score may include an array of numerical values rather than an array of binary values. In one embodiment, the arrangement score may include a numerical value representing an aspect ratio of a media frame. For example, an array of [1.778, 1, 0.5625, . . . ] might indicate that the first three media frames to be filled in the corresponding media arrangement have aspect ratios of 16:9, 1:1, and 9:16. In another embodiment, the arrangement score may include a numerical value representing an importance of a media frame in a media rating. For example, an “importance” function may assign a numerical value representing the “importance” of a media frame in a media arrangement based on factors such as the media frame's closeness to the center of the page layout (e.g., a measure quantifying the distance between the media frame center point and the page center point), the size of the media frame, and other relevant factors. In yet another embodiment, a media arrangement score may be expressed as an array having multiple numerical values per media frame. For example, the media arrangement score may include values representing a media frame's aspect ratio, importance, or other values to describe the media frame. Just as with the binary array described above, the media subset may be expressed as an array having values that correspond to the media arrangement score array. However, rather than a binary operation, the corresponding values may be compared using a mathematical operation to express the relationship of the corresponding elements. The expression of a media arrangement score in terms of an array of numerical values may maintain the above described benefit of substantially eliminating the possibility of false positives. Moreover, although the generation and manipulation of arrays of numerical values may be more computationally expensive than arrays of binary values, the numerical value arrays may result in a more accurate matching of a media subset and a media arrangement.
After the media arrangement scores have been determined, a media score may be determined for each media subset (block 325). The media subset scores may correspond to the media arrangement scores. For example, a comparison of the media arrangement scores and media subset scores may be most meaningful where the factors used to determine the media arrangement scores are the same as the factors used to determine the media subset scores. As such, in an embodiment in which the media arrangement scores are expressed as a single value, the media subset scores may also be expressed as a single value. In such an embodiment, in a similar manner to the calculation of the media arrangement score in Equation 6, the media subset score may be calculated as:
In one embodiment, the score function applied to each media item in each of the media subsets M[y] in accordance with Equation 7 may be the same or a similar score function utilized to determine the media arrangement score. For example, if the media arrangement score function includes terms directed to evaluating certain properties of a media frame in a media arrangement (e.g., aspect ratio, importance, etc.), the score function applied to media items of a media subset may evaluate the same properties with respect to the media items.
In another embodiment, as described above with respect to the determination of media arrangement scores, the media subset scores may be expressed in terms of an array of values. For example, the score for each media subset may be expressed as an array of binary values or as an array of numerical values. In such an embodiment, corresponding elements of the media arrangement score array and media subset score array may be compared to identify the relationship between a media subset and a media arrangement.
After the scores for the one or more media subsets have been determined, each media subset score may be compared with each media arrangement score to generate a comparison score (block 330). In one embodiment, the scores for a particular media subset may be compared against only the scores for media arrangements having a number of media frames that corresponds to the number of media items in the media subset. In another embodiment, each media subset may be compared against each of the media arrangement scores regardless of the number of media items that are supported by a particular media arrangement. In such an embodiment, the comparison of media item scores with media arrangement scores may include a function that includes a penalty for mismatches between the number of media items in a media subset and the number of media frames in a media arrangement. In one embodiment, the comparison score for each media subset/media arrangement pair may be expressed as:
|S(A(x))−S(M[y])|. (8)
As set forth above, the media arrangement and media subset scores may be expressed in different forms (e.g., single numerical score, array of binary values, array of numerical values, etc.). Therefore, the comparison scores may be expressed in different forms as well. For example, the comparison score for a given media subset and a given media arrangement may be expressed as a single numerical value that represents the difference between the single numerical scores for the media subset and media arrangement, as an array of binary values representing a logical comparison of corresponding elements of the binary value array scores of the media subset and media arrangement, as an array of numerical values representing a mathematical comparison of corresponding elements of the numerical value array scores of the media subset and media arrangement, or any other manner that reflects the relationship between a media subset and media arrangement. In one embodiment, a comparison score expressed in any form other than a single numerical value may be operated on to distill the score to a single value. For example, a comparison score in the form of an array of binary values may be expressed as a numerical value representing the number of high bits, the percentage of the total number of bits that are high bits, etc. Similarly, a comparison score in the form of an array of numerical values may be expressed as a numerical value representing the sum of the array values, the average of the array values, etc. In such an embodiment, the individual elements of a comparison score expressed as an array may be weighted in order to arrive at the final numerical comparison score. For example, where a media subset is ordered by importance and a media arrangement's frames are to be filled in order of importance, the elements of the array representing the comparison of the most important media items/media frames may be weighted more heavily such that the comparison score favors matching the most important media items/media frames.
After the comparison scores are generated, the most closely related media subset/media arrangement pair may be identified (block 335). In one embodiment, where the comparison scores reflect the calculated differences between a media subset and a media arrangement, the media subset/media arrangement pair having the lowest comparison score may be identified as the most closely related pair. Based on the identification of the most closely related media subset/media arrangement pair, the media items from the identified media subset may be inserted into the media frames of the identified media arrangement (block 340). It will be understood that, where a media item shares an aspect ratio with its corresponding media frame, no modification of the media item is necessary, but where the aspect ratios differ, the media item may need to be modified (e.g., cropped) in order to be displayed within the media frame. In one embodiment, the media items from the media subset may be placed into the media frames from left to right with top to bottom priority for identical abscissa in the order in which the media items are stored in the media subset array. This type of placement of media items may avoid the appearance of “holes” in the presentation in situations where a media subset contains fewer media items than the media arrangement contains frames (i.e., unfilled media frames will appear at the periphery of the media arrangement). In another embodiment, the media items may be ordered by importance in the media subset and may be inserted into the media frames in accordance with an importance ranking of the media frames.
Referring to
The media frames within each of media arrangements 505 and 510 are numbered in the order in which the frames are to be filled with media items. As illustrated, the media frames for each arrangement are to be filled from left to right and from top to bottom. Based on this ordering, a media arrangement score is generated for each of media arrangements 505 and 510. Media arrangement scores 515A and 520A, corresponding to media arrangements 505 and 510, respectively, are expressed as an array of binary values that describe the orientation of media frames within the media arrangement (where 1 represents a landscape orientation and 0 represents a portrait orientation) in the order in which the media frames are to be filled. Similarly, media subset score 555 is expressed as an array of binary values that describe the orientation of media items within media subset 550 (using the same notation as media arrangement scores) based on the order of media items in subset 550. Media subset score 555 may then be compared with each of media arrangement scores 515A and 520A. In the illustrated embodiment, the comparison of media subset score 555 with each of media arrangement scores 525A and 530A is performed as a bitwise “exclusive or” operation on corresponding bits of the media subset and media arrangement scores. This logical operation generates comparison arrays 525A and 530A, which identify mismatches between the orientation of corresponding media items of media subset 550 and media frames of media arrangements 505 and 510. For example, comparison array 525A indicates mismatches between the orientations of media item A and frame 1 of arrangement 505, media item B and frame 2 of arrangement 505, media item E and frame 5 of arrangement 505, and media item G and frame 7 of arrangement 505. From comparison arrays 525A and 530A, numerical comparison scores 535A and 540A may be generated. In the illustrated embodiment, numerical comparison scores represent the ratio of high bits to the total number of bits in the comparison arrays (i.e., the ratio of mismatched media items/media frames to the total number of media frames). The lowest of the numerical comparison scores representing the closest match between media subset 550 and a corresponding media arrangement may then be identified. Of media arrangements 505 and 510, media subset 550 is most closely related to media arrangement 505. Therefore, the media items from media subset 550 may be displayed in media arrangement 505. For example, media item A may be displayed within media frame 1 of arrangement 505, media item B displayed in media frame 2 of arrangement 505, media item C displayed in media frame 3 of arrangement 505, and so on. Although the comparison operation illustrated in
As described above, the generation of an array of binary values and the logical comparison of corresponding binary values are relatively inexpensive operations computationally. Moreover, the media arrangement scores for any number of media arrangements may be pre-computed prior to matching the arrangements with a particular media subset. Therefore, at runtime, in accordance with the illustrated embodiment, a media subset score could be generated, media arrangement scores for a particular group of media arrangements could be retrieved (e.g., from a table), the media subset score could be compared to each of the media arrangement scores, and the most closely related media arrangement could be identified for display of the media items in the media subset. Because these operations can be performed without a significant processing burden where the scores include binary arrays and the comparisons include logical operations, the binary array operation may be particularly well suited for identifying a media arrangement for the display of media items on a device having limited processing capacity, such as a mobile device.
Referring to
Referring to
Processor 605 may execute instructions necessary to carry out or control the operation of many functions performed by device 600. Processor 605 may, for instance, drive display 610 and receive user input from user interface 615. User interface 615 can take a variety of forms, such as a button, keypad, dial, a click wheel, keyboard, display screen and/or a touch screen. Processor 605 may also, for example, be a system-on-chip such as those found in mobile devices and include a dedicated graphics processing unit (GPU). Processor 605 may be based on reduced instruction-set computer (RISC) or complex instruction-set computer (CISC) architectures or any other suitable architecture and may include one or more processing cores. Graphics hardware 620 may be special purpose computational hardware for processing graphics and/or assisting processor 605 to process graphics information. In one embodiment, graphics hardware 620 may include a programmable graphics processing unit (GPU).
Sensor and camera circuitry 650 may capture still and video images that may be processed, at least in part, in accordance with the disclosed techniques by video codec(s) 655 and/or processor 605 and/or graphics hardware 620, and/or a dedicated image processing unit incorporated within circuitry 650. Images so captured may be stored in memory 660 and/or storage 665. Memory 660 may include one or more different types of media used by processor 605 and graphics hardware 620 to perform device functions. For example, memory 660 may include memory cache, read-only memory (ROM), and/or random access memory (RAM). Storage 665 may store media (e.g., audio, image and video files), computer program instructions or software, preference information, device profile information, and any other suitable data. Storage 665 may include one or more non-transitory storage mediums including, for example, magnetic disks (fixed, floppy, and removable) and tape, optical media such as CD-ROMs and digital video disks (DVDs), and semiconductor memory devices such as Electrically Programmable Read-Only Memory (EPROM), and Electrically Erasable Programmable Read-Only Memory (EEPROM). Memory 660 and storage 665 may be used to tangibly retain computer program instructions or code organized into one or more modules and written in any desired computer programming language. When executed by, for example, processor 605 such computer program code may implement one or more of the operations described herein.
It is to be understood that the above description is intended to be illustrative, and not restrictive. The material has been presented to enable any person skilled in the art to make and use the inventive concepts described herein, and is provided in the context of particular embodiments, variations of which will be readily apparent to those skilled in the art (e.g., some of the disclosed embodiments may be used in combination with each other). Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. The scope of the invention therefore should be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled. In the appended claims, the terms “including” and “in which” are used as the plain-English equivalents of the respective terms “comprising” and “wherein.”
Number | Name | Date | Kind |
---|---|---|---|
4969204 | Jones | Nov 1990 | A |
5263136 | DeAguiar | Nov 1993 | A |
5532716 | Sano | Jul 1996 | A |
5880739 | Collins | Mar 1999 | A |
6141446 | Boliek | Oct 2000 | A |
6208762 | Garland | Mar 2001 | B1 |
6307559 | Hancock | Oct 2001 | B1 |
6411302 | Chiraz | Jun 2002 | B1 |
6496980 | Tillman | Dec 2002 | B1 |
6636215 | Greene | Oct 2003 | B1 |
6741864 | Wilcock | May 2004 | B2 |
6924814 | Ephanov | Aug 2005 | B1 |
7426696 | Hwang | Sep 2008 | B1 |
7751596 | Rhoads | Jul 2010 | B2 |
7808514 | Yu | Oct 2010 | B2 |
8001143 | Gupta | Aug 2011 | B1 |
8234558 | Swift | Jul 2012 | B2 |
8577911 | Stepinski | Nov 2013 | B1 |
8655885 | Scott | Feb 2014 | B1 |
8713530 | Waite | Apr 2014 | B2 |
8867849 | Kirkham | Oct 2014 | B1 |
20020026507 | Sears | Feb 2002 | A1 |
20020107973 | Lennon | Aug 2002 | A1 |
20020152226 | Burnett | Oct 2002 | A1 |
20030018607 | Lennon | Jan 2003 | A1 |
20030128210 | Muffler | Jul 2003 | A1 |
20030147097 | Kotani | Aug 2003 | A1 |
20030167257 | deBonet | Sep 2003 | A1 |
20030177197 | deBonet | Sep 2003 | A1 |
20030188016 | Agarwalla | Oct 2003 | A1 |
20030188021 | Challenger | Oct 2003 | A1 |
20040172495 | Gut | Sep 2004 | A1 |
20040240746 | Aliaga | Dec 2004 | A1 |
20050050043 | Pyhalammi | Mar 2005 | A1 |
20050071781 | Atkins | Mar 2005 | A1 |
20050102473 | Sakata | May 2005 | A1 |
20050175251 | Taketa | Aug 2005 | A1 |
20050193083 | Han | Sep 2005 | A1 |
20050206658 | Fagans | Sep 2005 | A1 |
20060028659 | Nishikawa | Feb 2006 | A1 |
20060064630 | Balinsky | Mar 2006 | A1 |
20060109343 | Watanabe | May 2006 | A1 |
20070050467 | Borrett | Mar 2007 | A1 |
20070074110 | Miksovsky | Mar 2007 | A1 |
20070222865 | Levien | Sep 2007 | A1 |
20070223887 | Kanamori | Sep 2007 | A1 |
20070253479 | Mukherjee | Nov 2007 | A1 |
20080091526 | Shoemaker | Apr 2008 | A1 |
20080147974 | Madison | Jun 2008 | A1 |
20080162485 | Long | Jul 2008 | A1 |
20080181498 | Swenson | Jul 2008 | A1 |
20080292265 | Worthen | Nov 2008 | A1 |
20080313405 | Sakata | Dec 2008 | A1 |
20090083279 | Hasek | Mar 2009 | A1 |
20090244079 | Carson | Oct 2009 | A1 |
20090274366 | Iourcha | Nov 2009 | A1 |
20100046842 | Conwell | Feb 2010 | A1 |
20100095340 | Ei | Apr 2010 | A1 |
20100161582 | Spohr | Jun 2010 | A1 |
20100180234 | Szuszczewicz | Jul 2010 | A1 |
20100274674 | Roberts | Oct 2010 | A1 |
20100329588 | Cheatle | Dec 2010 | A1 |
20110026593 | New | Feb 2011 | A1 |
20110026835 | Ptucha | Feb 2011 | A1 |
20110064301 | Sun | Mar 2011 | A1 |
20110179075 | Kikuchi | Jul 2011 | A1 |
20110202847 | Dimitrov | Aug 2011 | A1 |
20110212717 | Rhoads | Sep 2011 | A1 |
20110314202 | Iyigun | Dec 2011 | A1 |
20120072656 | Archak | Mar 2012 | A1 |
20120084276 | Heimendinger | Apr 2012 | A1 |
20120084343 | Mir | Apr 2012 | A1 |
20120092997 | Mihaly | Apr 2012 | A1 |
20120150651 | Hoffberg | Jun 2012 | A1 |
20120159558 | Whyte | Jun 2012 | A1 |
20120173824 | Iyigun | Jul 2012 | A1 |
20120191716 | Omoigui | Jul 2012 | A1 |
20120206498 | Kai | Aug 2012 | A1 |
20120210068 | Joshi | Aug 2012 | A1 |
20120233221 | Katari | Sep 2012 | A1 |
20120303575 | Crolene | Nov 2012 | A1 |
20130007667 | Sauve | Jan 2013 | A1 |
20130018875 | Qiao | Jan 2013 | A1 |
20130028508 | Perronnin | Jan 2013 | A1 |
20130050254 | Tran | Feb 2013 | A1 |
20130055081 | Limbasia | Feb 2013 | A1 |
20130159328 | McConnell | Jun 2013 | A1 |
20130173853 | Ungureanu | Jul 2013 | A1 |
20130194438 | Sweet | Aug 2013 | A1 |
20130218721 | Borhan | Aug 2013 | A1 |
20130311329 | Knudson | Nov 2013 | A1 |
20140015873 | Kasai | Jan 2014 | A1 |
20140063031 | Brasnett | Mar 2014 | A1 |
20140111545 | Damola | Apr 2014 | A1 |
20140112394 | Sullivan | Apr 2014 | A1 |
20140125685 | Yeh | May 2014 | A1 |
20140126841 | Wang | May 2014 | A1 |
20140140589 | Klotzer | May 2014 | A1 |
20140189487 | Kwan | Jul 2014 | A1 |
20140222560 | Kota | Aug 2014 | A1 |
20140270407 | Balakrishnan | Sep 2014 | A1 |
20140344705 | Dimitrov | Nov 2014 | A1 |
20140365905 | Chedeau | Dec 2014 | A1 |
20150019545 | Chedeau | Jan 2015 | A1 |
20150135069 | Circlaeys | May 2015 | A1 |
20150135134 | Circlaeys | May 2015 | A1 |
20150189107 | Murata | Jul 2015 | A1 |
20150254806 | Circlaeys | Sep 2015 | A1 |
20160034559 | Feyereisl | Feb 2016 | A1 |
Entry |
---|
Bechtolsheim et al., “High-Performance Raster Graphics for Microcomputer Systems,” 1980, Computer Systems Laboratory, Stanford University, ACM. |
Guthe et al., “Advanced Techniques for High-Quality Multi-Resolution Volume Rendering,” 2004, Computers & Graphics 28, Elsevier. |
Lindstrom et al., “On-the-Fly Decompression and Rendering of Multiresolution Terrain,” 2010, Association for Computing Machinery, ACM. |
Rauschenbach et al., “Demand-Driven Image Transmission with Levels of Detail and Regions of Interest,” 1999, Computers & Graphics 23, Elsevier. |
Number | Date | Country | |
---|---|---|---|
20150135069 A1 | May 2015 | US |