Automated local story generation and curation

Through intelligent devices and machine vision technology, the automatic generation and curation of news stories is solved, and the problem of low efficiency of traditional news dissemination is achieved, rapid and personalized presentation of news content is achieved, and user experience and information dissemination efficiency is improved.

CN113282771BActive Publication Date: 2025-01-07SNAP INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110607167.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2015-05-05
Filing Date
2016-05-03
Publication Date
2025-01-07
Estimated Expiration
2036-05-03

AI Technical Summary

Technical Problem

The generation and curation process of traditional news stories is time-consuming and there is information delay. The dependence of professional journalists on filtering information leads to low news dissemination efficiency and the inability to present the latest events to consumers in a timely manner.

Method used

Receive content through intelligent devices, use machine vision analysis and trend recognition to automatically generate and curate local stories, adjust the visibility and quality of story content based on geographical areas and user interests, and achieve rapid and personalized news story presentation.

Benefits of technology

It realizes the rapid generation and personalized presentation of news stories, reduces the delay in information dissemination, improves the efficiency and user experience of news dissemination, and can promptly push high-quality and relevant content to users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113282771B_ABST
    Figure CN113282771B_ABST
Patent Text Reader

Abstract

Systems and methods for automated local story generation and curation are described. In one example embodiment, a server computer receives content from a client device and processes the content to identify content features. A story is then generated based on the features of the received content and communicated to the client device. In some embodiments, selection of a single content segment within a story at the client device can be further used by the system to provide the client device with a sub-story that includes content segments that share content features with the features of the selected image or video.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of Chinese patent application (201680034736.8), the application date of the original application is (May 3, 2016), the priority date is (May 5, 2015), and the name of the invention is “Automated Local Story Generation and Curation”.

[0002] Priority claim

[0003] This application claims the benefit of priority to U.S. Application Serial No. 14 / 704,188, filed May 5, 2015, which is incorporated herein by reference in its entirety. Background Art

[0004] News stories have traditionally been presented to consumers in a tightly controlled and curated format. Early formats for news presentation included newspapers and magazines. Later formats included broadcast radio and television news. Traditional news sources are often closely associated with the company or prominent individual who gathers and presents the news story. In the modern internet age, many of these news sources are decentralized, but core aspects of news gathering and presentation are often associated with professional journalists who interview and share information in a manner tied to their personal identity. While this practice can employ valuable analysis to support some news structures, the process of generating stories where select professionals filter information and generate stories is time consuming and introduces significant delays between events occurring and when the information is presented to news consumers.

[0005] The systems and methods described herein relate to automated local story generation, curation, and presentation from received content. BRIEF DESCRIPTION OF THE DRAWINGS

[0006] The various figures in the drawings depict only example embodiments of the present disclosure and should not be considered to limit the scope thereof.

[0007] Figure 1 is a block diagram illustrating a network system according to some example embodiments.

[0008] Figure 2A Aspects of server system operation for receiving content for different geographic regions are shown in accordance with certain example embodiments.

[0009] Figure 2B Aspects of server system operation are shown for sending different stories to different geographic regions in accordance with certain example embodiments.

[0010] Figure 2C Showing aspects of content source areas and visibility areas for associated stories according to some embodiments.

[0011] Figure 2D Showing aspects of content source areas and visibility areas for associated stories according to some embodiments.

[0012] Figure 3A Aspects of story generation according to some example embodiments are shown.

[0013] Figure 3B Aspects of story generation according to some example embodiments are shown.

[0014] Figure 3C Aspects of story generation according to some example embodiments are shown.

[0015] Figure 4 is a flow chart illustrating aspects of a method according to some example embodiments.

[0016] Figure 5 Aspects of a server system for automated local story generation and curation are shown according to some example embodiments.

[0017] Figure 6 is a flow chart illustrating aspects of a method according to some example embodiments.

[0018] Figure 7 is a block diagram illustrating an example of a software architecture that may be installed on a machine according to some example embodiments.

[0019] Figure 8 An example user interface of a client device for operating an application according to some example embodiments is shown.

[0020] Fig. 9 A diagrammatic representation of a machine in the form of a computer system within which a set of instructions may be executed for causing the machine to perform any one or more of the methodologies discussed herein is shown according to an example embodiment. DETAILED DESCRIPTION

[0021] The systems and methods described herein relate to automated local story generation, curation, and presentation. Various embodiments described herein automatically generate stories from content received from different client devices, such as smart phones. Stories are generated based on system trends and received content features. Story usage trends can then be used to adjust the scope of stories available for viewing by system users.

[0022] As described herein, "content" refers to one or more images, video clips, or multimedia clips collected by an electronic device and any associated metadata descriptions. This includes metadata generated by the electronic device that collects the image or video and metadata that may be associated later by other devices. A "piece of content" refers to a single image or video clip collected by a client device. The content collected by such a client device can be sent separately to other client devices via the network as part of a social sharing network. The "content message" mentioned herein refers to the communication of content between one or more users via the system. Content can also be sent from a client device to a server system to be shared with other system users. The embodiments described herein relate to a method of grouping such public content from different sources into stories.

[0023] A "story," as described herein, is a group of content. As described in more detail throughout this document, stories can be generated from content pieces that are related in a variety of different ways. For example, a "global" story is a story that is available to all users in the system. A "main" story is a story that is initially sent to an individual user based on the system's initial story generation process. The main story acts as an initial filter group of similar content pieces that the user may be interested in. A "sub-story" is a story that is sent to a user based on an image selection from a previous story. A sub-story includes a content piece that shares image features with a selected image of the previous story.

[0024] The example system can operate by receiving content clips from smart phones or other client devices located all over the world. When the system receives the content, the content is analyzed to determine the location, time, and content details. The content details can be determined by machine vision analysis of the content to identify objects and other details related to the content. Image and video quality metrics can also be generated based on automatic analysis. A set of content features are then associated with the content based on the system analysis.

[0025] The example system then generates stories based on the trends identified in the system and the content features of the content. Different stories are sent to different groups of client devices. The stories generated by the system may include a set of images and / or video clips selected based on: (1) whether the content segments were generated within a certain proximity of each other or within a local area (e.g., within a specific geo-fence); (2) what the recent content is; (3) image quality metrics; and (4) shared content features (e.g., content features identified by machine vision, such as cats, cars, sports, or other such content). The stories generated by the system are then assigned to one or more user segments. Users can be assigned to one or more user segments in a variety of ways. Some user segments may be based on user location, while other user segments may be based on user interest, such as interest in sporting events, music, weather, pets, or any other such user or system identified area of ​​interest. In various embodiments, the user segments for a story may be adjusted over time based on a system trend associated with the content features used to generate the story (e.g., an average of a spike or location in activity from a baseline, a content category, or other features indicative of a newsworthy event). Similarly, such trends may be used to generate new stories with content associated with the system trend. The device will then receive access to stories associated with the device's user segment (e.g., the device's location or a focus group associated with the device's account). In certain embodiments, this results in the user receiving stories focused on high-quality recent content segments generated near the user. Stories generated earlier or from content far from the user's current location may be provided to the user based on identified system trends. A variety of different metrics or different combinations of metrics may be used to select stories available for presentation on a particular client device.

[0026] In some example embodiments, content is received by the system and processed using machine vision to identify content features. Rather than automatically generating stories, a system operator can use a story tool (e.g., a computing device or software tool) to select content for inclusion in a story. The story is then made available to an initial segment of users. Based on the system feedback described herein, if the system feedback identifies trends associated with the story based on views, screenshots, and other metrics, the system can adjust which user segments can view the story generated by the system operator by automatically making the story available to a greater number of client devices.

