Curated Media Library

By generating daily, monthly and yearly views of curated media libraries, the problem of image and video management difficulties in large media libraries is solved, and the effect of quickly locate and accessing assets of interest is achieved.

CN113795833BActive Publication Date: 2025-08-19APPLE INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202080033729.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-09-04
Filing Date
2020-03-26
Publication Date
2025-08-19
Estimated Expiration
2040-03-26

AI Technical Summary

Technical Problem

The management and positioning of images and videos in large media libraries is difficult, the loading is slow, and the user interaction is cumbersome, resulting in the user reducing the desire to use and capture images and videos.

Method used

By generating cards specific to each view, including daily, monthly and year views, presenting key assets that are most likely to be searched by users based on a variety of factors and allowing quick switching of views to locate the required assets.

Benefits of technology

Improve the user experience of large media libraries, making it easier for users to locate and access assets of interest, reduce unnecessary navigation, and improves user fun and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113795833B_ABST
    Figure CN113795833B_ABST
Patent Text Reader

Abstract

In some implementations, a computing device may generate a day view, a month view, and a year view showing cards specific to each view. The cards include images, videos, and / or other assets from the media library that reflect the corresponding time frame of the card displaying the asset. The selected view is presented in a graphical user interface (GUI) for interacting with a user of the media library. When an asset displayed in the GUI is selected, the view is switched to show more assets from a time frame similar to the selected asset while maintaining focus on the selected asset.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates generally to selecting and displaying images of a media library and, more particularly, to curating a media library to select and arrange images of interest for display. Background Art

[0002] Conventional media libraries display all images and videos included therein in one or more interfaces. Images and videos can be sorted according to sorting parameters (such as capture time, alphabetical order of file name, etc.). However, for large media libraries that include hundreds or thousands of images and videos, such presentation may be too cumbersome for users to manage, too slow to load, and too cumbersome for users to navigate in order to view the images and videos they want. These experiences may cause users to choose not to access the media library or interact with the images and videos stored in the media library, which may reduce the use of images and videos that have already been captured, while reducing the desire to capture more images and videos in the future. Summary of the Invention

[0003] In some implementations, a computing device may generate a day view, a month view, and a year view showing cards specific to each view. The cards include images, videos, and / or other assets from the media library that reflect the corresponding time frame of the card displaying the asset. The selected view is presented in a graphical user interface (GUI) for interacting with a user of the media library. When an asset displayed in the GUI is selected, the view is switched to show more assets from a time frame similar to the selected asset while maintaining focus on the selected asset.

[0004] Certain embodiments provide at least the following advantages. Large media libraries may include hundreds or thousands of different images, videos, and other assets. When a user attempts to navigate a large media library, it may be difficult to locate the desired asset in a timely and intuitive manner. The curated media library presents key assets that are most likely to be sought after by the user based on a variety of factors, and displays these key assets in a series of views that the user can quickly and intuitively switch between to display more assets, such as key assets, when desired, or to allow the user to quickly change the time frame to find other assets located at different time periods.

[0005] The details of one or more specific implementations are set forth in the following figures and detailed description. Other features, aspects, and potential advantages will be apparent from the detailed description and drawings, and from the claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0006] Figure 1 A block diagram of an exemplary system for providing a curated media library.

[0007] Figure 2An exemplary all assets view of a media library application is shown.

[0008] Figure 3 An exemplary day view of a media library application focused on a day card is shown.

[0009] Figure 4A An exemplary day view of a media library application focused on aggregate cards is shown.

[0010] Figure 4B An exemplary day view of a media library application focused on a single day card showing multiple events is shown.

[0011] Figure 5 An exemplary month view of a media library application focused on a monthly card is shown.

[0012] Figure 6A An exemplary year view of a media library application focused on a year card is shown.

[0013] Figure 6B Another exemplary year view for a media library application is shown.

[0014] Figure 7 An exemplary transition from a year view to a month view is shown.

[0015] Figure 8 An exemplary transition from a month view to a day view is shown.

[0016] Figure 9 An exemplary transition from a day view to an all assets view is shown.

[0017] Figure 10 A flowchart of an exemplary process for curating assets for a media library is provided.

[0018] Figure 11 A flow chart of an exemplary process for determining the significance of an asset of a media library is shown.

[0019] Figure 12 A flowchart of an exemplary process for selecting and displaying assets for a media library is shown.

[0020] Figure 13 A flowchart of an exemplary process for selecting and displaying assets for a media library is shown.

[0021] Figure 14 To be achievable Figures 1 to 13 A block diagram of an exemplary computing device illustrating features and processes.

[0022] Like reference symbols in the various drawings indicate like elements. DETAILED DESCRIPTION

[0023] Since the advent of digital cameras, many users have accumulated large media libraries, and more specifically, with the incorporation of digital cameras into mobile devices, such as smartphones and other electronic devices that are easily carried by users. Media assets may include digital photos and images, videos, animated images, composite presentations, and compilations, etc. Large media libraries may include hundreds or even thousands of individual images and videos collected by one or more users over many years and stored in one or more locations. When users attempt to access and manage large media libraries, there may be many problems associated with the large number of images and videos included therein, such as difficulty locating a desired image or video within the numerous assets stored in the media library, slow loading times for individual assets, slow response times for user interactions with the media library (such as scrolling through images and videos, selecting a specific image to display, transitions between display types, etc.), etc.

[0024] Therefore, it is beneficial to curate images, videos, and other assets in any size media library, making it easier for users to view and access the best images, videos, and other assets. In addition, in some methods, images and videos that users are unlikely to seek can be filtered out of most views of the media library. The embodiments described herein provide an enhanced user experience for viewing and accessing a media library that promotes the best images, videos, and other assets.

[0025] In one example, suppose a smartphone user named Mary has saved pictures and videos of her children and family to her smartphone, and even more images, videos, and portfolio presentations to a remote cloud server accessible from her smartphone. Suppose Mary's son, Trevor, celebrates his birthday tomorrow, and Mary wants to find a photo she took of Trevor's third birthday party in 2013. Further suppose that at this birthday party, Mary took three photos and a video: a blurry photo of the children playing; a photo of Trevor laughing next to his birthday cake; a photo of the cake receipt so Mary could reimburse her mother for the cake; and a video of Trevor opening his presents. Mary really likes the photo of Trevor smiling with his birthday cake, but isn't interested in the blurry photo or the photo of the cake receipt. Mary also likes the video, but not as much as the photo of Trevor smiling with his birthday cake, and has frequently returned to this particular photo over the years.

[0026] Using a traditional, chronologically sorted media library, Mary would need to manually navigate the library, starting with the most recently taken photos and videos, and working her way back through all the images and videos she'd taken between now and 2014, all the way to 2013. Mary would then need to browse through all the photos taken in 2013 to find the exact photo she's looking for from Trevor's birthday party, among all the other photos taken and stored in 2013. This can be a very time-consuming and frustrating process for Mary to locate the exact photo she wants, and may cause her to give up before even finding the photo from Trevor's third birthday party. If the media library could anticipate that she wants to find a photo of Trevor smiling with birthday cake from his third birthday party, and Mary didn't need to search through the photos, her task would be completed more quickly, and she would have more fun using the media library.

[0027] Figure 1 1 is a block diagram of an exemplary system 100 for providing a curated media library. The system 100 may include multiple user devices, such as a smartphone 102, a laptop 104, and the like. Each user device 102, 104 may include a media library application 108 that is configured to display assets accessible to the user device executing the media library application 108 (such as assets stored locally to the particular user device). In addition, in one example, any of the various user devices 102, 104 may be configured to connect to a media server 110 to allow the media library application 108 to access additional assets stored remotely to the media server 110 (and which may not be local to the particular user device). In one approach, the media library application 108 may display the remotely stored and / or locally stored assets in a graphical user interface (GUI) on the user device 102, 104.

[0028] Any type of user equipment (including Figure 1 Any of a variety of devices (not specifically shown in the figure) may be included in the system 100, such as desktop computers, media devices such as set-top boxes (STBs), mobile phones, digital streaming devices, smart televisions (TVs), tablets, wearable devices, etc.

[0029] The media library application 108 may be configured to present a media library via the user devices 102, 104. Although not shown, the media library may be configured to present a plurality of assets to a user interacting with the media library. Any type of asset may be presented in the media library, such as images, photos, videos, animated images, composite presentations, etc., as shown in FIG. Figures 2 to 9 Described in more detail in .

[0030] Image as used herein describes any type of digitally stored viewable content, such as still images, logos, cartoons, artwork, etc. Photograph as used herein describes a digital representation of a real-world image captured using a digital camera device.

[0031] As used herein, an animated image describes a container or other file format that includes a series of images that are manipulated or processed to appear as a coherent moving image when opened or played. Some exemplary animated images include, but are not limited to, Graphics Interchange Format (GIF) files, Portable Network Graphics (PNG) files, Multiple Network Graphics (MNG) files, Live Photos, and many more. TM wait.

[0032] As used herein, a composite presentation describes an arrangement of media assets, such as images and / or videos, selected based on a theme or purpose, and may be set to audio or music. For example, a composite presentation may be about a weekend ski trip and may include videos and photos of the ski trip, such as a picture of family members drinking hot cocoa around a firepit, followed by an image of the ski resort, a photo of children in ski attire, and a video of family members skiing on the slopes. Of course, the order of the assets, the music and other audio played, the titles, and the text or audio descriptions may be set or modified as desired by the media library user.

[0033] See again Figure 1 In one approach, user devices 102, 104 can utilize a network 106 to access a media server 110 or any other remotely accessible data source. Any type of network 106 can be utilized, such as the Internet, a wide area network (WAN), a local area network (LAN), a wireless local area network (WLAN), a virtual private network (VPN), a mobile broadband network, etc. Furthermore, in one approach, more than one network can be used to connect user devices 102, 104 to any other system, device, or network.

[0034] The media server 110 may be any type of system or device configured to store assets and provide access to and / or transmit such assets to requesting user devices 102, 104. In one example, the media server 110 may be a cloud server that hosts images, videos, and other assets so that user devices 102, 104 can access these assets as needed. In another approach, the media library application 108 may be a client application that relies on the media server 110 to provide instructions and / or assets for display on the user devices 102, 104.

[0035] Returning to Mary's example, she can use mobile phone 102 to access the media library through media library application 108 to search for photos of Trevor and his birthday cake from his third birthday party. If the photos are not stored locally on mobile phone 102, media library application 108 can access media server 110 (possibly via network 106) to search for and ultimately obtain the desired photos using any of the various methods described herein.

[0036] Figures 2 to 6B Different exemplary views or cards that can be displayed within the GUI of a media library application are shown. These different views can be used to display different levels of the media library to allow a user (such as Mary in the above example) to more easily locate and access assets that Mary is interested in, such as a photo of Trevor and his birthday cake from his third birthday party. In addition, in one example, undesirable assets, such as blurred photos or photos of receipts, can be hidden from most views, thereby reducing the number of assets Mary must navigate through to find the desired asset, thereby making Mary's task easier.

[0037] Figure 2 An exemplary all assets view 200 of a media library application is shown. In one approach, this view 200 can be used to display all of the assets of a media library. For example, all four assets captured during Trevor's third birthday party would appear in this view. The assets could include still images 202, videos 204, animated images 206, or any other asset type, such as a composite presentation, a panoramic image, or the like. As shown, only a portion of the multiple assets stored in the media library are actually shown in the all assets view 200 at any given time. This is because it is impossible to show all of the assets of a large media library in any functional manner without using a large display, which is simply not available on most devices used to view media libraries (e.g., mobile phones, laptops, etc.).

[0038] In one example, the assets can be sorted in the media library in chronological order. Other methods of sorting the assets can be used in conjunction with or in place of chronological order, such as alphabetical order by name or title, by size, by curation score (described below), by aesthetic score (described below), etc. In addition, in one example, a scroll bar 208 can be provided to allow the user to scroll through the multiple assets that can be displayed in the all assets view 200. However, any type of mechanism that can quickly and intuitively navigate through the multiple assets can be used, such as a finger drag on a touch screen, up and down soft key or hard key input, etc.

[0039] In all-asset view 200, in one approach, all assets, regardless of their type, are displayed as being substantially the same size. Substantially equal means that each asset that is larger than the common frame size is scaled down to fit within the common frame of all-asset view 200, while assets that are smaller than the common frame size are centered within the common frame for display. In the above example, the three photos and video of Trevor's third birthday party would all appear to be the same size.

[0040] In one example, a user can zoom in or out while in the all assets view 200. The user can provide zoom input to indicate a desired zoom level, such as by selecting from a series of options (e.g., 10%, 25%, 50%, 75%, 90%, 100%, 150%, 250%, etc.), moving a slider icon on a slide bar, touching and dragging input on a touch screen display, etc. Zooming in increases the size of each asset, while zooming out decreases the size of each asset, with the increase or decrease being proportional to the zoom input from the user.

[0041] In another approach, some assets shown in all asset view 200 may be sized differently than other assets. The decision about which assets to show more prominently (larger) may be based on several factors, as discussed in more detail below. In the example of Mary's photo, the blurred photo and the photo of the receipt may appear smaller than the photo of Trevor and his birthday cake and the video of him opening his presents. In a further approach, because Mary prefers photos to videos, the photos may appear larger than the videos.

[0042] In one approach, the total asset view 200 may include a ribbon element 210. The ribbon element 210 may include a set of selectable links or labels. For example, Figure 2 , four tabs are shown: Year tab 212, Month tab 214, Day tab 216, and All tab 218. All tab 218 is highlighted because the current view is the All Assets view 200. Any type of highlighting can be used to indicate the active tab, such as bold font, enlarged font, italic font, a different background color surrounding the current tab, a different coloring of the current tab, etc. In addition, any name or image can be used to represent the different levels of the media library represented by the various tabs, which is useful for selecting a particular tab to navigate through the media library.

[0043] exist Figure 2 , the ribbon element 210 is shown as being positioned along the bottom of the full asset view 200. However, the ribbon element 210 may be positioned along the top of the view 200, along a side of the view 200 (having vertical font in one example), or in some examples it may automatically hide and disappear when the user is not interacting with the view 200.

[0044] Each of the tabs can be associated with a different type of card or view so that when a particular tab is selected, the view will change to display the associated card or view. For example, when the day tab 216 is selected, the current view will transition to the day view. Figure 3 4. In another example, when the month tab 214 is selected, the current view will transition to the day view described in more detail in FIG. Figure 5 According to another example, when the year tab 212 is selected, the current view will transition to the month view described in more detail in FIG. Figure 6A The year view is described in more detail in .

[0045] In addition, the current focus of the current view will remain after the transition to the selected view. For example, in Figure 2 , if image 220 is the focal point of view 200 as indicated by the thick frame surrounding image 220, then by ensuring that the day or days shown in the day view include image 220 (in other words, the timestamp associated with image 220 occurs during the day shown in the day to which the day view transitions), image 220 will remain the focal point after the transition to the day view, for example, if image 220 was taken on May 17, 2012, then the assets shown in response to selection of day label 216 will be those taken on or about May 17, 2012.

[0046] In one approach, focus of a particular view or card can be indicated by a user selecting an asset within the view or card. Selection of the image can be indicated using a gesture or user input device, such as a mouse hover, a mouse click, touch input on a touch screen display, stylus input on a tablet, remote control, trackpad input on a laptop, etc.

[0047] In another approach, the focus of a particular view or card can be indicated by the image, video, or other asset currently displayed in the particular view. For example, if a user scrolls through the assets of the all-asset view 200 and reaches a portion of assets showing an image captured on January 6, 2017, the transition to another view maintains the focus on that date (e.g., the day view will show assets from January 6, 2017 onwards, the month view will show assets from January 2017 onwards, and the year view will show assets from 2017 onwards).

[0048] In one approach, when multiple assets from different dates are shown on a current view when a transition to another view is requested, the media library application may determine that an asset located near the center of all currently displayed assets is the focus of the current view without explicit user input selecting an asset to focus on.

[0049] In another approach, the last user-selected image may remain the focus of a particular view in the absence of subsequent selections.

[0050] Figure 3 An exemplary day view 300 of a media library application is shown with a focus on a day card 302. This view 300 can be used to display some or all assets associated with a particular day, such as April 1, 2019. In one approach, the day view 300 displays curated assets 308 on the day card 302 and hides from view other assets associated with the particular day that are filtered out of the set of curated assets 308 presented on the day card 302. Figure 10 In one method, a method may be used to determine whether Figure 3 The day view 300 shows an exemplary curation process in which assets are used in context.

[0051] Continuing with Mary's example, only the video of the gift opening and the photo of Trevor and his birthday cake may be presented in the day view for Trevor's third birthday, while the blurry photo and the receipt photo will be filtered out and hidden from the day view for Trevor's third birthday. This will allow Mary to more easily access desired assets from Trevor's third birthday party without having to navigate through undesirable content (such as the blurry photo and the receipt photo), thereby providing a better user experience because the media library application identifies the most meaningful assets (e.g., based on aesthetics, people, location, etc.) and presents these assets prominently to the user.

[0052] The exemplary day view 300 focuses on April 1, 2019, and displays eleven curated assets 308 from that date within a day card 302. The day card 302 includes a timeframe reference 304 indicating the specific day represented by the day card 302 (April 1, 2019) and a contextual description 306 ("Anniversary") of the curated assets 308 included in the day card 302. The timeframe reference 304 can be determined based on metadata of the curated assets 308 (e.g., a timestamp for creation, a timestamp for last modification, a timestamp for when the asset was received in the media library, etc.). The contextual description 306 can be created based on metadata associated with the curated assets 308, information about users of the media library (significant dates, profile information describing the user, social media information, etc.), information about the user's family members, information about the user's friends, etc. This collected information can be used to determine an appropriate contextual description for the asset 308. As shown, in one example, curated assets 308 relate to an anniversary of the user or another person presented in curation 308 , but any event, holiday, trip, place, date, etc. may be considered in determining contextual description 306 .

[0053] In one approach, the background description 306 is automatically generated and may be user-editable after creation to allow the user to more concisely or accurately describe the curated assets 308 included in the day card 302 .

[0054] Some assets 308 on the day card 302 are shown larger than other assets. The decision about which assets to push (e.g., shown larger) can be based on which assets are determined to be key assets for that day. In one example, the key assets can be determined based on the curation scores of the curated assets shown to the day card 302. For example, the largest asset at the top of the day card 302 can be the key asset for April 1, 2019. The next largest asset shown in the lower left corner of the day card 302 can also be the key asset with the next highest curation score. The calculation of the curation score will be described in more detail later, and any method for determining key assets can be used alone or in combination with some other known methods for determining key assets.

[0055] The selection of which assets 308 to show on the day card 302 and which assets to hide from the day view 300 can be based on several factors. One purpose in determining the number and size of assets displayed for the various day cards 302 is to eliminate any empty space in the day view 300 where no assets are shown.

[0056] In one example, an asset count reference 314 may be included on the day card 302 that indicates the total number of assets present in the media library for April 1, 2019, e.g., 34. The location where the asset count reference 314 is displayed is not limited to Figure 3 302 . The asset count reference 314 may be positioned as shown, as it may be located on the left, right, center, top, bottom, etc., of the day card 302. The asset count reference 314 may also indicate the chronological order of the asset shown within the total number of assets in the example (e.g., 10), thereby indicating that the asset shown is the 10th asset captured on April 1. The asset count reference 314 as shown in the day view 300 is merely one example of how information may be relayed to the user, and many other possibilities may be used to provide information about the assets available in the media library for each specific day. Furthermore, in one approach, selection of the asset count reference 314 may open a full asset view for April 1, 2019, focusing on key assets.

[0057] According to one approach, in response to multiple types of events captured on a single day, the day view 300 may include multiple day cards 302 for the same day. The grouping of assets may be based on the location and time at which the assets were created. In one example, assets captured at the user's work location, assets captured at the user's home location, assets captured during travel outside the user's workplace, and assets captured for any and all other events may be displayed on separate cards 302 on the day view 300 for the same day on which they were captured.

[0058] As will be apparent to one of ordinary skill in the art upon reading this disclosure, other event types may be added to these four types and used to group assets captured on the same day together for display in the day view 300 .

[0059] To determine whether assets were created at the same event, several different criteria can be considered. One criterion for determining whether assets were created at the same event is the time that elapsed between the capture of the individual media items. For example, if there is a break, pause, or time lapse greater than a threshold amount (e.g., 1 hour, 2 hours, etc.) between the capture times of any two assets, this indicates that the assets are from different events. Another criterion for determining whether assets were created at the same event is whether the assets were captured using the same device or different devices. For example, two assets captured at approximately the same time but in different locations using different devices are likely not from the same event, while assets captured at approximately the same time by the same device may be from the same event. In another example, assets captured at approximately the same time by different devices at the same location may be from the same event, but when location data is unavailable, the different devices used to capture the assets can serve as a clue as to whether the assets represent the same event. Another criterion for determining whether assets were created at the same event is the people identified in the assets. For example, if the same person or group of people appear in several assets, they are more likely to be from the same event. Another criterion for determining whether assets were created at the same event is the location where the assets were captured, as specified by metadata or user input. For example, a group of photos captured at the same location may belong to the same event.

[0060] Any of the above criteria may be used alone or in combination to provide a more accurate assessment of whether a group of assets is from the same event, even if some assets in the group were acquired by different users from different devices at different locations, across different time frames, etc.

[0061] In one approach, each event can be limited to collecting assets from one device and for a time period. In several examples, the time period may not extend beyond 3:00 AM or 4:00 AM to allow the user to get at least 3-4 hours of sleep. In several examples, the time period may begin with a new day starting at 5:00 AM or 6:00 AM. The clock of the device capturing the asset is used to timestamp when the asset was created, and the local time of the device at the time the asset was captured is timestamped.

[0062] In one example, density-based clustering can be used to determine which assets belong to a particular event. Rules can be applied to a specific set of assets. For example, GPS error correction can be applied to determine the exact location of an asset. Assets received from other devices can be grouped together even if they are determined to be from the same event. Each different location created by an asset can be considered a different event. Continuous movement above a threshold speed can signal a continuous event.

[0063] In the example, the ribbon element 210 can be shown in the day view 300 to indicate that the current view is the day view 300 by highlighting the day label 216. The ribbon element 210 can also be configured to receive user input to navigate to another view using one of the labels (e.g., the year label 212, the month label 214, the all label 218). The day view includes individual day cards (e.g., the day card 302) and aggregate cards (e.g., the aggregate card 312).

[0064] In one example, multiple day cards from a first day may be shown in the day view 300 , and then one or more day cards from another day may be shown when the day view 300 has room to fit all of the multiple day cards.

[0065] In another example, because the day card 302 for April 1, 2019 does not fill the entire GUI, other day cards and / or aggregate cards (sorted chronologically as appropriate) may be displayed before and / or after the day card 302. For example, an aggregate card 312 is shown below the day card 302 (after) that displays aggregated curated assets 310 representing several days of a trip to Napa (April 2-4, 2019). Figure 4A Describes aggregate cards representing multiple days in more detail.

[0066] Figure 4A An exemplary day view 400 of a media library application is shown with a focus on an aggregate card 402. The day view 400 can be used to display some or all assets associated with multiple consecutive days (e.g., March 12-15, 2019).

[0067] In one approach, in response to determining that there are insufficient assets for any of the individual days in the aggregation period (March 12-15) to display those dates on separate day cards, the day view 400 may display curated assets 406 on the aggregate card 402. In other words, the media library application may determine the number of curated assets for each day, compare the number of curated assets for each day to a predetermined day card threshold (e.g., two, three, four, five curated assets, etc.), and determine whether one or more specific days should be represented by their own day card or aggregated with other adjacent days (the previous or next day) to form an aggregate card to represent the assets during the aggregation period.

[0068] In one example, one or more days may not have any assets associated with those days and therefore may be included with one or more other consecutive days in an aggregate card that may or may not include curated assets.

[0069] In one example, the presence of an asset for a particular day is not sufficient to cause the asset to appear on a separate day card, or even to display the asset on an aggregate card; instead, in one approach, only curated assets are included when determining whether to use an aggregate card or a day card to present assets in the media library.

[0070] In another approach, aggregated cards can be used to represent itineraries that may span one or more days of a user's typical location. In this approach, each user may have a venue area assigned to the user based on historical device location information obtained from electronic devices used by the user (e.g., smartphone, laptop, etc.). By ascertaining the user's typical location, it can be determined when the user leaves the venue area, which generally indicates that the user has embarked on a journey. In some examples, a user's venue area may include an area between 30 square kilometers and 100 square kilometers centered on the user's home location, such as a venue area of approximately 70 square kilometers.

[0071] The venue zone can be expanded or reduced for a particular user based on historical location data. For example, if Sam typically stays within a 20 square kilometer area around his home, Sam's venue zone can be set to the 20 square kilometers around his home. Later, if Sam begins to regularly travel outside of this set area, the set area can be expanded to include regular activities.

[0072] In another example, if Susan travels a significant distance from home to work because she lives in Tracy, California, and works in San Francisco, California, approximately 100 kilometers away, then Susan's locale area can be set to include the work distance (approximately 100 kilometers) within the radius of the location area, so that Susan's location area can cover an area of more than approximately 31,400 square kilometers. In another approach, two different location areas can be set for Susan, one around her work location and one around her home location, with the path between the two locations being disregarded when determining Susan's journey.

[0073] In one example, a user's home location can be determined based on the user's historical location data and the user's associated electronic devices, on which location services are enabled. A user typically spends most of their nights at home, so spending most of their nights at a single location indicates that location is the user's home location. The device's location can also be determined based on which cellular towers are used for mobile communications at different times of the day, along with other location markers that can be obtained by the media library application from the device information.

[0074] In addition, in one example, the user's work location can also be determined based on historical location data. Typically, if the user spends most of their workdays at a location other than the user's home location, then that location is likely to be the user's work location.

[0075] Using these techniques or other techniques known in the art, the home location and work location may be determined individually for each user for use in determining how to enrich the user experience to present assets in the media library for each user.

[0076] The exemplary day view 400 focuses on the aggregation period of March 12-15, 2019, and displays four curated assets 406 from within the aggregation period on the aggregate card 402. The aggregate card 402 may include a timeframe reference 404 that indicates the specific aggregation period represented by the aggregate card 402 (March 12-15, 2019). Although not shown, in some approaches, a contextual description of the curated assets 406 may be included in the aggregate card 402. The timeframe reference 404 may be determined based on metadata of the curated assets 406 (e.g., a timestamp for creation, a timestamp for last modification, a timestamp for when the asset was received in the media library, etc.).

[0077] Figure 10 In one method, a method may be used to determine whether Figure 4A The cards in the day view 400 show which assets are used in the context of an exemplary curation process.

[0078] Some assets 406 on the aggregate card 402 are shown larger than others. The decision about which assets to push (shown larger) can be based on which assets are determined to be key assets for the aggregation for several days. In one example, key assets can be determined based on the curation score of all assets collected for a particular date. For example, the largest asset at the top of the aggregate card 402 can be a key asset for the time period of March 12-15, 2019. The other assets shown all appear at the same size, indicating that none of them are key assets for that time period. The calculation of the curation score will be described in more detail later, and any method of determining key assets can be used alone or in combination with some other known methods of determining key assets.

[0079] The selection of which assets 406 to display on aggregate card 402 and which assets to hide from day view 400 can be based on several factors. In one example, an asset count reference 416 may be included on aggregate card 402, indicating the total number of assets present in the media library from March 12 to 15, 2019, e.g., 8. Asset count reference 416 may also indicate the chronological order of the asset shown within the total number of assets in the example, e.g., 4, thereby indicating that the shown asset is the fourth asset captured during the time period of March 12 to 15. In another example, asset count reference 416 may indicate the number of the day the shown asset was captured, rather than the total number for the aggregate time period. The asset count reference 416 shown in day view 400 is merely one example of how information may be relayed to the user, and many other possibilities exist for providing information about the assets available in the media library for each specific day. Furthermore, in one approach, selecting asset count reference 416 may open a full asset view focused on key assets from March 12 to 15, 2019.

[0080] According to one approach, the day view 400 may include multiple day cards 408 for a day corresponding to multiple types of events captured on the same day. The grouping of assets may be based on the location and time at which the assets were created. In one example, assets captured at the user's work location, assets captured at the user's home location, assets captured during travel outside the user's workplace area, and assets captured for any and all other events may be displayed on separate cards 408 on the day view 400 on the same day they were captured.

[0081] As will be apparent to one of ordinary skill in the art upon reading this disclosure, other event types may be added to these four types and used to group assets captured on the same day together for display in the day view 400 .

[0082] The ribbon element 210 can be shown in the day view 400 to indicate that the current view is the day view 400 by highlighting the day label 216 in the example. The ribbon element 210 can also be configured to receive user input to navigate to another view using one of the labels (e.g., the year label 212, the month label 214, the all label 218). The day view includes individual day cards (e.g., day card 408) and aggregate cards (e.g., aggregate card 402).

[0083] Because aggregate card 402 for the aggregation period of March 12-15, 2019, does not fill the entire GUI, a day card 408 is shown below (after) aggregate card 402, which displays a curated asset 414 representing a single day (March 16, 2019) of dinner in San Francisco. This event is indicated by context reference 412, while the date associated with day card 408 is indicated by timeframe reference 410.

[0084] Figure 4B An exemplary day view 418 of a media library application is shown focused on a single day card 420 showing multiple events. This view 418 can be used to display some or all assets associated with a single day, regardless of the location or event at which the assets were acquired or captured (e.g., December 6, 2014). In one example, suppose that on this day, Mary is on a ski trip. She has breakfast at a cafe in the morning, skis during the day, and then goes to a restaurant for cocktails in the evening. Each of these different events can be captured on different day cards or on the same day card in a number of ways.

[0085] In one approach, the day view 418 displays curated assets 424 for "breakfast" for December 6, 2014, on the day card 420, as indicated by a background reference 426. Four curated assets 424 are shown for the breakfast event, with the key asset (shown larger than the other curated assets for breakfast) having an asset count reference 428.

[0086] In one example, asset count reference 428 may indicate the total number of assets present in the media library for the breakfast event on December 6, 2014, e.g., 12. Asset count reference 428 may also indicate the chronological order of the asset shown within the total number of assets in the example, e.g., 3, indicating that the asset shown is the third asset captured for the breakfast event. In another example, asset count reference 428 may indicate the number of the day the shown asset was captured rather than the number of the event. Asset count reference 428 as shown in day view 418 is merely one example of a way to relay information to the user, and many other possibilities may be used to provide information about the assets available in the media library for each specific date and / or event. Furthermore, in one approach, selection of asset count reference 428 may open an all-asset view focused on key assets from the breakfast event on December 6, 2014.

[0087] As shown in this example, the day view 418 also displays a curated asset 430 on the day card 420 for December 6, 2014, that relates to "skiing" as indicated by a background reference 432. Five curated assets 430 are shown for the skiing event, with a key asset (shown as a background reference 432) having an asset count reference 434.

[0088] In one example, asset count reference 434 may indicate the total number of assets present in the media library for a skiing event on December 6, 2014, e.g., 22. Asset count reference 434 may also indicate the chronological order of the asset shown within the total number of assets in the example, e.g., 6, indicating that the asset shown is the sixth asset captured for the skiing event. In further examples, the asset count reference may display other information and functionality as described above.

[0089] Also shown in this example, the day view 418 displays curated assets 436 on the day card 420 for December 6, 2014, that relate to "A Night Out" as indicated by a background reference 438. Five curated assets 436 are shown for the "A Night Out" event, with the key asset (shown larger) and the background reference 438 having an asset count reference 440.

[0090] In one example, asset count reference 440 may indicate the total number of assets present in the media library for "Night Out" on December 6, 2014, e.g., 17. Asset count reference 440 may also indicate the chronological order of the asset shown within the total number of assets in the example, e.g., 10, indicating that the asset shown is the 10th asset captured for the Night Out event. In further examples, the asset count reference may display other information and functionality as described above.

[0091] Figure 10 In one method, a method may be used to determine whether Figure 4B The day card 420 in the day view 418 shows which assets are used in the context of an exemplary curation process.

[0092] Some assets in each event may be displayed larger than other assets on the day card 420. The decision of which assets to push (e.g., show larger) may be based on which assets are determined to be key assets for the day's events. In one example, key assets may be determined based on a curation score of all assets collected for a particular event within a day. For example, the largest asset at the top of the day card 420 may be the key asset for the day. The calculation of the curation score will be described in more detail later, and any method of determining key assets may be used alone or in combination with some other known methods of determining key assets. Additionally, the selection of which assets 406 to show on the day card 420 and which assets to hide from the day view 418 may be based on several factors, also described herein.

[0093] According to one approach, the day view 418 may include multiple day cards for a day in response to multiple types of events captured on the same day. In another approach, as Figure 4BAs shown, a single day card 420 may show multiple events. Assets may be grouped based on the location and time at which they were created. In one example, assets captured at the user's work location, assets captured at the user's home location, assets captured during travel outside the user's workplace area, and assets captured for any and all other events may be displayed on separate cards on the day view 420 for the same day they were captured.

[0094] As will be apparent to one of ordinary skill in the art upon reading this disclosure, other event types may be added to these four types and used to group assets captured on the same day together for display in the day view 420 .

[0095] In the example, the ribbon element 210 can be shown in the day view 418 to indicate that the current view is the day view 418 by highlighting the day label 216. The ribbon element 210 can also be configured to receive user input to navigate to another view using one of the labels (e.g., the year label 212, the month label 214, the all label 218). The day view includes individual day cards (e.g., the day card 420) and aggregated cards.

[0096] Figure 5 An exemplary month view 500 of a media library application is shown with a focus on a month card 502. This view 500 can be used to display key assets 506 associated with a particular month (January 2019). Key assets 506 are assets from the media library associated with a particular month card 502 that have been determined to represent the best assets for that month (e.g., most likely to be important, desirable, memorable, aesthetically pleasing, etc.).

[0097] A key asset may be selected from the curated assets based on the curation scores of the various curated assets. In one approach, the curated asset with the highest curation score for a particular week of a month may be selected as the key asset representing that week.

[0098] In another approach, a threshold curation score can be determined and compared to the curation score calculated for the curated assets for the month. The threshold curation score can be dynamically determined to select only a certain percentage of assets as key assets (e.g., the top 10%, 5%, 2%, 1%, 0.5%, etc.). In this approach, all curated assets with a curation score greater than or equal to the threshold curation score can be considered key assets for the month.

[0099] In one example, determining which key assets to display in a month may include randomly selecting up to five key assets from all key assets for a particular month and displaying these selected key assets on the month card 502. Each time the month card 502 is navigated to by the user, another set of key assets may be randomly selected and displayed. In this way, each time the month card 502 is navigated to, the month card 502 may be dynamically changed while still displaying only the key assets for the represented month that are most likely to be the best assets from that month.

[0100] The curation score for a particular curated asset may be determined based on one or more factors. Example factors for determining the curation score include, but are not limited to, global aesthetics, the number of shares of the particular asset, the number of views of the particular asset, the number of people identified in the particular asset, the size of the asset grouping that includes the particular asset, the interpolated meaning of the particular asset, etc. Figure 11 An example process for identifying critical assets is described in more detail in .

[0101] Reference again Figure 5 In one approach, in response to determining that there are key assets for each calendar week of a particular month (e.g., January 2019), the month view 500 displays up to five key assets 506 on the month card 502. Although a month is limited to 31 days (i.e., 4 weeks + 3 days), a month may sometimes span five calendar weeks. Therefore, in one approach, the month card 502 may be represented by up to five key assets 506.

[0102] For example, January 2019 starts on a Tuesday and ends on a Thursday; therefore, the calendar weeks of January 2019 could be: 1) Tuesday, January 1 to Saturday, January 5, 2) Sunday, January 6 to Saturday, January 12, 3) Sunday, January 13 to Saturday, January 19, 4) Sunday, January 20 to Saturday, January 26, and 5) Sunday, January 27 to Thursday, January 31. Of course, calendar weeks can start on any day of the week (Saturday, Sunday, Monday, etc.), but are limited to including seven days, unless they are the first or last calendar weeks, in which case they can include fewer than seven days.