[0027] When a user accesses a story on the user's client device, the user can view content that is part of the story and select individual content segments from the story. When a content segment is selected from the story, the selection is communicated to the system. The system then provides a sub-story to the device based on the content characteristics of the selected content segment. The process can continue, allowing the user to select another content segment from the sub-story and sending the resulting subsequent sub-story to the user's client device. A user interface is provided that allows the user to navigate back to any previously viewed story and continue viewing other content segments in the earlier story. Another content segment can be selected at any time, resulting in an additional sub-story associated with the characteristics of the newly selected content.

[0028] In some embodiments, anonymous information about story viewing, selection of content segments within a single story, and screenshots of content on client devices is fed back to the system to influence system trends that influence how stories are assigned to user segments. This feedback mechanism can also be integrated with the system trends associated with incoming content segments mentioned above to influence the selection of content segments for future story generation (e.g., when a story is generated or not generated). In some embodiments, system trends can be used to adjust the user segments of the distribution of stories based on geographic tiers. In one such embodiment, the global tier is the top layer of the system, containing the entire world. Below the global tier is the national tier, which is divided into geographic regions for each country participating in the system. Below the national tier is the state tier, then the city tier, then the local tier, etc. When a story is generated by such a system, it is automatically assigned to the user segments of the local geographic region associated with the location where the content has been generated. In other words, the story is initially available only to devices in the region where the content segment was generated. Based on system trends, stories can be assigned or "up" to higher-level regions so that the stories are visible outside the local geographic region where the story content is generated. At the highest global level, stories may be visible to all devices in the system, or to the broadest segment of users for a particular story. As the system identifies an increase in interest in a story, the story is pushed up to higher and higher geographic levels. As the system identifies a decrease in interest in the category, the story will likewise be pushed down to lower geographic levels.

[0029] Certain embodiments of the system may periodically evaluate newly received content to determine which content segments best represent certain system categories associated with a story. As new content messages associated with a story are received by the system, these new content messages may be added to the story or used to update or replace some previously received content segments in the story.

[0030] In a system operating with a geographic layer, the number and type of stories for different users in different geographic regions may have different mixtures of stories presented for selection in the user interface of an application operating on a device. A set of stories available to a first client device in a first local region may include all local stories. Another set of stories available in different local regions may include eight local stories, four city stories, one state story, no national story, and two global stories. In some embodiments, this mixture of geographic representations in stories available on a single device changes over time and changes for different user segments in different local regions based on specific features of content fragments available to the system. Other embodiments may not use a fixed geographic layer, but may assign regions to stories based on content features or metadata associated with the content in the story. For example, in some embodiments, a set of content for a story may all occur within a 10-meter radius, and the system may determine that the story will only be of interest to users very close to the location. The system may automatically assign regions to stories, and may make the story available only to users in the region where the story is generated and assigned, rather than making the story available to all users in a larger geographic region.

[0031] As a specific example of a system using a geographic layer, in one embodiment, a sports stadium may be assigned its own local geographic area or geo-fence. During a basketball game at the sports stadium, users collecting content within the sports stadium may choose to send content messages to the system for public use of stories. The system analyzes the received content clips and generates one or more stories for system users within the sports stadium. For example, the system may simply generate one story for the local geographic area that includes a mix of pictures and videos of the game and fans participating in the game.

[0032] If the game is particularly exciting, the system can identify a trend. For example, if the game is a playoff game with a tie with 10 seconds left, the system may see a spike in content messages for public stories sent from within the stadium. Based on the spike, stories from the stadium are temporarily assigned to a larger area (or higher level), such as a state or national visibility area, so that remote users in the new visibility area are provided with access to stories from the stadium. If interest in the game and associated stories remains high after the game is over, the story can maintain a higher level of geographic visibility based on viewing rate, screenshot rate, or other system feedback received from client devices.

[0033] When the user navigates the system to view the content in different stories, these metrics can be generated in different ways. For example, if the user can access the story from the stadium, and the story includes a picture or video of a winning game from the stadium, the user can select the content. The system then generates a sub-story for the user based on the characteristics of the content. For example, the generated sub-story can include a picture or video showing the highlights of the game. If the user selects the content showing the player's dunk from the sub-story, a second sub-story can be generated, and the user is sent to show the usual pictures or videos of the player and other content showing dunks with other players. Selecting the content fragments including the same player in the second sub-story may result in a third sub-story including content featuring only the selected player. Selecting the second sub-story pictures or videos showing different players dunking may result in a third sub-story with an alternative content showing the highlights of dunks throughout the basketball season. Any screenshots of the pictures or videos taken by the user and the percentage of pictures or videos in the specific story viewed, or other such metrics can be sent to the system as feedback to establish the baseline values ​​of these metrics and identify trends and affect the current user segment allocation of related stories and the system operation for generating future stories.

[0034] Figure 11 is a block diagram illustrating a network system 100 according to some example embodiments. The system 100 includes a client device 110, a client device 120, a server system 150, and a network 140 for passing communications between the client devices 110 and 120 and the server system 150. The client devices 110 and 120 may be any smart phone, tablet computer, tablet phone, notebook computer, network-enabled camera, or any other such network-enabled device. The client devices 110, 120 may include a camera device for capturing content, or may be coupled to a separate camera device for capturing content before sending to other client devices 110, 120 for storage. Thus, some embodiments may include a wearable device, such as a pendant with an integrated camera coupled to the client devices 110, 120. Other embodiments may include other associated devices with integrated cameras that can be worn, such as watches, glasses, clothing such as hats or jackets with integrated electronics, clip-on electronic devices, or any other such device that can communicate with or integrate with the client devices 110, 120. The client devices 110 and 120 are connected to the server system 150 via a network 140. The network 140 may include any combination of wired and wireless connections. This may include a cellular access network, an access point interface to the Internet, or any other such network 140 or network element. For example, the client device 110 may interface with the network 140 using a Long Term Evolution (LTE) cellular network to communicate with the server system 150, while the client device 120 may interface with the network 140 using a Wi-Fi access point and communicate with the server system 150. The server system 150 may be one or more computing devices that are part of a service or network computing system. In some embodiments, particularly embodiments having a large number of client devices 110, 120 interfacing with the server system 150 from widely different locations around the world, the server system 150 may be a distributed network 140 of similarly widely distributed server computers, and which communicate with each other via the network 140. In some embodiments, the client devices 110 and 120 and any elements of the server system 150 and the network 140 may use Figure 7 and Fig. 9 The software architecture 702 or elements of the machine 900 described in are implemented.

[0035] The network system 100 can then be used for communication of content messages from the client devices 110, 120 to the system 150 and communication of stories from the system 150 to the client devices 110, 120. Figure 1, client device 110 communicates content message 112 to server system 150, and client device 110 receives story 114 from server system 150. In addition to such functionality for the embodiments described herein, client device 110 may additionally receive private content snippets and communications from other users, and may communicate personal stories to server system 150, wherein the personal stories include images and / or videos from content message 112 generated by client device 110 or another device coupled to client device 110. Similarly, client device 120 sends content message 122 and receives story 124, and may additionally perform other actions.

[0036] Figure 2A An aspect of server system 250 receiving content messages from different geographic regions is shown in accordance with certain example embodiments. Figure 2B An aspect of the server system 250 sending different stories to different geographic regions is shown in accordance with certain example embodiments. Figure 2C and Figure 2D 1 shows how different stories are assigned different visibility areas. Figure 1 on the contrary, Figure 2A -D shows an overview of the client side of the system, where thousands or millions of client devices 110 , 120 in different regions may interact with the server system 250 .

[0037] Instead of independent client devices 110, 120, Figure 2A and Figure 2B A simple user segment representation is shown with two local geographic areas 204 and 206, which are the lowest level areas in this example. State geographic area 202 is one layer above local geographic areas 204 and 206, and state geographic area 202 contains these two local areas. This is a simplified representation for illustrative purposes. Other embodiments may include more layers and a large number of adjacent lowest level local geographic areas. As described above, one embodiment may include a local layer, a city layer, a regional layer, a state layer, a national layer, and a top global layer. The lowest level local layer may be composed of local geographic areas of varying sizes and shapes. A single local geographic area may be a public park, multiple city blocks, a university campus, a sports area, a shopping center, a beach, a single building, or any such local area. In some embodiments, geo-fences are used to define local areas. Such geo-fencing may be tracked by aspects of network system 100 including a location system within a client device (such as client devices 110 and 120), a network-based location system as part of network 140, a separate location system such as a global positioning system (GPS), or a combination of these or other location systems.

[0038] In other embodiments, the system can generate stories for each client device separately, regardless of the geo-fence or user group. In this embodiment, each time a user navigates to a story interface within an application operating on a client device, the client device communicates the current location to the server system 250. At this time, the location of the device or other device-provided information can be used to generate a list of stories for the device.

[0039] exist Figure 2A In the example shown, client devices within the first local geographic area 204 are grouped together and communicate 1,000 content messages 260 to the server system 250 during a first time period. The content associated with these content messages is shown as SF1 to SF1000. During the same time period, 10,000 content messages 262 containing individual clips or images are sent to the server system 250 by client devices within the second local geographic area 206, as shown by content LA1 to LA10000. This amount of content is sufficient to overwhelm an individual user. Therefore, the server system 250 operates as a curator to filter the content messages and provide a selected set of pictures and videos from the content messages as one or more stories.

[0040] In various embodiments, this curation functionality can be implemented by the server system 250 in different ways. At a high level, an example embodiment divides users by local area. Stories for client devices 110, 120 are generated from recent content messages generated in the current local area of ​​the client device. Such local content messages of stories can be further filtered based on image quality and image content. Image content can be used to prevent excessive content duplication, provide a variety of different content, provide content identified as newsworthy (such as images associated with celebrities), or filter selections based on any other such content. Image content can also be analyzed to identify content duplication and avoid placing extremely similar content in a single story (such as videos of the same event from similar angles). In addition, the server system 250 can analyze trends associated with incoming content messages from other local areas to generate stories based on trends identified by the system. Additional details about server curation and story generation will be referenced below Figure 6 Have a discussion.

[0041] Figure 2BThen, a first story set 292 is shown as being available to all client devices within the first local geographic area 204. Similarly, a second story set 294 includes stories visible to all client devices within the second local geographic area 206. The second story set 294 is shown as including three stories, all of which are generated from content messages originating from the second local geographic area 206. These stories of the second story set include LA stories 291-293. The first story set 292 is shown as including two stories, SF story 281 and SF story 282, generated from content messages originating from within the local geographic area 204. The first story set 292 also includes a story, LA story 291, generated from content messages originating from within the local geographic area 206. As described above, LA story 291 may be identified by the server system 250 analyzing system trends, where a greater than normal number of story views, screenshots, incoming additional content messages, or other system trends identify LA story 291 as a story visible to a larger segment of users.

[0042] Figure 2C An example embodiment is shown of how another story may be generated by the server system 250 and made available to different user segments over time. Figure 2CAs shown, content messages are received from content source region 260 and used to generate a first story 261. At an initial time T1 when story 261 is first available to system devices, the story is visible only to devices within T1 story visibility region 262, which is essentially the same region as content source region 260 from which the content message originated. Over time, server system 250 identifies a feedback baseline value that is used to establish a system trend away from the baseline value and thus indicates interest in certain content. Server system 250 continuously expands the visibility region associated with first story 261 based on this trend. At a second time T2, the story is visible in a regional region, as shown by T2 story visibility region 264. At time T3, first story 261 is visible at the state level, shown as T3 story visibility region 266. At time T4, story 261 is visible to all devices at the national level, as shown by T4 story visibility region 268. For example, if a music festival with a popular band is being held in content source region 260, such story expansion may occur over time, where a spike in content messages from the region occurs during the festival. The analysis of server system 250 identifies spikes in content messages and automatically generates stories with pictures and videos identified by machine vision as content from the music festival. The story was initially visible only in the local area, but was frequently viewed and screenshotted, and was therefore promoted to a regional / city story. The music festival story was equally popular as a regional story, and was again promoted to a state story, and then promoted to a national story, so that anyone in the United States could view the story. After a certain period of time, the story may be deleted from the system and replaced by other stories. In some embodiments, this can occur as a system trend determines that the story is not too popular, and the hierarchy of the story is moved down until it returns to a local story. In other embodiments, the story can simply be deleted from the system after a certain period of time.

[0043] In contrast, Figure 2D An aspect of an embodiment of a story where user segments do not change over time is shown. Figure 2D The content source area 260 is shown to be also the local area where the content messages originated from the second story 271. However, the system baseline value and trending determined that an insufficient level of attention was generated, and therefore the second story 271 is not promoted to a larger area. Therefore, the visibility area of ​​the second story 271 remains the same area for time T1 to T4. For example, if a water main breaks, resulting in a sudden spike in content messages in the flooded area near the break, the system can analyze the spike in related incoming content messages and automatically generate a story associated with the water main break. If the story does not generate enough attention to be promoted, the visibility area will remain in the local area around the collected content, and only the local audience will have access to view the second story 271. The story will then eventually be replaced by other stories and will be deleted from the system.

[0044] The third story 275 accepts content from an entire country region as a content source region 274, and maintains the country region as a T1-T4 third story visibility region 276. For example, on a national holiday in the United States such as July 4, machine vision can be used to process all content messages received in the content source region 274 to identify fireworks images or other holiday images. This story can be triggered by a calendar event or system setting that matches the holiday, or this story can be generated in response to the system identifying a trend or a set of content messages that meet a specific threshold for generating a national story. These content messages can be automatically used to generate the third story 275, and the third story 277 is visible from the entire country region during the holiday.

[0045] As described above, the stories available to a device change over time, and different sets of stories may be available to different devices. Figure 2C and Figure 2D In an exemplary embodiment of , at time T1, devices outside the T1 story visibility area 262 are able to view the third story 277, but not the first story 261 or the second story 271, while devices within the area 262 are able to view all three stories. This changes over time, and at time T4, all users can view the first story 261 and the third story 271, but only users within the area 262 are still able to view all three stories. In addition, other stories can be provided to different devices, so that some additional stories are available to users in other local geographies that are not available in the T1 story visibility area 262. Similarly, story sets 292 and 294 are each shown as including three stories. In various embodiments, the story set available to a device at a particular time may include any number of stories. In some embodiments, the maximum number of stories may be performed by the server system 250, while in other embodiments, any number of stories that meet the system threshold for story generation and presentation may be provided to users at any given time.

[0046] Figure 3A An embodiment of a user interface for a client device 300 is shown. The client device 300 shows a user-selectable interface area 301 for each story in the first story set 292, including SF story 281, SF story 282, and LA story 291. Additional story interface areas can be provided by scrolling up and down. Each interface area can provide basic details or sample images associated with each story. In some embodiments, the story or a portion of the story can be provided to the client device 300 before the selection of the interface area 301. In other embodiments, the image of the story is communicated from a server system such as server system 250 immediately following the selection of a particular interface area 301.

[0047] Figure 3C Shows a window for viewing stories and sub-stories such as Figure 3B An example of an interface for the story shown in . Figure 3C In , when a story or sub-story is received for viewing on device 300, the individual content segments are displayed within content viewing area 397. Figure 3C In the embodiment of the present invention, the user has navigated to the content LA84 (image or video) of the second sub-story 320. The input area is visible for returning to the previously navigated story. As shown, input 398 can be used to switch to LA story 291, and input 399 can be used to switch to the first sub-story 310. If input 398 or 399 is selected, the first picture or video of the selected story will be displayed in the content viewing area 397. The viewer can then view some or all of the content clips in the story, and can navigate to a new sub-story by selecting the picture or video displayed in the content viewing area 397, or can return to the previous story. In further embodiments, the user can use other user interface inputs to navigate between various stories and sub-stories. For example, in some embodiments, a user in a sub-story can slide up the content displayed on the device to return to the previously viewed story. Similarly, if the user has previously navigated back to the previously viewed story by sliding up, some embodiments can enable the user input of sliding down to navigate to the sub-story. Other embodiments can use a drop-down menu or menu list of the most recently viewed story accessed by a physical button on the client device to enable navigation between multiple different stories and sub-stories.