[0103] In one example, one or more calendar weeks of a month may not have any key assets associated with those weeks and, therefore, may not have key assets shown on the month card 502. In one example, months that do not include key assets may not have a monthly card shown in the month view 500, as illustrated by the absence of a monthly card for February 2019 between the monthly card 502 for January 2019 and the monthly card 508 for March 2019, which shows key assets 510 for March 2019. In another example, each month may be represented by at least the timeframe reference 504, even if no key assets are shown on the monthly card.

[0104] Additionally, because the January 2019 month card 502 does not fill the entire GUI, the month view 500 also displays a month card 508 below (after) the month card 502. The visible portion of the month card 508 displays key assets 510 for the next month that has key assets to display, e.g., March 2019.

[0105] In some implementations, one or more key assets 506 on the monthly card 502 may include a contextual description (not shown). In various examples, the optional contextual description may be displayed at all times, or only when a user is interacting with, has selected, or is otherwise focused on a particular key asset of the monthly card 502. Any type of user input may be used to determine interest in a particular key asset, such as hovering over the key asset with a mouse cursor, hovering over the key asset with a finger using a touch screen, touch and hold input, and the like.

[0106] The selection of which key assets 506 to display on the month card 502 and which assets to hide from the month view 500 can be based on several factors. In one example, an asset count reference 512 can be included on the month card 502, indicating the total number of assets present in the media library for January 2019, e.g., 78. The asset count reference 512 can also indicate the chronological order of the asset shown within the total number of assets in the example, e.g., 5, indicating that the shown asset is the fifth asset captured in January. In another example, the asset count reference 512 can indicate the number of a single day in January on which the shown asset was captured, rather than the number for the entire month. The asset count reference 512 as shown in the month view 500 is merely one example of a way to relay information to the user, and many other possibilities can be used to provide information about the assets available in the media library for each specific day. Furthermore, in one approach, selection of the asset count reference 512 can open a day view focused on the key assets of January 2019.