[0048] Figure 3B Aspects of story generation according to some example embodiments are then shown. After selecting a story by a user interface action using interface area 301, the story is displayed on client device 300. The user can then view various stories and sub-stories. Figure 3B It can be shown from Figure 3A LA story 291 is selected in interface area 301 of the client device 300. After such selection, a content segment from LA story 291 can be viewed. As shown, LA story 291 includes images or videos from content messages, and the content message includes content LA 7, LA 55, and LA 986-989. When images from content LA 55 are displayed on the screen of device 300, the user can select images from content LA 55. The selection is communicated from client device 300 to server system, and the server system responds with a first sub-story 310. First sub-story 310 includes videos or images from content LA 50-LA 57 having features similar to one or more features of content LA 55. Figure 3CAfter viewing some or all of the images of the first sub-story 310 in an interface similar to the interface shown in , the user can navigate back to LA story 291. While viewing video LA7, the user can then select image LA7, and will receive a second sub-story 320 from the server system in response to the selection of image LA7. The user can then view some or all of the videos or images in content messages LA 80 to LA 84 from the second sub-story 320 before navigating back to view the content of LA story 291.

[0049] For example, if LA story 291 includes a video of a flood, and image LA 55 shows that the flood is in a local geographic area, then a communication of this selection is sent to server system 250. Server system 250 then responds with a first sub-story 310 having content that shares content features with the selected image LA 55. In this case, all of the content associated with content messages LA 50 to LA 57 may include pictures or videos showing the particular area from different angles, as well as old pictures or videos of the particular area before the flood occurred.

[0050] The user may then return to the source story to continue viewing content in LA story 291, and may select additional images or videos within LA story 291. If the user then selects a video from content message LA7 (which is about the event of a dog passing through a flood that initially generated LA story 291), that selection is communicated to server system 250, and server system 250 responds with a second sub-story 320. Based on the video of the dog and the flood image from the content message, LA80-LA84 may include an image or video of a dog. This process may be recursive, such that the user may then select an image or video within a sub-story and receive additional sub-stories. For example, if the user selects an image or video showing a particular breed of dog from content communication LA 80, another sub-story may be received that contains content including dogs of that breed from a different time or from another area. If the user selects a content segment from content communication LA 84 showing a video of a dog playing around a flood, another sub-story may be generated that shows only dog ​​content of the dog playing in the water. Additional details regarding the selection of content for a sub-story will be described below with respect to Figure 6 Have a discussion.

[0051] Figure 4 is a flow chart illustrating aspects of a method 400 according to some example embodiments. For purposes of illustration, the method 400 is Figure 1 It should be understood that in other embodiments, the method 400 can be practiced with other system configurations.

[0052] In operation 404, the server system 150 receives content messages 112, 122 from client devices 110, 120 via network 140. In operation 406, the content received in operation 404 is processed to identify content features. This operation 406 may identify the time when the content was generated, the location where the content was generated, or other associated time and location information. If more than one content segment (e.g., multiple video clips or pictures) is received, the time period may be identified. The server system 150 may also include a machine vision module configured to identify objects within the content. In some embodiments, the machine vision module may include a dictionary of objects and object arrangements. Based on the objects and / or object arrangements identified by the machine vision module, one or more values ​​may then be assigned as content values ​​as part of a set of features associated with the content segment through the processing of operation 406. In addition, an image or video quality value may be assigned to the content. The value may include a blurriness value, a brightness value, a color profile value, a contrast value, or any other such quality value. In embodiments where the content includes video clips with different frame rates or other features specific to video clips, this information may also be used to assign quality values ​​as part of a set of content features.

[0053] In operation 408, the content received in operation 404 is processed along with other incoming content segments to identify system trends. For example, the server system 150 may maintain a record of image content values ​​assigned by the system processing and at what frequency (e.g., content reception rate) content with a specific content value is received. For any content feature value, the frequency and reception rate metrics may be maintained anonymously by the server system 150 and used to establish an expected baseline value associated with normal system activity for a specific date, time, event, or other period that can be identified within the system. When the server system 150 identifies a spike in the reception rate of content associated with a specific content feature value (e.g., a change in the expected baseline), this may be identified by the server system 150 as a system trend. The selection of a specific content segment as part of a story viewing may also be tracked by the system. When the server system 150 receives user selections associated with a content segment and sends the associated sub-story to a client device, these may be tracked to determine system trends. If a specific content segment is frequently selected, this information may be used as system feedback for selecting content segments for future stories, or for including it in stories for a larger geographic area. In various embodiments, applications operating on client devices may also collect information about how users interact with certain content segments or stories. For example, the application may record the frequency or duration of viewing a particular story or content segment within a story. The application may also track how many images or videos within a story a user viewed before navigating away from the story. This information may be collected and sent to the server system 150 for use in determining trends. For all of the above, in different embodiments, the server 150 may use different statistical analyses and associated thresholds or criteria to trigger the identification of system trends.

[0054] In operation 410 , the system trends identified in operation 408 and the individual content characteristics of the content segments identified in operation 406 are used to determine whether a story should be generated or updated.

[0055] If the story is being generated for the first time, user segments or visibility areas are assigned to the story. This may involve identifying user segments with shared features for story segmentation at the server system 150. This may simply involve specifying that the story is visible within the geofence where the story content originates. Grouping users reduces the processing load on the server system 150 by reducing the processing resources needed to determine which stories are available for which devices. In other embodiments, stories can be generated on a per-client device basis without such user segments. In such embodiments, stories can be considered to be curated separately for a single client device 110, 120. An example embodiment of a user segment is a user segment based on a regional layer as described above. In other embodiments, a user segment can be based on a system-supported focus group. For example, the system can allow a user to specify a focus on sports. In such examples, basketball, rugby, football, baseball, hockey can correspond to a higher level, which has different leagues and / or levels corresponding to a lower level. When a story containing content related to basketball is generated, access to the story can be provided to the user's device regardless of where the user's device is located. In some embodiments, the focus indication can be used as system trend data to trigger the system to generate more stories related to basketball.

[0056] If a story is being updated, feedback information received at server system 150 is analyzed to determine whether the story should be more widely available or less available based on a system metric of story visibility.

[0057] In some embodiments, a user provides one or more system settings to identify categories of interest to the user. These categories are then used by the system to identify user segments, which are groups of users that have expressed interest in a shared category or groups of users that are otherwise grouped together by the system. The system can independently generate story sets for the user's device based on the category selections. In other embodiments, content viewing characteristics associated with a client device or user account can be used to generate or update an interest profile. This information can be used not only to generate story sets for the user and other users with similar profiles, but the information can also be used as system feedback for determining trends in the system. Other embodiments may specifically exclude the use of personal device or account profiles for privacy purposes, and may only use data received from anonymously stored client devices.

[0058] In addition, in some embodiments, when new content associated with the category used to generate the story is received, the content segment of the story can be adjusted. In some embodiments, the new content is appended to the end of the story. In other embodiments, content can be added to and deleted from the story based on a threshold contained in a specific story. As part of operation 410, when the story is generated or updated, the new story can be used for a separate client device 110, 120. In some embodiments, the communication of the story to a specific client device 110, 120 can occur automatically as part of a push from the server system 150 to the client device 110, 120. In other embodiments, the client device 110, 120 generates a request for the story as part of the application operation at the client device 110, 120. For example, a user navigating to a story interface within an application can automatically generate a request from the client device 110, 120 to the server system 150 for the main story associated with the client device 110, 120 user segment.