[0107] The ribbon element 210 can be shown in the month view 500 to indicate that the current view is the month view 500 by highlighting the month tab 214 in the example. The ribbon element 210 can also be configured to receive user input to navigate to another view using one of the tabs (e.g., the year tab 212, the day tab 216, the all tab 218). The day view can include individual day cards and aggregated cards, as appropriate.

[0108] Figure 6AAn exemplary year view 600 of a media library application is shown with a focus on a year card 602. This view 600 can be used to display one or more key assets 608 associated with a particular year (2018). In one approach, one or more specific months (e.g., April, June, July, December) of a particular year (e.g., 2018) can have key assets 608 displayed for the year card 602.

[0109] Year card 602 may include a time frame reference 604 (indicating the year as "2018") and / or one or more context descriptions 606. In this example, each context description 606 may indicate the month in which a key asset 608 was derived. In other examples, context description 606 may include a description of an event or activity corresponding to key asset 608.

[0110] In various examples, the optional background description can be displayed at all times, or can be displayed only when the user is interacting with, has selected, or is otherwise focused on a particular key asset of the annual pass 602. Any type of user input can be used to determine interest in a particular key asset, such as hovering over the key asset with a mouse cursor, hovering over the key asset with a finger using a touch screen, touch and hold input, etc.

[0111] The selection of which key assets 608 to display on the year card 602 and which assets to hide from the year view 600 can be based on several factors. In one example, an asset count reference 614 can be included on the year card 602, indicating the total number of assets present in the media library in 2018, e.g., 1043. The asset count reference 614 can also indicate the chronological order of the asset shown in the total number of assets in the example, e.g., 456, indicating that the shown asset is the 456th asset captured in 2018. In another example, the asset count reference 614 can indicate a number for April rather than a full year. The asset count reference 614 as shown in the year view 600 is merely one example of how information can be relayed to the user, and many other possibilities can be used to provide information about the assets available in the media library for each specific year and month. Furthermore, in one approach, selection of the asset count reference 614 can open a day view or a month view focused on the key assets for January 2019.

[0112] In the example, the ribbon element 210 can be shown in the year view 600 to indicate that the current view is the year view 600 by highlighting the year label 212. The ribbon element 210 can also be configured to receive user input to navigate to another view using one of the labels (e.g., the month label 214, the day label 216, the all label 218). If appropriate, the day view can include individual day cards and aggregated cards.

[0113] In one example, the key assets 608 displayed for the year card 602 may be selected from the key assets for the months in 2018. Because the key assets 608 shown for the year card 602 are selected from the key assets for the particular year represented by the year card 602 (e.g., 2018), and not all months may have key assets, as previously discussed, in this example, not every month of 2018 may be shown on the year card 602.

[0114] In the example, one key asset for each month of 2018 (the year represented by year card 602) may be displayed with key assets in a manner where each key asset 608 shown is determined to be the best asset to represent that corresponding month (e.g., most likely to be important, desirable, memorable, beautiful, etc.).

[0115] In one approach, the curation score used to determine key assets can be based on significant events that were important to the user during the corresponding month. For example, if January is the birth month of Mary's son Trevor, one or more key assets shown on the January monthly card could be Trevor's birthdays from the previous year, or generally could be images of Trevor to reflect that January is his birth month. When multiple important people (family, friends, etc.) have birthdays in the same month, a photo of them sharing a common birth month can be prioritized as a key asset. Of course, other memorable, nostalgic, and important events can be reflected in key assets, as will be understood by those skilled in the art reading this specification.

[0116] A single key asset 608 for each month can be selected from the key assets of a particular month based on the curation scores of the various key assets. In one approach, the key asset that obtains the highest curation score in a particular month can be selected as the key asset 608 representing that month.

[0117] In another approach, a threshold curation score can be determined and compared to the curation score calculated for key assets for each month of the year. The threshold curation score can be determined dynamically so that only a certain percentage of assets are selected as key assets (e.g., the top 10%, 6%, 2%, 1%, 0.6%, etc.). In this approach, all curated assets with a curation score greater than or equal to the threshold curation score can be considered key assets for that month.

[0118] In one example, determining which key assets to display for a particular month 608 may include randomly selecting one or more key assets from all key assets for the particular month and displaying the selected key assets on the year card 602. Each time the user navigates to the year card 602, another one or more key assets may be randomly selected and displayed for each of the months displayed on the year card 602. In this manner, each time the year card 602 is navigated to, the year card may be dynamically changed while still displaying only the key assets for the month represented in the year that are most likely to be the best assets from each month.

[0119] In another approach, only a single key asset may be displayed on the year card 602. The key asset 608 selected to represent the year card 602 may be the key asset from a particular year (e.g., 2018) that has a timestamp that is most similar to the current date. For example, if today's date is April 30, 2019, the key asset 608 used to represent the year card 602 for 2018 may preferentially be the key asset from April 2018, or if no key asset exists for April 2018, then the key asset from May 2018. In one example, if no key asset exists for May 2018, a key asset from another month in 2018 may be selected based on the proximity of the key asset's timestamp to the current date.

[0120] The curation score for a particular curated asset may be determined based on one or more factors. Example factors for determining the curation score include, but are not limited to, global aesthetics, the number of shares of the particular asset, the number of views of the particular asset, the number of people identified in the particular asset, the size of the asset grouping that includes the particular asset, the interpolated meaning of the particular asset, etc. Figure 11 An example process for identifying critical assets is described in more detail in .

[0121] Reference again Figure 6A Because the 2018 year card 602 does not fill the entire GUI, the year view 600 also displays a year card 610 below (after) the year card 602. The visible portion of the year card 610 displays key assets 612 for the next year, 2019.

[0122] For Mary in the previous example, as long as the current date is close to Trevor's birthday, she can see her favorite photo of Trevor and his birthday cake from his third birthday party in 2013 on her 2013 annual card. Trevor's birthday photo may be pushed because it has a high curation score based on the number of times Mary has viewed it, the number of times she has shared it, the knowledge that it is a birthday photo (inferring the photo's significance), etc. In addition, since this photo will be a key asset, it may also appear on the monthly card for Trevor's birthday in 2013 in one method.

[0123] Figure 6B Another exemplary year view 616 for a media library application is shown. In year view 616, each year is represented by a single year card, with a single key asset highlighted on the year card. For example, year card 618 for 2015 displays key assets 620 for April 2015, while year card 622 for 2016 displays key assets 624 for April 2016. In this example, in response to the current date being April, key assets 620 and 624 are both selected from April, such that each year card 618 and 622 displays key assets from a similar timeframe in the past, 2015 and 2016.

[0124] In another approach, even when the current year view 616 displays a single asset for each year, the assets selected for display may be from different time periods within the corresponding year.

[0125] transition

[0126] Figure 7 An exemplary transition from a year view 700 to a month view 714 is shown. In this example, year view 700 displays a year card 704 for 2017 and indicates that the current view is a year view by highlighting year label 212 on ribbon 210. Key assets for the selected month are represented on year card 704. Furthermore, year card 704 includes a timeframe reference 708 indicating that the card is for the year "2017." Each of the key assets for each month is indicated by a contextual description 706 indicating which month the key asset represents.

[0127] Furthermore, as shown in year view 700, key asset 702 is the focal point of the view, as indicated by the thick frame surrounding the asset. As will be appreciated by those skilled in the art, any other means of indicating the focal point of view 700 may be used, including not visually indicating the focal point at all. In one approach, key asset 702 may be selected as the focal point in response to user input 712 selecting key asset 702 or some other means of determining the focal point of the current view (such as determining that an asset located near the center of the current view is the focal point). As will be appreciated by those skilled in the art, any other means of determining the focal point of the current view may be used in further approaches.

[0128] In one approach, a user can select a month tab 214 from the ribbon 210 using user input 710. Any type of user input 710 can be used to select the month tab 214, such as a mouse hover, a mouse click, a touch input on a touch screen display, a stylus input on a tablet, a remote control, a trackpad input on a laptop, etc. In response to the user input selecting the month tab 214, the GUI can transition to a month view 714 that maintains focus on the key asset 702.

[0129] In another approach, a user may select a key asset 702 from the annual card 704 using user input 712. Any type of user input 712 may be used to select the key asset 702, such as a mouse hover, a mouse click, a touch input on a touch screen display, a stylus input on a tablet, a remote control, a trackpad input on a laptop, etc. In response to the user input selecting the key asset 702, the GUI may transition to a month view 714 maintaining focus on the key asset 702.

[0130] By maintaining focus on a particular asset, in one example, this means that upon transitioning to the new view, the particular asset is highlighted in the new view (e.g., the largest asset displayed, presented in bold or with a highlighted frame, pre-selected when the view is loaded, etc.). In another example, the particular asset is displayed in the new view, but not necessarily highlighted.

[0131] As shown in month view 714, in one example, a monthly card 720 for April 2017 is shown. The current view is indicated as a month view by highlighting the month label 214 on the ribbon 210. Selected key assets are represented on monthly card 720, including key asset 702, which is the focus of year view 700. Furthermore, monthly card 720 includes a timeframe reference 716 indicating that the month for which the card is presented is "April 2017." Furthermore, monthly card 720 includes a contextual description 718 indicating that key asset 702 is related to "Easter." Month view 714 also displays a portion of the next monthly card 722 for May 2017.

[0132] This transition from the year view 700 to the month view 714 maintains the focus on the key asset 702, providing a convenient way for the user to drill down through the multi-level media library to obtain photos, videos, and other assets from a specific time period related to the key asset 702 highlighted at a higher level (e.g., the year view 700). In this way, based on interaction with the higher-level media library displaying the key asset 702, the user can access additional assets related to the key asset 702 and / or other assets obtained within a time frame similar to the key asset 702.

[0133] Figure 8An exemplary transition from a month view 800 to a day view 820 is shown. In this example, the month view 800 displays a month card 804 for 2017, and the current view is indicated by highlighting the month label 214 on the ribbon element 210. Key assets for April 2017 are shown on the month card 804. Furthermore, the month card 804 includes a timeframe reference 806 indicating that the month for which the card is presented is "April 2017." One of the key assets 802 for April 2017 is indicated with a contextual description 808 indicating that the key asset 802 is related to "Spring Break."

[0134] Furthermore, as shown in month view 800, key asset 802 is the focal point of the view, as indicated by the thick frame surrounding the asset. In one approach, key asset 802 may be selected as the focal point in response to user input 812 selecting key asset 802, or some other means of determining the focal point of the current view (such as determining that the asset located at the center of the current view is the focal point). As will be appreciated by those skilled in the art, any other means of determining the focal point of the current view may be used in further approaches.

[0135] In one approach, a user can select a day tab 216 from the ribbon 210 using user input 810. Any type of user input 810 can be used to select the day tab 216, such as a mouse hover, a mouse click, a touch input on a touch screen display, a stylus input on a tablet, a remote control, a trackpad input on a laptop, etc. In response to the user input selecting the day tab 216, the GUI can transition to a day view 820 that maintains focus on the key assets 802.

[0136] In another approach, a user can select a key asset 802 from the monthly card 804 using user input 812. Any type of user input 812 can be used to select the key asset 802, such as a mouse hover, a mouse click, a touch input on a touch screen display, a stylus input on a tablet, a remote control, a trackpad input on a laptop, etc. In response to the user input selecting the key asset 802, the GUI can transition to a day view 820 that maintains focus on the key asset 802.

[0137] As shown in day view 820, in one example, an aggregate card 812 for April 17-21, 2017, is shown, where the current view is indicated as a day view by highlighting day label 216 on ribbon element 210. This aggregate card depicts a trip spanning several consecutive days, in this particular case, Spring Break 2017. Selected key assets are represented on aggregate card 812, including key asset 802, which is the focus of month view 800. Furthermore, aggregate card 812 includes a timeframe reference 814 indicating that the card is for the consecutive days of "April 17-21, 2017." Similarly, aggregate card 812 includes a contextual description 816 indicating that key asset 802 and / or aggregate card 812 are related to "Spring Break." Day view 820 also displays a portion of the next day card 818 for April 22, 2017. In Day Card 818, one of the key assets is indicated to be related to the "Jets Game" which may have occurred on April 22, 2017.

[0138] This transition from the month view 800 to the day view 820 maintains the focus on the key asset 802 and provides a convenient way for the user to drill down through the multi-level media library to obtain photos, videos, and other assets from a specific time period related to the key asset 802 highlighted at a higher level (e.g., the month view 800). In this way, based on interaction with the higher level of the media library displaying the key asset 802, the user can access additional assets related to the key asset 802 and / or other assets obtained within a time frame similar to the key asset 802.

[0139] Figure 9 An exemplary transition from a day view 900 to an all-asset view 920 is shown. In this example, day view 900 displays a day card 908 for May 5, 2017, and indicates that the current view is a day view by highlighting day label 216 on ribbon 210. Curated assets from May 5 are represented on day card 908. Furthermore, day card 908 includes a timeframe reference 904 indicating that the card is for "May 5, 2017." The largest curated asset for that day is indicated by a contextual description 906 indicating that the curated asset is related to "May 5th."

[0140] Day view 900 also displays an aggregate card 910 following day card 900, where a time frame reference 912 indicates that the aggregation period is "May 10-12, 2017," and a context description 914 indicates that the time frame is related to "Tahoe Cabin," most likely a trip to Lake Tahoe, California, where the user stayed in a cabin on the lake.

[0141] Furthermore, as shown in day view 900, curated asset 902 is the focal point of the view, as indicated by the thick frame surrounding the asset. In one approach, curated asset 902 can be selected as the focal point in response to user input 918 selecting curated asset 902, or some other means of determining the focal point of the current view (such as determining that an asset located near the center of the current view is the focal point). As will be appreciated by those skilled in the art, any other means of determining the focal point of the current view can be used in further approaches.

[0142] In one approach, a user can select all tabs 218 from the ribbon 210 using user input 916. Any type of user input 916 can be used to select all tabs 218, such as a mouse hover, a mouse click, a touch input on a touch screen display, a stylus input on a tablet, a remote control, a trackpad input on a laptop, etc. In response to the user input selecting all tabs 218, the GUI can transition to an all assets view 920 that maintains focus on the curated assets 902.

[0143] In another approach, the user can select a curated asset 902 from the day card 908 using user input 918. Any type of user input 918 can be used to select the curated asset 902, such as a mouse hover, a mouse click, a touch input on a touch screen display, a stylus input on a tablet, a remote control, a trackpad input on a laptop, etc. In response to the user input selecting the curated asset 902, the GUI can transition to an all assets view 920 that maintains focus on the curated asset 902.

[0144] By maintaining focus on a particular asset, after transitioning to the new view, all assets view 920 is scrolled to a position showing the particular asset. As shown in all assets view 920, in one example, curated asset 902 is shown in the center of the display, and ribbon element 210 shows that the current view is all assets view 920 by highlighting all tab 218 and de-highlighting day tab 216.

[0145] The all assets view 920 displays every asset of the media library in chronological order, including assets that have been filtered out from higher-level views (e.g., day view, month view, year view) because such assets include undesirable content, such as blurry or out of focus, are for practical purposes (photos of receipts, data and information, whiteboards, drawings and sketches, shopping lists, reminder lists, screenshots, etc.), are substantially duplicates of other curated assets promoted to the higher-level view, and so on.

[0146] This transition from the day view 900 to the all assets view 920 maintains the focus on the curated assets 902 and provides a convenient way for the user to drill down through the multi-level media library to obtain photos, videos, and other assets from a specific time period related to the key asset 902 highlighted at a higher level (e.g., the day view 900). In this way, based on interaction with a higher level of the media library displaying the key asset 902, the user can access additional assets related to the key asset 902 and / or other assets obtained within a time frame similar to the key asset 902, particularly where such an asset is only displayed in the all assets view 920 due to the content included therein. However, in one approach, the user does not need to scroll through junk images and videos, blurry images or videos, useful pictures or videos, and / or duplicate images or videos at the higher levels of the media library because such assets are only displayed in the all assets view 920.

[0147] Exemplary Process

[0148] In order to enable the reader to clearly understand the technical concepts described herein, the following process describes the specific steps performed in a specific order. However, one or more steps of a specific process can be rearranged and / or omitted while remaining within the expected scope of the technology disclosed herein. In addition, different processes and / or their steps can be combined, recombined, rearranged, omitted and / or performed in parallel to create different processing flows that are also within the expected scope of the technology disclosed herein. In addition, although the following process can omit or briefly summarize some details of the technology disclosed herein for the sake of clarity, the details described in the above paragraphs can be combined with the process steps described below to obtain a more complete and comprehensive understanding of these processes and the technology disclosed herein.

[0149] Figure 10 Flowchart of an exemplary process 1000 for curating assets of a media library. Assets of a media library may be curated using method 1000 for Figures 2 to 6B Curate using any of the exemplary views described in .

[0150] See again Figure 10 In operation 1002, substantially duplicate assets (e.g., images that are substantially similar to other images, videos that are substantially similar to other videos) are identified in a media library. Any method for determining similar or duplicate images or videos may be used, such as file name and size comparison, pixel-by-pixel analysis, performing a hash of the file contents of two different files and comparing the hash results, etc.

[0151] Substantially similar means that the primary focus and intent of the asset is the same for each of the similar assets, even though there may be subtle differences in the actual images or videos. For example, a sunset captured using burst mode may have three or more images of the same sunset captured within a very short period of time. In curating assets, it is desirable to include only one of those sunset images, and it is particularly desirable to include the best of those sunset images.

[0152] In one approach, a determination can be made as to which asset is the best asset in a collection of substantially similar assets based on a number of factors. Factors used in this determination may include an aesthetic score (as described later), the number of times the asset has been shared by users, and the number of times users have viewed the asset. In other examples, other relevant factors may be used in place of or in combination with any of these identified factors.

[0153] As a result of operation 1002 , duplicate assets may be filtered out from other assets in the media library.

[0154] In operation 1004, poor quality assets are identified in the media library. Poor quality can indicate any of a number of characteristics of a single asset, such as the asset appearing blurry, faded, or overexposed, too dark, or underexposed. Additionally, assets that were captured accidentally, such as photos in a user's pocket, may also be identified.

[0155] After all of the assets exhibiting poor quality are identified, these poor quality assets may be filtered out from other assets in the media library as a result of operation 1004 .

[0156] In operation 1006, assets with a utility purpose are identified in the media library. As known to those skilled in the art, a utility purpose indicates that the asset was acquired to serve a non-aesthetic purpose. Some examples of assets with a utility purpose include, but are not limited to, photos of receipts, photos of a whiteboard showing meeting notes, instructional videos showing techniques for performing an activity (e.g., sharpening a knife, decorating a cake, etc.), photos of documents or paperwork, photos of drawings or sketches, photos of shopping lists, photos of reminders, screenshots, etc.

[0157] After all of the useful assets are identified, as a result of operation 1006 , these useful assets may be filtered out from other assets in the media library.

[0158] After operations 1002, 1004, and 1006, the remaining assets in the media library that have not been filtered out can be referred to as first curated assets. Operations 1002, 1004, and 1006 can be performed in any order in method 1000, and one or more of operations 1002, 1004, and 1006 can be omitted in some methods.

[0159] Figure 11Flowchart of an exemplary process 1100 for determining key assets of a media library. The key assets of the media library can be determined using the method 1100. Figures 2 to 6B The curated assets are determined based on any of the exemplary views described above.

[0160] See again Figure 11 In operation 1102 , a curation score is determined for each asset in a set of assets (which, in one approach, may include all first curated assets of a media library).

[0161] The curation score may be determined based on one or more factors. Exemplary factors may include, but are not limited to, global aesthetics, the aesthetic score of a particular asset, the number of shares of a particular asset, the number of views of a particular asset, the number of people identified in a particular asset, the size of the asset grouping that includes the particular asset, and the estimated significance of the particular asset.

[0162] Global aesthetics describes the highest aesthetic score achievable using an algorithm or set of algorithms, and represents the most aesthetically pleasing image or series of images (in the case of videos) as determined by domain experts. Global aesthetics can be compared to the individual aesthetic scores calculated for individual assets to determine how well a particular asset's rating compares to the global standard. To accomplish this comparison, aesthetic scores are calculated for each of the assets individually using the same algorithm or set of algorithms used to calculate global aesthetics. The difference between the global aesthetics and the individual aesthetics for each asset is then determined.

[0163] In one approach, only assets that achieve an aesthetic score that meets a certain threshold are considered for further processing, while unattractive assets are disregarded. In a different approach, individual aesthetic scores can be used in a weighted overall analysis of a particular asset.

[0164] This weighted overall analysis can assign specific weights to several different factors, and then weight these factors together to arrive at a weighted curation score for a particular asset. As known to those skilled in the art, any method can be used to determine the specific weights for various factors.

[0165] In one example, a photo that a user has shared with many others in the past two weeks may indicate that the user really likes the photo and would like to see it more often. Therefore, a weighted overall analysis for a particular asset may consider the number of times the particular asset has been shared by the user. This determination may be further restricted to a recent timeframe to remove the influence of the user's past tendencies that may not reflect current preferences.

[0166] In another example, a photo that a user has viewed repeatedly over the past two weeks may indicate that the user really likes the photo and would like to see it more often. Therefore, a weighted overall analysis for a particular asset may consider the number of times the particular asset has been viewed by the user. This determination may be further restricted to a recent timeframe to remove the influence of the user's past tendencies that may not reflect current preferences.

[0167] In another example, a photo showing many family members may be more popular with a user than a photo that does not include any faces or a photo of only one friend. Thus, a weighted overall analysis of a particular property may take into account the number of people identifiable at the particular property (e.g., the number of faces recognized by facial recognition software and the possible relationships between those people and the user).

[0168] In another example, a user may take many photos at a concert or while traveling because the user wants to capture and remember the time. All of these photos can be grouped together based on whether they are from the same event (concert) or the same trip. Thus, a weighted overall analysis of a particular asset can take into account the size of the asset group that includes the particular asset.

[0169] In another example, special occasions and events are often more meaningful to users than random photos not associated with a specific event or time in the user's life. Therefore, a weighted overall analysis of a particular asset can consider the estimated meaning of the particular asset. Metadata, creation relationships, the people depicted in the asset, and any other relevant characteristics of the asset can be used to determine the meaning of a particular asset. Some example meanings include, but are not limited to, birthdays, weddings, anniversaries, births of children, graduations, travel, religious events, and the like.

[0170] In operation 1104 , key assets in the asset set are determined based on the curation score of the asset set.

[0171] In one approach, any asset that meets a certain threshold to achieve a weighted average across all factors (e.g., curation score) may be considered a second-curated asset or a key asset, while assets that do not meet the weighted average threshold are not key assets and remain only first-curated assets.

[0172] In another example, the curated asset that obtains the highest curation score for a specific time frame (eg, a day, a week, a month, a year) may be selected as the key asset representing the time frame.

[0173] In another example, a threshold curation score can be determined and compared to a curation score calculated for curated assets for a particular timeframe (e.g., a day, a week, a month, a year). The threshold curation score can be dynamically determined to select only a certain percentage of assets as key assets (e.g., the top 10%, 5%, 2%, 1%, 0.5%, etc.). In this approach, all curated assets with a curation score greater than or equal to the threshold curation score can be considered key assets for the particular timeframe (e.g., a day, a week, a month, a year).

[0174] Figure 12 is a flow chart of an exemplary process 1200 for selecting and displaying assets for a media library. Figures 2 to 6B Method 1200 may be used to select and display assets for a media library using any of the exemplary views described in

[00145] In one approach, exemplary assets that may be included in a media library include, but are not limited to, still images, videos, animated images, composite presentations, panoramic images, and the like.

[0175] Reference again Figure 12 In operation 1202, the computing device may generate a first card (e.g., a day card, an aggregate card). Each first card may represent a corresponding different day or an aggregate of several days to be displayed in chronological order in a day view of the GUI. In one example, the day view may include multiple day cards for a single day in response to multiple types of events captured on the same day. In this example, assets captured at the user's work location, assets captured at the user's home location, assets captured during travel outside the user's premises area, and assets captured for any other events may be displayed on separate cards on the same day they were captured. As will be apparent to one skilled in the art reading this disclosure, other event types may be used to determine how to separate assets captured on the same day.

[0176] Additionally, each day card may include first curated assets (e.g., filtered assets) from a media library having many assets, where each first card represents a corresponding single day or an aggregation of consecutive days. The filtered assets may be derived from a curation process, such as Figure 10 Exemplary process 1000 is shown.

[0177] When assets are captured during a trip over several days, or when there are not enough assets available for one or more days to display in the daily aggregate, the daily aggregate can be shown on the day card in the day view.

[0178] In one approach, the filtered assets exclude duplicate images and videos, junk assets (blurry, unrecognizable content, small photos, low light, faded, etc.), and useful assets, as previously described in more detail. The filtered assets are those media library assets that remain after filtering out the undesirable assets.

[0179] Back to Figure 12 In operation 1204, the computing device may generate a second card (month card) representing a corresponding different month to be displayed in chronological order in the month view of the GUI. Each month card may include a second curated asset (key asset) selected from one of the day cards representing a day or an aggregate of consecutive days in the corresponding month. The key asset may be derived from the curation process, such as Figure 11 Example process 1100 is shown.

[0180] Back to Figure 12 In operation 1206, the computing device may generate a third card (year card) representing a corresponding different year to be displayed in chronological order in the year view of the GUI. Each year card may include one or more key assets selected from the month cards representing a month in the corresponding year. The month represented in the corresponding year may be selected to be closest to the current month so that each time the user views the year view, the images, videos, or other assets displayed are relevant to the current date and may change daily to keep the interface looking fresh to the user.

[0181] In operation 1208, a GUI may be presented on a display of the computing device. The GUI may show any particular view, and in one example, the GUI may show a year view corresponding to a particular year card for a particular year.

[0182] In operation 1210, a computing device may receive a first user input selecting a particular key asset to be presented on a particular annual pass. This first user input may be a direct selection of the particular key asset, or an inferred selection of the key asset based on the location of the key asset in the GUI when a different tab is selected to direct the GUI to change views.

[0183] In response to the first user input, the computing device may present a transition from the year view to the month view while maintaining focus on a particular key asset in operation 1212. Maintaining focus of the current view on the selected key asset includes displaying the key asset after transitioning to the next view and / or displaying a grouping of assets including the selected key asset after the transition (even if the selected key asset is not shown in the GUI but can be accessed by selecting one of the assets shown in the grouping).

[0184] In response to the transition, the computing device presents a GUI showing a monthly view of a particular monthly card displaying a particular key asset (or at least a time frame representing when the particular key asset was captured) in operation 1214. The particular monthly card corresponds to a particular month of a particular year.

[0185] In another approach, in response to the video being displayed in the GUI, the video can be automatically played (e.g., looped or played only once or twice). In this way, whenever a view of the GUI includes a video, the video is automatically played to provide focus on the view, rather than simply presenting a still image taken from the video.

[0186] Similarly, in one approach, in response to an animated image being displayed in the GUI, the animated image can be automatically played (e.g., looped or played only once or twice). In this way, whenever a view of the GUI includes an animated image, the animated image is automatically played to provide focus to the view, rather than simply presenting a static image taken from the animated image.

[0187] In one example, the GUI may include a ribbon element that includes one or more tabs for other views available in the GUI. For example, the ribbon element may include tabs for an all assets view, a month view, a year view, and a day view. Each tab, when selected, causes the GUI to display the specific card associated with that tab in the appropriate view of the GUI, e.g., the month card is shown in the month view, the day card is shown in the day view, etc. The ribbon element may be selectively positioned along the top, bottom, or side of the GUI, it may be automatically hidden from view when not in use, and it may have a transparent background, an opaque background, or a translucent background. In addition, the various labels may include text descriptors, graphics, or a combination of graphics and text to distinguish what the label represents.

[0188] In one example, the first user input may be a selection of one of the tabs in the ribbon element.

[0189] In another example, a plurality of assets of a media library may be filtered to generate a first curated asset (eg, a filtered asset). This filtering of assets in the media library may result in the removal of duplicate assets, low-quality assets, and assets that have a practical purpose in the method.

[0190] To determine which assets to show in some of the views (e.g., year view, month view) and which larger assets to show in some of the views (e.g., year view, month view, day view), a curation score can be determined for the filtered assets (e.g., the first curated assets remaining after filtering out junk, duplicate, and useful assets). In another approach, key assets (e.g., the second curated assets) can be determined based on the curation scores of multiple filtered assets.

[0191] The curation score for a particular asset may be based on one or more of the following factors: global aesthetics, the number of shares of the particular asset, the number of views of the particular asset, the number of people identified in the particular asset, the size of the asset grouping that includes the particular asset, and the estimated significance of the particular asset. These factors may be combined to form an overall curation score for the particular asset with equal weight, or according to a weighting scheme that causes one or more of the (high-weighted) factors to influence the overall curation score more than other (low-weighted) factors.

[0192] In another approach, key assets for the month and year views can be determined based on behavioral curation of assets in the media library. In this approach, the past behavior of a user of the media library can be used to determine the user's preferences for managing the assets of the media library, determining which assets to display more prominently (e.g., larger than other assets on a card), which assets to demote from most views (e.g., filtered out of the year, month, and day views), etc.

[0193] In an additional approach, a user's relationship information can be used to determine which assets are more likely to be viewed favorably by the user. Relationship information can be used to determine who the people identified in photos and videos are to the user, e.g., mother, father, sister, brother, child, etc. Assets that include family members may be more important to the user than images that do not. Similarly, friends can be determined from photos and videos based on how often people appear in assets in the media library, how the user treats assets with specific people in them (e.g., multiple views, multiple shares with one or more contacts who may be the person in the asset, etc.).

[0194] In another approach, a knowledge graph can be used to help identify key assets for a media library. The knowledge graph can associate assets in the media library and metadata associated with the assets with stored data and metadata of users, users' contacts, users' relationship information, locations, time frames, and other information that can be used to identify connections between data.

[0195] A knowledge graph metadata network associated with assets stored in a media library may be generated. The metadata network may include related metadata assets that describe characteristics associated with the assets of the media library. Each metadata asset may describe characteristics associated with one or more assets in the media library. In a non-limiting example, a metadata asset may describe characteristics associated with multiple images and / or videos in the media library. Each metadata asset may be represented as a node in the metadata network and may be associated with at least one other metadata asset (node). Each correlation between metadata assets may be represented as an edge in the metadata network positioned between nodes representing related metadata assets. By using such a large knowledge graph metadata network to describe the connections between assets, users, users' contacts, locations, time frames, etc., key assets that represent images and people that users want to see more prominently in the media library can be more carefully identified and can be used to locate time frames to search for other assets in lower-level media libraries.

[0196] For example, a photo of a group of people may not be aesthetically pleasing relative to the global aesthetic, but it may be commonly viewed by the user, placed by the user on a laptop's wallpaper, and sent via text messages to a group of contacts identified as being in the photo. Based on the user's behavior with respect to the photo, this photo, even if it does not have a high curation score, may ultimately be considered a key asset and may be prominently displayed on a card in the timeframe in which the photo was captured because it is a key asset.

[0197] In one approach, a GUI may be presented that displays a day view for a particular day card (in response to a user input selecting the day view). Based on the curation score of the at least one filtered asset, the size of the at least one filtered asset displayed in the particular day card may be larger than the other filtered assets displayed in the particular day card. In other words, the filtered asset selected as a key asset may be displayed larger than the other filtered assets on the particular day.

[0198] In this method, the computing device may receive a second user input selecting the filtered assets to be displayed for a particular day card. In response to receiving the second user input, the computing device may present a transition from the day view to the all assets view, which maintains the focus on the filtered assets. Furthermore, in response to the transition, the computing device may present a GUI that shows an all assets view of a portion of the plurality of assets of the media library sorted chronologically to allow the user to easily browse through the levels of the media library in an intuitive manner. In this view, the size of all assets currently displayed in the GUI may be substantially equal. The user can browse through this view to access all assets stored to the media library, regardless of the content and quality of the assets (e.g., the assets are unfiltered).

[0199] According to one example, a particular month card may be limited to displaying up to five key assets selected from different weeks of the particular month represented by the particular month card. Each key asset displayed in the month card may be selected based on the curation score of the filtered assets of the day card representing the day in the particular month. In this example, a second user input may be received selecting a key asset to be displayed for the month card, and in response to the second user input, the computing device may present a transition from the month view to the day view that maintains focus on the key asset. Thereafter, in response to the transition, the computing device may present a GUI that shows a day view of the particular day card including the key asset to allow the user to easily navigate through the levels of the media library in an intuitive manner.

[0200] In one approach, each key asset displayed in a particular yearly card may be selected based on one or more factors. These factors may include, but are not limited to, a curation score of the key assets of the monthly card representing the month of the particular year represented by the particular yearly card, and similarity between the current date and the time period of the key assets of the monthly card representing the month of the particular year.

[0201] Figure 13 is a flow chart of an exemplary process 1300 for selecting and displaying assets for a media library. Figures 2 to 6B Method 1300 may be used to select and display assets of a media library using any of the exemplary views described in

[00155] In one approach, exemplary assets that may be included in a media library include, but are not limited to, still images, videos, animated images, composite presentations, panoramic images, and the like.

[0202] Reference again Figure 13 In operation 1302, the computing device may generate a day view of first cards (e.g., day cards and / or aggregate cards) to be displayed in chronological order in the GUI. Each day card may include first curated assets (e.g., filtered assets) representing a corresponding single day or an aggregate of consecutive days. In one example, the day view may include multiple day cards for a single day corresponding to multiple types of events captured on the same day.

[0203] In this example, filtered assets captured at the user's work location, filtered assets captured at the user's home location, filtered assets captured during travel outside the user's premises area, and filtered assets captured for other event types (dinners, parties, etc.) can be displayed on separate day cards for the same day they were captured. As will be apparent to one skilled in the art reading this disclosure, other event types can also be used to determine how to separate filtered assets captured on the same day.

[0204] Additionally, filtered assets can be derived from the curation process, such as Figure 10 Exemplary process 1000 is shown.

[0205] When the filtered assets are captured in a trip over several days, or there are not enough assets available to display one or more days in a multi-day aggregation, an aggregation of the filtered assets from multiple consecutive days can be shown on an aggregate card in the day view.

[0206] In one approach, the filtered assets exclude duplicate images and videos, junk assets (blurry, unrecognizable content, small photos, low light, faded, etc.), and useful assets, as previously described in more detail. The filtered assets are those media library assets that remain after filtering out the undesirable assets.

[0207] Back to Figure 13 In operation 1304, the computing device may generate a month view of second cards (month cards) representing corresponding different months to be displayed in chronological order in the GUI. Each month card may include a second curated asset (key asset) selected from one of the day cards representing a day or an aggregate of consecutive days in the corresponding month. The key asset may be derived from the curation process, such as Figure 11 Example process 1100 is shown.

[0208] Back to Figure 13 In operation 1306, the computing device may generate a year view of third cards (year cards) representing corresponding different years to be displayed in chronological order in the GUI. Each year card may include one or more key assets selected from the month cards representing a month in the corresponding year. The month represented in the corresponding year may be selected to be closest to the current month so that each time the user views the year view, the images, videos, or other assets displayed are relevant to the current date and may change daily to keep the interface looking fresh to the user.

[0209] In operation 1308, a GUI showing at least a portion of a card (e.g., a daily card, an aggregate card, a monthly card, or a yearly card) may be presented in a corresponding view (a daily view, a monthly view, or a yearly view) on a display of the computing device. The GUI may show a portion, an entire card, or multiple cards of any type.

[0210] In operation 1310, the computing device may receive input selecting the current card to replace a card already displayed in the GUI. The input may be a direct selection of a specific asset displayed in a card, or an inferred selection of a specific asset based on the location of a key asset in the GUI when a different tab is selected to direct the GUI to change views.

[0211] In response to the input, the computing device may switch the GUI to show the current card while maintaining focus on a specific asset from a card in operation 1312. Maintaining focus on the specific asset from the current card may include displaying the specific asset after transitioning to the current card and / or displaying an asset grouping that includes the specific asset after transitioning to the current card (even if the specific asset is not shown in the GUI but is accessible by selecting one of the assets shown in the grouping).

[0212] In one approach, in response to a video being displayed in the GUI, the video can be played (e.g., looped or played only once or twice). In this way, whenever a view of the GUI includes a video, the video is automatically played to provide focus on the view, rather than simply presenting a still image taken from the video.

[0213] Similarly, in one approach, in response to an animated image being displayed in the GUI, the animated image can be played (e.g., looped or played only once or twice). In this way, whenever a view of the GUI includes an animated image, the animated image is automatically played to provide focus to the view, rather than simply presenting a static image taken from the animated image.

[0214] In one example, the GUI may include a ribbon element that includes one or more tabs for other views available in the GUI. For example, the ribbon element may include tabs for an all assets view, a month view, a year view, and a day view. Each tab, when selected, causes the GUI to display the specific card associated with that tab in the appropriate view of the GUI, e.g., the month card is shown in the month view, the day card is shown in the day view, etc. The ribbon element may be selectively positioned along the top, bottom, or side of the GUI, it may be automatically hidden from view when not in use, and it may have a transparent background, an opaque background, or a translucent background. In addition, the various labels may include text descriptors, graphics, or a combination of graphics and text to distinguish what the label represents.

[0215] In one example, the input may be a selection of one of the tabs in the ribbon, causing the GUI to display a card of the view corresponding to the selected tab representing one or more assets from a timeframe associated with the current card.

[0216] To determine which assets to show in some of the views (e.g., year view, month view) and which larger assets to show in some of the views (e.g., year view, month view, day view), a curation score can be determined for the filtered assets (e.g., the first curated assets remaining after filtering out junk, duplicate, and useful assets). In another approach, key assets (e.g., the second curated assets) can be determined based on the curation scores of multiple filtered assets.

[0217] Any method or technique for determining key assets to display to the month view and year view may be used, as described herein, or known to those skilled in the art.

[0218] In one approach, the current card can be a specific day card, where at least one filtered asset is displayed in the specific day card at a larger size than other filtered assets displayed in the specific day card based on the curation scores of the filtered assets. In some approaches, assets achieving higher curation scores can be considered key assets and displayed more prominently on their corresponding day cards.

[0219] In response to receiving input selecting filtered assets to be displayed for a particular day card, the computing device may display a portion of the entire assets of the media library sorted in chronological order while maintaining focus on the selected filtered asset in the display area, where the size of the portion of multiple assets displayed in the display area is substantially equal.

[0220] In another approach, the current card can be a specific monthly card that displays at least one key asset for the corresponding month. The key assets shown on the monthly card can be selected based on the curation scores of all filtered assets in the corresponding month, where in one example, the highest-scoring filtered asset is the key asset selected for display.

[0221] In response to receiving input selecting a key asset to display for a particular month card, the computing device may display a particular day card showing the selected key asset on the day card.

[0222] In one approach, the monthly card may be limited to displaying a maximum of five key assets, one for each calendar week of the month.

[0223] In another example, the current card may be a year-specific card that displays one or more specific key assets for a month of the corresponding year. The key assets displayed may be selected based on the curation scores of the key assets of the monthly card representing the month of the corresponding year represented by the year-specific card. The key assets displayed may be further selected based on the similarity between the current date and the time period of the key assets representing the month of the corresponding year. For example, if the current month is April, the key assets selected for the 2011 year-specific card may be selected from the key assets for April 2011.

[0224] In a further method, in response to receiving input selecting a certain key asset to be displayed for a certain annual card, the computing device displays the certain monthly card including the certain key asset in the GUI.

[0225] Graphical User Interface

[0226] The present disclosure describes above various graphical user interfaces (GUIs) for implementing various features, processes, or workflows. These GUIs can be presented on various electronic devices, including but not limited to laptop computers, desktop computers, computer terminals, television systems, tablet computers, e-book readers, and smart phones. One or more of these electronic devices may include a touch-sensitive surface. The touch-sensitive surface can process multiple simultaneous input points, including processing data related to the pressure, degree, or position of each input point. Such processing can facilitate gestures performed with multiple fingers, including pinching and swiping.

[0227] When this disclosure refers to "selecting" a user interface element in a GUI, these terms are understood to include clicking or "hovering" over a user interface element with a mouse or other input device, or touching, tapping, or gesturing on a user interface element with one or more fingers or a stylus. A user interface element can be a virtual button, menu, selector, switch, slider, swipe, knob, thumbnail, link, icon, radio button, check box, and any other mechanism for receiving input from a user or providing feedback to a user.

[0228] privacy

[0229] As described above, one aspect of the present technology is to collect and use data from various sources to select and display assets from a media library that may be of interest to a user on a GUI. The present disclosure contemplates that, in some instances, such collected data may include personal information data that uniquely identifies or can be used to contact or locate a particular person. Such personal information data may include demographic data, location-based data, phone numbers, email addresses, Twitter IDs, home addresses, data or records related to a user's health or fitness level (e.g., vital sign measurements, medication information, exercise information), date of birth, or any other identifying or personal information.

[0230] This disclosure recognizes that the use of such personal information data within the present technology can be used to benefit users. For example, this personal information data can be used to select images, videos, and other assets that are of greater interest to the user. Furthermore, this disclosure contemplates other uses of personal information data that can benefit users. For example, health and fitness data can be used to provide insights into the user's overall health or as positive feedback to individuals using technology to pursue health goals.

[0231] This disclosure contemplates that entities responsible for collecting, analyzing, disclosing, transmitting, storing, or otherwise using such personal information will adhere to established privacy policies and / or practices. Specifically, such entities should implement and adhere to privacy policies and practices that are recognized as meeting or exceeding industry or government requirements for maintaining the privacy and security of personal information. Such policies should be easily accessible to users and updated as the collection and / or use of data changes. Personal information collected from users should be used for the entity's legitimate and reasonable purposes and not shared or sold beyond those legitimate uses. Furthermore, such collection / sharing should be conducted with the user's informed consent. Furthermore, such entities should consider taking any necessary steps to safeguard and secure access to such personal information and ensure that others with access to the personal information adhere to their privacy policies and procedures. Furthermore, such entities may subject themselves to third-party assessments to demonstrate compliance with widely accepted privacy policies and practices. Furthermore, policies and practices should be tailored to the specific type of personal information collected and / or accessed and to applicable laws and standards, including jurisdictional considerations. For example, in the United States, the collection or access of certain health data may be governed by federal and / or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA); whereas health data in other countries may be subject to other regulations and policies and should be handled accordingly. Therefore, different privacy practices should be maintained for different types of personal data in each country.