[0059] Operations 404 to 410 will repeat during system operation. In some embodiments, the server system 150 may aggregate content within a set time period, or may aggregate a set number of content segments before processing the content and updating the story or generating a new story. In other embodiments, updates and new stories for user segments may only occur when a client device 110, 120 associated with the user segment requests a list of available stories. In further embodiments, criteria associated with incoming content may be used to trigger updates or new story generation. For example, a new story or story update may be triggered during a period of time when a large number of content messages related to a category or event identified as a trend are received. In other embodiments, various combinations of these update cycles and triggers may be used, along with any other possible criteria for initiating story updates.

[0060] As these operations described above are repeated to generate new stories and update existing stories, the client device 110, 120 may periodically send a communication to the server system 150 identifying the user's selection of a picture or video for the story, as shown by operation 412. After receiving such a communication in operation 412, in operation 414, a sub-story is identified by the server system 150, wherein the sub-story contains content that shares content characteristics with the selected picture or video. The sub-story can be generated when the request is received, or it can be generated by the system when the content segment is initially placed in the story. The sub-story is then communicated to the client device 110, 120 that sent the communication. This process of operations 412 to 416 can be repeated similarly, wherein the client device 110, 120 selects a different content segment or navigates to a previously received story, and the server system 150 communicates the associated story and content to the client device 110, 120.

[0061] Figure 5 Aspects of a server system 550 for automated local story generation and curation are shown according to some example embodiments. In various embodiments, the server system 550 can be used as an implementation of the server system 150 or the server system 250. The example server system 550 includes an input and output (I / O) module 552, a content feature analysis module 554, a machine vision module 556, a content feature database 558, a trend analysis module 560, and a story generation module 562.

[0062] The I / O module 552 may include any hardware, firmware, or software elements necessary to send and receive content and stories to the client devices 110, 120 via the network 140. The content feature analysis module 554 may include devices, processors, and software to analyze images from frames of pictures and video clips, and then determine content features, including details about when and where the picture or video was generated. In some embodiments, the content feature analysis module 554 may be implemented as a plurality of different modules, each analyzing different content features, including any of the content features described herein.

[0063] The machine vision module 556 describes a specific module that can be used to identify content features based on the content of one or more images in a video. The machine vision module 556 includes hardware, firmware, and / or software for analyzing and understanding content. In one embodiment, the machine vision module 556 is associated with a dictionary that includes image and video content values. In such an embodiment, the machine vision module 556 can use the objects identified in the image of the content segment and the arrangement of the objects identified therein to select one or more content values ​​from the dictionary as content features. For example, a simple such machine vision module 556 can identify a ball in an image and select the values ​​of ball and game as content features. A more complex module can identify the type of ball as basketball and include "basketball" as a feature value. A more complex machine vision module 556 can identify basketballs, crowds, court colors, and overhead perspectives of the court to identify "professional basketball games" and "basketball stadiums" as content values ​​for content. The same complex machine vision module 556 can identify basketballs, park backgrounds, and concrete court surfaces, and associate "amateur basketball games" and "playground basketball" as content values ​​for content.

[0064] These content values ​​generated by the machine vision module 556 may then be stored in the content feature database 558 along with other feature values. Such feature values ​​may include: one or more content values ​​(i.e., identification of content in the content); generation time; generation period; generation location; generation region; one or more quality values, any metadata values ​​associated with the content, an identifier of a particular content segment, or any other such value. In some embodiments, a copy of the content may be stored in the content feature database 558 along with location information, acquisition time information, and any other such information about the content segment. In some embodiments, the content feature database 558 may anonymously store details about content usage. For example, the client device 110, 120 may convey details about the presentation of the content and about screenshots of the content on the screen of the device. Anonymous metrics about how often a content segment is viewed as part of a story, how long the content is viewed, and how often screenshots are taken may then be measured by the server system 550 as part of the analysis by the content feature analysis module 554, with the resulting data being stored in the content feature database 558.

[0065] The trend analysis module 560 can then use the details from the content feature database 558 to identify patterns associated with content features. The trend analysis module 560 can track how often the machine vision module 556 associates content with the content value "basketball". The trend analysis module 560 can also track content features associated with location, time of day, time of year, holidays, and other such features in addition to content features. In addition, multiple features can be tracked together to identify complex patterns.

[0066] The story generation module 562 can then use the information about the content segments from the content feature database 558 and the information about the trends from the trend analysis module 560 to select specific pictures or videos for the automatically generated stories. In various embodiments, the story generation module 562 can use complex scoring, weighting, and other rules to generate stories. For example, some embodiments may require that all content segments meet a quality threshold unless a trend with a specific threshold feature is identified and all content associated with the trend is below the quality threshold. Another embodiment may weight story generation based on multiple stories currently available in a local geographic area. In further embodiments, any number of complex rules can be applied together as part of story generation to filter images and videos for stories based on time, location, content, and quality.

[0067] Similarly, when a user selects a content segment in a story, if a single input is provided, the system can use similar rules to select content for a sub-story. For example, if the selected content segment is associated with six different content features, the system can attempt to provide images or videos for a sub-story with a variety of each of the six different content features. Selecting a content segment in a sub-story that shares two of the original six features can then result in a second story that includes content with the shared features of these two features. Some embodiments may allow content in a sub-story to be earlier or further away than the client device 110, 120 that issued the request, while other systems may maintain strict restrictions on how far or how early the content segment is. In some embodiments, content selection may provide a user interface that lists content features, and the user may select which content feature is used to generate a sub-story.

[0068] Figure 6 6 is a flow chart illustrating aspects of a method 600 according to some example embodiments. The method 600 is a method performed by the server system 550. For purposes of illustration, the method 600 is described with respect to the server system 550. In other embodiments, the method 600 may be performed by various other server system implementations.

[0069] The method 600 begins at operation 602 by receiving a plurality of communications from a plurality of client devices 110, 120 at the I / O module 552 of the server system 550. Each communication includes a content segment, a location associated with the content, and a time associated with the content.

[0070] Operation 604 then involves processing, by the content characteristics analysis module 554 of the server system 550, each content communication from the plurality of communications to determine a set of content characteristics for each content segment.

[0071] Operation 606 then involves generating at least a first story set 292 using the story generation module 562 of the server system 550, wherein the first story set 292 includes a first plurality of content from the plurality of communications, and wherein the plurality of content for the first story set 292 is selected based on a set of content features for each content segment of the first plurality of content. In some embodiments, content features are additionally identified using the machine vision module 556 to identify content values. Additional embodiments of the method 600 may also involve performing a trend analysis associated with one or more content feature values ​​using the trend analysis module 560, and a story may be generated based on the trend analysis and the content features.

[0072] Although method 400 and method 600 each present a set of operations in a particular order, each of these methods can be implemented with operations in a different order, or with additional operations included between the described operations. In other embodiments, other methods (including various other system implementations and operations) are also possible.

[0073] Figure 7 700 is a block diagram illustrating the architecture of software 702 that may be installed on any one or more of the above-described devices. For example, in various embodiments, client devices 110 and 120 and server systems 150, 250, and 550 may be implemented using some or all elements of software 702. Figure 7 This is merely a non-limiting example of a software architecture, and it should be understood that many other architectures may be implemented to facilitate the functionality described herein. In various embodiments, software 702 is comprised of, for example, Fig. 9 900, which includes a processor 910, a memory 930, and an I / O component 950. In this example architecture, the software 702 can be conceptualized as a stack of layers, each of which can provide specific functionality. For example, the software 702 includes layers such as an operating system 704, a library 706, a framework 708, and an application 710. In operation, the application 710 calls an application program interface (API) call 712 through the software stack and receives a message 714 in response to the API call 712, consistent with some embodiments.