[0232] Regardless of the foregoing, the present disclosure also contemplates implementation schemes in which users selectively block the use or access of personal information data. That is, the present disclosure contemplates providing hardware elements and / or software elements to prevent or block access to such personal information data. For example, with respect to the selection and display of assets from a media library, the subject technology may be configured to allow a user to “opt in” or “opt out” of participating in the collection of personal information data during registration for the service or at any time thereafter. In addition to providing “opt-in” and “opt-out” options, the present disclosure contemplates providing notifications related to the access or use of personal information. For example, a user may be notified that their personal information data will be accessed upon downloading an application, and then be reminded again just before the personal information data is accessed by the application.

[0233] Furthermore, it is an object of the present disclosure that personal information data should be managed and processed to minimize the risk of unintentional or unauthorized access or use. Risk can be minimized by limiting data collection and deleting data once it is no longer needed. In addition, and when applicable, including in certain health-related applications, data de-identification can be used to protect the privacy of users. De-identification can be facilitated by removing specific identifiers (e.g., date of birth, etc.), controlling the amount or specificity of stored data (e.g., collecting location data at the city level rather than the address level), controlling how data is stored (e.g., aggregating data across users), and / or other methods, where appropriate.

[0234] Thus, while the present disclosure broadly covers the use of personal information data to implement one or more of the various disclosed embodiments, the present disclosure also contemplates that the various embodiments may be implemented without access to such personal information data. That is, the various embodiments of the present technology will not fail to function due to the absence of all or a portion of such personal information data. For example, images, videos, and other assets from a media library may be selected and presented to a user by inferring preferences based on non-personal information data or an absolute minimum amount of personal information, such as content being requested by a device associated with the user, other non-personal information available to a behavioral curation process, or publicly available information.