[0074] In various embodiments, the operating system 704 manages hardware resources and provides public services. The operating system 704 includes, for example, a kernel 720, services 722, and drivers 724. Consistent with some embodiments, the kernel 720 serves as an abstraction layer between the hardware and other software layers. For example, the kernel 720 provides functions such as memory management, processor management (e.g., scheduling), component management, network connections, and security settings. Services 722 can provide other public services to other software layers. According to some embodiments, the drivers 724 are responsible for controlling the underlying hardware or interfacing with the underlying hardware. For example, the drivers 724 may include a display driver, a camera driver, or Low-power drivers, Flash drivers, Serial communications drivers (e.g., Universal Serial Bus (USB) drivers), Drivers, audio drivers, power management drivers, etc.

[0075] In some embodiments, the library 706 provides a low-level common infrastructure utilized by the application 710. The library 706 may include a system library 730 (e.g., a C standard library) that may provide functions such as memory allocation functions, string manipulation functions, mathematical functions, etc. In addition, the library 706 may include an API library 732, such as a media library (e.g., a library that supports the rendering and manipulation of various media formats, such as Moving Picture Experts Group-4 (MPEG4), Advanced Video Coding (H.264 or AVC), Moving Picture Experts Group-3 (MP3), Advanced Audio Coding (AAC), Adaptive Multi-Rate (AMR) audio codec, Joint Photographic Experts Group (JPEG or JPG), or Portable Network Graphics (PNG)), a graphics library (e.g., an OpenGL framework for rendering two-dimensional (2D) and three-dimensional (3D) graphics content on a display), a database library (e.g., SQLite that provides various relational database functions), a web library (e.g., WebKit that provides web browsing functions), etc. The library 706 may also include various other libraries 734 to provide many other APIs to the application 710.

[0076] According to some embodiments, the framework 708 provides a high-level common architecture that can be utilized by the applications 710. For example, the framework 708 provides various graphical user interface (GUI) functions, high-level resource management, high-level location services, etc. The framework 708 can provide a wide range of other APIs that can be utilized by the applications 710, some of which can be specific to a particular operating system 704 or platform.

[0077] In an example embodiment, applications 710 include a home application 750, a contacts application 752, a browser application 754, a book reader application 756, a location application 758, a media application 760, a messaging application 762, a game application 764, and various other applications such as third-party applications 766. According to some embodiments, application 710 is a program that executes the functions defined in the program. Various programming languages ​​can be used to create one or more applications 710 constructed in various ways, such as an object-oriented programming language (e.g., Objective-C, Java, or C++) or a procedural programming language (e.g., C or assembly language). In a specific example, third-party application 766 (e.g., a third-party application created by an entity other than the vendor of a particular platform using ANDROID TM or IOS TM Applications developed using a software development kit (SDK) can be mobile software that runs on a mobile operating system, such as iOS. TM ANDROID TM , Or other mobile operating systems. In this example, third-party applications 766 can call API calls 712 provided by operating system 704 to facilitate the functions described herein.

[0078] Some embodiments may specifically include a story application 767. In some embodiments, this may be a standalone application that operates to manage communications with a server system, such as server system 150. In other embodiments, this functionality may be integrated with another application, such as social media application 760 or another such application. Story application 767 may manage the collection of content using the camera device of machine 900, communications with the server system via I / O components 950, and the receipt and storage of received stories in memory 930. Presentation of content and user input associated with the content may be managed by story application 767 using different framework 708, library 706 elements, or operating system 704 elements operating on machine 900.

[0079] Figure 8 Execution of a mobile operating system (e.g., IOS) consistent with some embodiments is shown. TM ANDROID TM , , or other mobile operating systems). The mobile device 800 may implement the software architecture 702 in certain embodiments. In one embodiment, the mobile device 800 includes a touch screen operable to receive tactile data from a user. The illustrated embodiment of the mobile device 800 shows multiple images or videos presented as part of a story, with each content segment having associated options and information attached. Figure 8Content 801 and associated information 802 are particularly shown. For example, content 801 may be similar to content LA7. Associated information 802 may include multiple different details or content features associated with content 801. A user who selects content 801 to generate a sub-story may select from the content features or provide additional information related to the desired features of the sub-story based on additional information 802 associated with content 801. The user may physically touch the mobile device 800, and in response to the touch, the mobile device 800 may determine tactile data such as touch position, touch force, or gesture action. The input may then be sent to a server system to generate a sub-story and communicate the sub-story back to the mobile device 800. In various example embodiments, the mobile device 800 displays a home screen that is operable to launch an application 710, or otherwise manage various aspects of the mobile device 800. In some example embodiments, the home screen provides status information such as battery life, connectivity, or other hardware status. The user may activate a user interface element by touching an area occupied by a corresponding user interface element. In this manner, the user interacts with the application 710 of the mobile device 800. For example, an area occupied by a specific icon included in the home screen is touched so that the application 710 corresponding to the specific icon is launched.

[0080] In certain embodiments, content may be presented within a touch screen of a mobile device 800 operating as a client device 110, 120, and touch input may be used to initiate communications with the server system 550 to request a sub-story, as described above.