[0235] Exemplary system architecture

[0236] Figure 14 It is achievable Figures 1 to 13 14. A block diagram of an exemplary computing device 1400 illustrating features and processes of a computer system. The computing device 1400 may include a memory interface 1402, one or more data processors, an image processor, and / or a central processing unit 1404, and a peripheral device interface 1406. The memory interface 1402, one or more processors 1404, and / or the peripheral device interface 1406 may be separate components or may be integrated into one or more integrated circuits. The various components in the computing device 1400 may be coupled by one or more communication buses or signal lines.

[0237] Sensors, devices, and subsystems can be coupled to the peripherals interface 1406 to facilitate a variety of functions. For example, a motion sensor 1410, a light sensor 1412, and a proximity sensor 1414 can be coupled to the peripherals interface 1406 to facilitate orientation, lighting, and proximity functions. Other sensors 1416 can also be connected to the peripherals interface 1406, such as a global navigation satellite system (GNSS) (e.g., a GPS receiver), a temperature sensor, a biometric sensor, a magnetometer, or other sensing devices, to facilitate related functions.

[0238] Camera functions, such as taking pictures and video clips, can be facilitated by a camera subsystem 1420 and an optical sensor 1422, such as a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS) optical sensor. The camera subsystem 1420 and the optical sensor 1422 can be used to collect images of the user to be used during authentication of the user, for example, by performing facial recognition analysis.

[0239] Communication functionality may be facilitated by one or more wireless communication subsystems 1424, which may include radio frequency receivers and transmitters and / or optical (e.g., infrared) receivers and transmitters. The specific design and implementation of the communication subsystems 1424 may depend on the communication network over which the computing device 1400 is intended to operate. For example, the computing device 1400 may include a device designed to communicate over a GSM network, a GPRS network, an EDGE network, a Wi-Fi or WiMax network, and a Bluetooth® network. TM Network-operated communication subsystem 1424. Specifically, the wireless communication subsystem 1424 may include a hosting protocol so that the device 100 can be configured as a base station for other wireless devices.

[0240] The audio subsystem 1426 can be coupled to a speaker 1428 and a microphone 1430 to facilitate voice-enabled functions such as speaker recognition, voice replication, digital recording, and telephony. The audio subsystem 1426 can be configured to facilitate, for example, processing voice commands, voiceprint identification, and voice authentication.

[0241] I / O subsystem 1440 may include a touch surface controller 1442 and / or other input controllers 1444. Touch surface controller 1442 may be coupled to touch surface 1446. Touch surface 1446 and touch surface controller 1442 may detect contact and its movement or interruption using, for example, any of a variety of touch-sensitive technologies, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with touch surface 1446.

[0242] The one or more other input controllers 1444 may be coupled to other input / control devices 1448, such as one or more buttons, rocker switches, a thumb wheel, an infrared port, a USB port, and / or a pointer device (such as a stylus). The one or more buttons (not shown) may include an up / down button for volume control of the speaker 1428 and / or the microphone 1430.

[0243] In one embodiment, pressing the button for a first duration can unlock touch surface 1446; and pressing the button for a second duration, longer than the first duration, can turn computing device 1400 on or off. Pressing the button for a third duration can activate a voice control or voice command module that enables a user to speak a command into microphone 1430 to cause the device to execute the command. The user can customize the functionality of one or more buttons. For example, touch surface 1446 can also be used to implement virtual or soft buttons and / or a keyboard.

[0244] In some implementations, the computing device 1400 can render recorded audio and / or video files, such as MP3, AAC, and MPEG files. In some implementations, the computing device 1400 can include the functionality of an MP3 player, such as an iPod or iPod Touch. TM .

[0245] The memory interface 1402 can be coupled to a memory 1450. The memory 1450 may include high-speed random access memory and / or non-volatile memory, such as one or more magnetic disk storage devices, one or more optical storage devices, and / or flash memory (e.g., NAND, NOR). The memory 1450 may store an operating system 1452, such as Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or an embedded operating system (such as VxWorks).

[0246] The operating system 1452 may include instructions for handling basic system services and for performing hardware-related tasks. In some implementations, the operating system 1452 may be a kernel (e.g., a UNIX kernel). In some implementations, the operating system 1452 may include instructions for performing voice authentication. For example, the operating system 1452 may implement curation of assets in a media library, such as a reference image. Figures 1 to 13 As stated.

[0247] Memory 1450 may also store communication instructions 1454 to facilitate communication with one or more additional devices, one or more computers, and / or one or more servers. Memory 1450 may include graphical user interface instructions 1456 to facilitate graphical user interface processing; sensor processing instructions 1458 to facilitate sensor-related processing and functions; telephony instructions 1460 to facilitate telephony-related processes and functions; electronic message processing instructions 1462 to facilitate electronic message processing and functions; web browsing instructions 1464 to facilitate web browsing-related processes and functions; media processing instructions 1466 to facilitate media processing and functions; GNSS / navigation instructions 1468 to facilitate GNSS and navigation-related processes and instructions; and / or camera instructions 1470 to facilitate camera-related processes and functions.

[0248] Memory 1450 may store software instructions 1472 to facilitate other processes and functions, such as reference Figures 1 to 13 Describes the media library curation process and functionality.

[0249] The memory 1450 may also store other software instructions 1474, such as web video instructions that facilitate processes and functions related to web video; and / or online shopping instructions that facilitate processes and functions related to online shopping. In some implementations, the media processing instructions 1466 are divided into audio processing instructions and video processing instructions to facilitate processes and functions related to audio processing and processes and functions related to video processing, respectively.

[0250] Each of the instructions and applications identified above may correspond to an instruction set for performing one or more of the functions described above. These instructions need not be implemented as separate software programs, processes, or modules. Memory 1450 may include additional instructions or fewer instructions. Furthermore, various functions of computing device 1400 may be implemented in hardware and / or software, including in one or more signal processing and / or application specific integrated circuits.

Claims

1. A method comprising: Generating, by a computing device, first cards for display in a day view of a graphical user interface (GUI) to represent corresponding different days in chronological order, each first card comprising a first curated asset representing a corresponding single day or an aggregation of consecutive days, the first curated asset being selected from a media library comprising a plurality of assets; generating, by the computing device, second cards for display in a month view of the GUI, each of the second cards representing a corresponding different month in chronological order, wherein each second card includes a second curated asset selected from one of the first cards representing a day or an aggregation of consecutive days in the corresponding month; generating, by the computing device, third cards for display in a year view of the GUI, each of the third cards representing corresponding different years in chronological order, wherein each third card includes one or more second curated assets, the second curated assets being selected from one of the second cards representing a month in the corresponding year, the month represented in the corresponding year being closest to the current month; presenting, by the computing device, the GUI on a display of the computing device, the GUI showing the year view corresponding to a particular third card of a particular year; receiving, by the computing device, a first user input selecting a particular second curated asset presented on the particular third card; In response to the first user input, presenting, by the computing device, a transition from the year view to the month view, the transition maintaining focus on the particular second curated asset; In response to the transition, presenting, by the computing device, the GUI showing a month view of a particular second card displaying the particular second curated asset, the particular second card corresponding to the particular month of the particular year; receiving, by the computing device, a second user input selecting a second curated asset to be displayed on the particular second card; In response to the second user input, presenting, by the computing device, a transition from the month view to the day view, the transition maintaining focus on the certain second curated asset; as well as In response to the transition, presenting, by the computing device, the GUI, the GUI showing the day view including the particular first card of the certain second curated asset, wherein the particular second card is restricted to displaying no more than five second curated assets selected from different weeks of the particular month represented by the particular second card, and wherein each second curated asset displayed in the particular second card is selected based on a curation score of a first curated asset of a first card representing a day of the particular month.

2. The method according to claim 1, wherein The plurality of assets of the media library are selected from the group consisting of: still images, videos, animated images, composite presentations, and panoramic images.

3. The method according to claim 2, further comprising: In response to the video displayed in the GUI, playing the video in a loop; as well as In response to the animated image displayed in the GUI, the animated image is played in a loop.

4. The method according to claim 1, wherein The GUI further includes: a ribbon element positioned along a top or bottom portion of the GUI, the ribbon element including a plurality of selectable links, each link being associated with a different type of card, and wherein the first user input selecting the particular second curated asset presented on the particular third card comprises receiving input selecting a particular link from the plurality of selectable links, wherein the particular second curated asset is the focus of the GUI.

5. The method according to claim 1, further comprising: The plurality of assets of the media library are filtered to generate the first curated assets, the filtering comprising removing duplicate assets, low-quality assets, and assets having a practical purpose.

6. The method of claim 1 , further comprising determining a curation score for the first curated asset, wherein: The curation score for a particular asset is based on global aesthetics, the number of shares of the particular asset, the number of views of the particular asset, the number of people identified in the particular asset, the size of the asset grouping that includes the particular asset, and the estimated significance of the particular asset.

7. The method according to claim 6, further comprising: presenting, by the computing device, the GUI showing a day view of a particular first card, wherein a size of the at least one first curated asset displayed in the particular first card is larger than sizes of other first curated assets displayed in the particular first card based on a curation score of the at least one first curated asset displayed in the particular first card; receiving, by the computing device, a second user input selecting a first curated asset to be displayed to the particular first card; In response to receiving the second user input, presenting, by the computing device, a transition from the day view to an all assets view, the transition maintaining focus on the first curated asset; and In response to the transition, the computing device presents the GUI, the GUI showing a full asset view of a portion of the plurality of assets of the media library sorted in time, wherein the portion of the plurality of assets displayed in the GUI are substantially equal in size.

8. The method according to claim 1, wherein Each second curated asset displayed in the particular third card is selected based on: a curation score representing a second curated asset of a second card for the month of the particular year represented by the particular third card; and A similarity between a current date and a timestamp of the second curated asset of the second card representing the month of the particular year.

9. A system comprising: monitor; one or more processors; and A non-transitory computer-readable medium comprising one or more sequences of instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising: generating a day view of first cards representing different days in chronological order, each first card including a first curated asset representing a corresponding single day or an aggregation of consecutive days, the first curated asset being selected from a media library including a plurality of assets; generating a month view of second cards representing corresponding different months in chronological order, each second card including a second curated asset selected from one of the first cards representing a day or an aggregation of consecutive days in the corresponding month; generating a year view of third cards representing corresponding different years in chronological order, each third card including one or more second curated assets selected from one of the second cards representing a month in the corresponding year, the month represented in the corresponding year being closest to the current month; Presenting a graphical user interface (GUI) on the display showing at least a portion of a card, the card being one of the first card, the second card, or the third card; receiving an input for selecting a current card to replace the certain card in the GUI; switching the GUI to show the current card while maintaining focus from the certain card on the currently displayed asset, wherein the current card is a specific second card displaying at least one second curated asset, wherein the at least one second curated asset displayed in the specific second card is selected based on a curation score of a first curated asset of a first card representing a day of the month represented by the specific second card; receiving input selecting a second curated asset to be displayed to the particular second card; and In response to receiving the input, displaying in the GUI a particular first card including the selected second curated asset, wherein the particular second card is limited to displaying no more than five second curated assets, and wherein each of the second curated assets displayed in the particular second card is selected from a different week of the month represented by the particular second card.

10. The system according to claim 9, wherein: The plurality of assets of the media library are selected from the group consisting of: still images, videos, animated images, composite presentations, and panoramic images.

11. The system according to claim 9, wherein: The GUI further includes: A ribbon element positioned along a top or bottom portion of the GUI, the ribbon element including a plurality of selectable links, each link being associated with a different type of card.

12. The system according to claim 11, wherein The operations further include: In response to receiving input selecting a particular link from the plurality of selectable links, switching the current card to a card associated with the particular link, the associated card representing one or more assets from a time frame related to the current card.

13. The system according to claim 9, wherein: The operations further include: The plurality of assets of the media library are filtered to generate the first curated assets, the filtering comprising removing duplicate assets, low-quality assets, and assets having a practical purpose.

14. The system according to claim 9, wherein: The operations also include determining a curation score for the first curated asset, wherein the curation score for a particular asset is based on global aesthetics, a number of shares of the particular asset, a number of views of the particular asset, a number of people identified in the particular asset, a size of an asset grouping that includes the particular asset, and an estimated meaning of the particular asset.

15. The system according to claim 14, wherein: The current card is a specific first card, wherein a size of the at least one first curated asset displayed in the specific first card is larger than sizes of other first curated assets displayed in the specific first card based on a curation score of the at least one first curated asset displayed in the specific first card, and wherein the operations further comprise: receiving input selecting a first curated asset to be displayed to the particular first card; and In response to receiving the input, displaying, by the display, a portion of the plurality of assets of the media library sorted in chronological order while maintaining focus on the first curated asset selected in the GUI, wherein the portions of the plurality of assets displayed in the GUI are substantially equal in size.

16. The system according to claim 9, wherein: The current card is a specific third card that displays one or more specific second curated assets, wherein the one or more specific second curated assets displayed in the specific third card are selected based on: a curation score for a second curated asset of a second card representing the month of the year represented by the particular third card; and similarity between a current date and a timestamp of the second curated asset of the second card representing the month of the year represented by the particular third card, and wherein the operations further comprise: receiving input selecting a second curated asset to be displayed on the particular third card; and In response to receiving the input, a specific second card including the certain second curated asset is displayed in the GUI by the display.

17. A non-transitory computer-readable medium comprising one or more sequences of instructions that, when executed by one or more processors, cause the processors to perform operations comprising: generating a day view of first cards representing different days in chronological order, each first card including a first curated asset representing a corresponding single day or an aggregation of consecutive days, the first curated asset being selected from a media library including a plurality of assets; generating a month view of second cards representing corresponding different months in chronological order, each second card including a second curated asset selected from one of the first cards representing a day or an aggregation of consecutive days in the corresponding month; generating a year view of third cards representing corresponding different years in chronological order, each third card including one or more second curated assets selected from one of the second cards representing a month in the corresponding year, the month represented in the corresponding year being closest to the current month; Presenting a graphical user interface (GUI) on a display showing at least a portion of a card, the card being one of the first card, the second card, or the third card; receiving an input for selecting a current card to replace the certain card in the GUI; and switching the GUI to show the current card while maintaining focus from the certain card on the currently displayed asset, wherein the current card is a specific second card displaying at least one second curated asset, wherein the at least one second curated asset displayed in the specific second card is selected based on a curation score of a first curated asset of a first card representing a day of the month represented by the specific second card; receiving input selecting a second curated asset to be displayed to the particular second card; and In response to receiving the input, displaying in the GUI a particular first card including the selected second curated asset, in, The particular second card is limited to displaying no more than five second curated assets, and wherein each of the second curated assets displayed in the particular second card is selected from a different week of the month represented by the particular second card.

18. The non-transitory computer readable medium of claim 17, wherein: The current card is a specific third card that displays one or more specific second curated assets, wherein the one or more specific second curated assets displayed in the specific third card are selected based on: a curation score for a second curated asset of a second card representing the month of the year represented by the particular third card; and similarity between a current date and a timestamp of the second curated asset of the second card representing the month of the year represented by the particular third card, and wherein the operations further comprise: receiving input selecting a second curated asset to be displayed on the particular third card; and In response to receiving the input, a specific second card including the certain second curated asset is displayed in the GUI by the display.

Citation Information

Patent Citations

  • Adjustable timeline user interface

    CN105122200A

  • System and method for automatic discovering and creating photo stories

    US20120082401A1

  • Information processing apparatus, information processing method, and program

    US20180181281A1