[0081] Many types of applications 710 (also referred to as "application apps") may be executed on the mobile device 800, such as native applications (e.g., TM Apps written in Objective-C, Swift, or another suitable language that runs on Android TM The mobile device 800 may include a Java-programmed application 710 running on a mobile device, a mobile web application (e.g., an application 710 written in Hypertext Markup Language-5 (HTML5)), or a hybrid application (e.g., a local shell application 710 that starts an HTML5 session). For example, the mobile device 800 includes a messaging application, an audio recording application, a camera application, a book reader application, a media application, a fitness application, a file management application, a location application, a browser application, a settings application, a contact application, a phone call application, or other applications (e.g., a game application, a social networking application, a biometric monitoring application). In another example, the mobile device 800 includes a user interface such as a web browser. The social messaging application of SNAPCHAT 710, which, consistent with some embodiments, allows users to send public content to the server system 550 and receive stories from the server system 550. The SNAPCHAT application 710 may additionally enable the exchange of private ephemeral image and / or video content messages.

[0082] Fig. 9 is a block diagram illustrating components of a machine 900 capable of reading instructions from a machine-readable medium (e.g., a machine-readable storage medium) and performing any one or more of the methods discussed herein, according to some embodiments. Specifically, Fig. 9 A schematic diagram of a machine 900 in the example form of a computer system within which instructions 916 (e.g., software, programs, applications 710, applet, application, or other executable code) may be executed for causing the machine 900 to perform any one or more of the methodologies discussed herein. In alternative embodiments, the machine 900 operates as a standalone device or may be coupled (e.g., using a network) to other machines. In a networked deployment, the machine 900 may operate in the capacity of a server 550 or a client machine 110, 120 in server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine 900 may include, but is not limited to, a server computer, a client computer, a personal computer (PC), a tablet computer, a notebook computer, a netbook, a set-top box (STB), a personal digital assistant (PDA), an entertainment media system, a cellular phone, a smart phone, a mobile device 800, a wearable device (e.g., a smart watch), a smart home device (e.g., a smart appliance), other smart devices, a network device, a network router, a network switch, a network bridge, or any machine capable of executing instructions 916 that in turn or otherwise specify actions to be taken by the machine 900. In addition, while only a single machine 900 is shown, the term "machine" should also be taken to include a collection of machines 900 that individually or jointly execute instructions 916 to perform any one or more of the methodologies discussed herein.

[0083] In various embodiments, the machine 900 includes a processor 910, a memory 930, and I / O components 950, which may be configured to communicate with each other via a bus 902. In an example embodiment, the processor 910 (e.g., a central processing unit (CPU), a reduced instruction set computing (RISC) processor, a composite instruction set computing (CISC) processor, a graphics processing unit (GPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a radio frequency integrated circuit (RFIC), another processor, or any suitable combination thereof) includes, for example, a processor 912 and a processor 914 that may execute instructions 916. The term "processor" is intended to include a multi-core processor 910 that may include two or more independent processors 912, 914 (also referred to as "cores") that may execute instructions 916 simultaneously. Although Fig. 9 Multiple processors 910 are shown, but the machine 900 may include a single processor 910 having a single core, a single processor 910 having multiple cores (e.g., a multi-core processor 910), multiple processors 912, 914 having a single core, multiple processors 910, 912 having multiple cores, or any combination thereof.

[0084] According to some embodiments, the memory 930 includes a main memory 932, a static memory 934, and a storage unit 936 accessible to the processor 910 via the bus 902. The storage unit 936 may include a machine-readable medium 938 on which are stored instructions 916 embodying any one or more of the methods or functions described herein. During execution thereof by the machine 900, the instructions 916 may also reside, completely or at least partially, within the main memory 932, within the static memory 934, within at least one of the processors 910 (e.g., within a cache memory of the processor), or any suitable combination. Thus, in various embodiments, the main memory 932, the static memory 934, and the processor 910 are considered to be machine-readable media 938.

[0085] As used herein, the term "memory" refers to a machine-readable medium 938 capable of storing data temporarily or permanently, and may be considered to include, but is not limited to, random access memory (RAM), read-only memory (ROM), buffer memory, flash memory, and cache memory. Although the machine-readable medium 938 is shown as a single medium in the example embodiment, the term "machine-readable medium" should be considered to include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) capable of storing instructions 916. The term "machine-readable medium" should also be considered to include any medium or combination of multiple media capable of storing instructions (e.g., instructions 916) for execution by a machine (e.g., machine 900), such that the instructions 916, when executed by one or more processors (e.g., processor 910) of the machine 900, cause the machine 900 to perform any one or more of the methods described herein. Therefore, "machine-readable medium" refers to a single storage device or apparatus, as well as a "cloud-based" storage system or storage network including multiple storage devices or apparatuses. Thus, the term "machine-readable medium" shall be taken to include, but not be limited to, one or more data storage repositories in the form of solid-state memory (e.g., flash memory), optical media, magnetic media, other non-volatile memory (e.g., Erasable Programmable Read-Only Memory (EPROM)), or any suitable combination thereof. The term "machine-readable medium" specifically excludes non-statutory signals per se.

[0086] I / O components 950 include various components for receiving input, providing output, generating output, sending information, exchanging information, collecting measurements, etc. In general, it should be understood that I / O components 950 may include Fig. 9 Many other components not shown in the figure. Only to simplify the following discussion, the I / O components 950 are grouped according to function, and the grouping is not restrictive. In various exemplary embodiments, the I / O components 950 include output components 952 and input components 954. The output components 952 include visual components (e.g., displays such as plasma display panels (PDPs), light emitting diode (LED) displays, liquid crystal displays (LCDs), projectors, or cathode ray tubes (CRTs)), acoustic components (e.g., speakers), tactile components (e.g., vibration motors), other signal generators, etc. The input components 954 include alphanumeric input components (e.g., keyboards, touch screens configured to receive alphanumeric inputs, optical keyboards, or other alphanumeric input components), point-based input components (e.g., mice, touch pads, trackballs, joysticks, motion sensors, or other pointing instruments), tactile input components (e.g., physical buttons, touch screens or other tactile input components that provide the location and force of touch or touch gestures), audio input components (e.g., microphones), etc.

[0087] In some further example embodiments, the I / O component 950 includes, among various other components, a biometric component 956, a motion component 958, an environment component 960, or a position component 962. For example, the biometric component 956 includes a component for detecting expressions (e.g., hand expressions, facial expressions, voice expressions, body postures, or eye tracking), measuring biosignals (e.g., blood pressure, heart rate, body temperature, sweat, or brain waves), identifying a person (e.g., voice recognition, retinal recognition, facial recognition, fingerprint recognition, or EEG-based recognition), etc. The motion component 958 includes an acceleration sensor component (e.g., an accelerometer), a gravity sensor component, a rotation sensor component (e.g., a gyroscope), etc. Environmental components 960 include, for example, lighting sensor components (e.g., photometers), temperature sensor components (e.g., one or more thermometers that detect ambient temperature), humidity sensor components, pressure sensor components (e.g., barometers), acoustic sensor components (e.g., one or more microphones that detect background noise), proximity sensor components (e.g., infrared sensors that detect nearby objects), gas sensor components (e.g., machine olfactory detection sensors, gas detection sensors to detect hazardous gas concentrations for safety or measure pollutants in the atmosphere), or other components that may provide indications, measurements, or signals corresponding to the surrounding physical environment. Position components 962 include position sensor components (e.g., global positioning system (GPS) receiver components), altitude sensor components (e.g., altimeters or barometers that can detect air pressure from which elevation may be derived), orientation sensor components (e.g., magnetometers), etc.

[0088] Various technologies may be used to implement communications. The I / O components 950 may include a communication component 964 operable to couple the machine 910 to a network 980 or a device 970 via a coupler 982 and a coupler 972, respectively. For example, the communication component 964 includes a network interface component or another suitable device that interfaces with the network 980. In other examples, the communication component 964 includes a wired communication component, a wireless communication component, a cellular communication component, a near field communication (NFC) component, Components (e.g. Low energy consumption), Components and other communication components that provide communication via other modes. Device 970 may be another machine 900, or any of a variety of peripheral devices (eg, a peripheral device coupled via a universal serial bus (USB)).

[0089] In addition, in some embodiments, the communication component 964 detects an identifier, or includes a component operable to detect an identifier. For example, the communication component 964 includes a radio frequency identification (RFID) tag reader component, an NFC smart tag detection component, an optical reader component (e.g., an optical sensor for detecting one-dimensional bar codes such as universal product codes (UPC) bar codes, multi-dimensional bar codes such as Quick Response (QR) codes, Aztec codes, Data Matrix, Dataglyph, MaxiCode, PDF417, Supercode, Uniform Commercial Code Reduced Space Symbols (UCC RSS)-2D bar codes, and other optical codes), an acoustic detection component (e.g., a microphone for identifying an audio signal of a tag), or any suitable combination thereof. In addition, various information can be derived via the communication component 964, such as location via Internet Protocol (IP) geographic location, location via Internet Protocol (IP), location information ... Signal triangulation location, which can indicate a specific location through detection Or the location of an NFC beacon signal, etc.

[0090] Transmission medium

[0091] In various example embodiments, one or more portions of network 980 may be an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), the Internet, a portion of the Internet, a portion of a public switched telephone network (PSTN), a plain old telephone service (POTS) network, a cellular telephone network, a wireless network, network, another type of network, or a combination of two or more such networks. For example, network 980 or a portion of network 980 may include a wireless or cellular network, and coupler 982 may be a code division multiple access (CDMA) connection, a global system for mobile communications (GSM) connection, or another type of cellular or wireless coupling. In this example, coupler 982 may implement any of various types of data transmission technologies, such as single carrier radio transmission technology (1xRTT), evolution data optimization (EVDO) technology, general packet radio service (GPRS) technology, enhanced data rates for GSM evolution (EDGE) radio communication technology, including the third generation partnership project (3GPP) of 3G, fourth generation wireless (4G) network, universal mobile telecommunications system (UMTS), high speed packet access (HSPA), world microwave access interoperability (WiMAX), long term evolution (LTE) standard, other standards defined by various standards development organizations, other remote protocols or other data transmission technologies.

[0092] In an example embodiment, instructions 916 are sent or received over network 980 using a transmission medium via a network interface device (e.g., a network interface component included in communication component 964), and using any of a number of well-known transmission protocols (e.g., Hypertext Transfer Protocol (HTTP)). Similarly, in other example embodiments, instructions 916 are sent or received to device 970 using a transmission medium via a coupler 972 (e.g., a peer-to-peer coupling). The term "transmission medium" should be taken to include any intangible medium that is capable of storing, encoding, or carrying instructions 916 to be executed by machine 900, and includes digital or analog communication signals or other intangible media to facilitate the communication of such software.

[0093] Furthermore, the machine-readable medium 938 is non-transitory (in other words, does not have any transient signals) because it does not contain propagating signals. However, labeling the machine-readable medium 938 as "non-transitory" should not be interpreted to mean that the medium cannot be moved, and the medium 938 should be considered to be transportable from one physical location to another. In addition, because the machine-readable medium 938 is tangible, the medium 938 can be considered a machine-readable device.

[0094] language

[0095] Throughout the specification, multiple instances can be implemented as components, operations or structures described as single instances. Although the individual operations of one or more methods are shown and described as individual operations, one or more of the individual operations can be performed in parallel, and the operations do not need to be performed in the order shown. The structure and function presented as the individual components in the example configuration can be implemented as a combined structure or component. Similarly, the structure and function presented as a single component can be implemented as an individual component. These and other variations, modifications, additions and improvements fall within the scope of this paper theme.

[0096] Although an overview of the inventive subject matter has been described with reference to specific example embodiments, various modifications and changes may be made to these embodiments without departing from the broader scope of the embodiments of the present disclosure. These embodiments of the inventive subject matter may be referred to herein, individually or collectively, by the term "invention," which is merely a convenience and is not intended to voluntarily limit the scope of the present application to any single disclosure or inventive concept, even if more than one is in fact disclosed.

[0097] The embodiments shown herein are described in sufficient detail to enable those skilled in the art to practice the disclosed teachings. Other embodiments may be used and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of the present disclosure. Therefore, the specific embodiments should not be considered restrictive, and the scope of the various embodiments is limited only by the appended claims and all equivalents to which these claims are assigned.

[0098] As used herein, the term "or" may be interpreted in an inclusive or exclusive manner. In addition, multiple instances may be provided as a single instance for the resources, operations, or structures described herein. In addition, the boundaries between various resources, operations, modules, generators, and data stores are somewhat arbitrary, and specific operations are shown in the context of specific illustrative configurations. Other allocations of functions may be envisioned, and they may fall within the scope of various embodiments of the present disclosure. Typically, structures and functions presented as separate resources in an example configuration may be implemented as a combined structure or resource. Similarly, structures and functions presented as a single resource may be implemented as a separate resource. These and other variations, modifications, additions, and improvements fall within the scope of the embodiments of the present disclosure as represented by the appended claims. Therefore, the specification and drawings are considered to be illustrative rather than restrictive.

Claims

1. A method for generating a story, comprising: receiving, at a server system, a plurality of content communications, each content communication comprising content; processing, by the server system, each content communication from the plurality of content communications to determine a set of content characteristics for each content segment; generating at least a first story, wherein the first story includes a first plurality of content segments from the plurality of content communications, and wherein the first plurality of content segments of the first story are selected based on a plurality of content features of each of the first plurality of content segments; associating visibility of the first story with a first visibility area; communicating the first story to a first plurality of client devices within the first visibility area; analyzing a plurality of incoming content messages to determine system trends associated with the first story; and The visibility of the first story is adjusted to a second visibility zone.

2. The method according to claim 1, wherein: The plurality of content communications are received from a second plurality of client devices, and wherein a location and a time are associated with the content.

3. The method according to claim 2, wherein: One or more client devices of the first plurality of client devices are client devices of the second plurality of client devices.

4. The method according to claim 1, wherein: The first visibility area is a local geographic area, the second visibility area is a regional geographic area including a plurality of local geographic areas, and the first visibility area is a first local geographic area among the plurality of local geographic areas in the regional geographic area.

5. The method according to claim 4, wherein: The second visibility area is a local geographic area, the first visibility area is a regional geographic area including a plurality of local geographic areas, and the second visibility area is a first local geographic area among the plurality of local geographic areas in the regional geographic area.

6. The method according to claim 1, wherein: The plurality of content features include one or more of the following: Local content geographic location area; Content time period; one or more content quality metrics; as well as One or more content categories.

7. The method according to claim 6, wherein: The one or more content categories are determined using machine vision processing operating as part of the server system to analyze each received content communication.

8. The method of claim 7, further comprising, before generating the first story: determining, by the server system, a baseline content reception rate for a first set of content characteristics; determining, by the server system, that a current content reception rate associated with the first set of content characteristics has deviated from the baseline content reception rate by more than a threshold amount; and A story visibility area for the first story is adjusted based on determining that the current content reception rate for the first set of content features has deviated from the baseline content reception rate by more than the threshold amount.

9. The method according to claim 8, further comprising: communicating the first story to the first client device based at least in part on a location of the first client device within the story visibility area; receiving, at the server system, from the first client device, a selection communication associated with a second content segment of the first story; communicating a second story including a content segment that shares at least a portion of a set of content characteristics of the second content segment; and The second story is communicated to the first client device.

10. The method according to claim 9, wherein: The second story is generated in response to receipt of the selection communication at the server system.

11. The method according to claim 9, wherein: Prior to receipt of the select communication, the second story is generated based on content characteristics of the second content segment and associated with the second content segment.

12. The method according to claim 11, wherein: The machine vision processing generates one or more content feature values ​​for each content segment from a content dictionary; and The one or more content categories are determined using the content feature value of each content segment.

13. A server system for generating a story, comprising: Memory; as well as One or more processors coupled to the memory and configured to: receiving a plurality of content communications, each content communication comprising content; processing each content communication from the plurality of content communications to determine a set of content characteristics for each content segment; generating at least a first story, wherein the first story includes a first plurality of content segments from the plurality of content communications, and wherein the first plurality of content segments of the first story are selected based on a plurality of content features of each of the first plurality of content segments; associating visibility of the first story with a first visibility area; communicating the first story to a first plurality of client devices within the first visibility area; analyzing a plurality of incoming content messages to determine system trends associated with the first story; and The visibility of the first story is adjusted to a second visibility zone.

14. The server system according to claim 13, wherein: The plurality of content communications are received from a second plurality of client devices, and wherein a location and a time are associated with the content.

15. The server system according to claim 14, wherein: One or more client devices of the first plurality of client devices are client devices of the second plurality of client devices.

16. A non-transitory computer-readable medium for generating a story, comprising computer-readable instructions that, when executed by one or more processors, cause a server system to: receiving a plurality of content communications from a plurality of client devices, each content communication comprising content, a location associated with the content, and a time associated with the content; processing, by the server system, each content communication from the plurality of content communications to determine a set of content characteristics for each content segment; automatically generating at least a first story, wherein the first story includes a first plurality of content segments from the plurality of content communications, and wherein the first plurality of content segments of the first story are selected based on the set of content features of each of the first plurality of content segments; associating visibility of the first story with a first visibility area; communicating the first story to a first client device within the first visibility area; analyzing a plurality of incoming content messages to determine system trends associated with the first story; and The visibility of the first story is adjusted to a second visibility zone.

17. The non-transitory computer readable medium of claim 16, wherein: The set of content characteristics includes one or more of the following: Local content geographic location area; Content time period; one or more content quality metrics; as well as One or more content categories.

18. The non-transitory computer readable medium of claim 16, wherein: The readable instructions further cause the server system to: receiving, at the server system, from the first client device, a selection communication associated with a second content segment of the first story; communicating a second story including a content segment that shares at least a portion of a set of content characteristics of the second content segment; and The second story is communicated to the first client device.

Citation Information

Patent Citations

  • System for creating stories using images, and methods and interfaces associated therewith

    US20140040712A1

  • Systems and methods for obtaining and using targeted insights within a digital content and information sharing system

    US20140280501A1