IP Library Granted Patent US 9,128,602
Granted Patent B2
US 9,128,602 · App. 12/702,555 · Granted Sep 8, 2015

Gallery application for content viewing

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,128,602
App. No.
12/702,555
Granted
Sep 8, 2015
Kind
B2
Abstract

A gallery software application enables a user to browse, view, and interact with various content items, such as still images and videos. The gallery includes a graphical user interface, where a content item is represented by an image. A group of content items is represented by a displayed stack of partially-overlapping images. A content item is associated with geo-location information and timestamp information. This information is used to divide the content items into groups.

Claims (101)

1. A computer-implemented method comprising:

identifying, using a processor, a current group of content items, a previous content item, and a current content item;

identifying, using the processor, a first timestamp associated with the previous content item and a second timestamp associated with the current content item;

determining, using the processor, whether a time difference between the first timestamp and the second timestamp exceeds a threshold time amount;

responsive to the time difference not exceeding the threshold time amount, adding the current content item to the current group; and

responsive to the time difference exceeding the threshold time amount:

identifying, using the processor, a first geo-location associated with the previous content item and a second geo-location associated with the current content item;

determining, using the processor, whether a geographical distance between the first geo-location and the second geo-location exceeds a threshold distance amount;

responsive to the geographical distance exceeding the threshold distance amount, creating a new group that includes the current content item; and

responsive to the geographical distance not exceeding the threshold distance amount:

determining whether to split the current group into two groups by determining, using the processor, whether a number of content items in the current group exceeds a threshold;

determining where to split the current group into two groups by:

determining a point in time with a biggest change in content item frequency; and

determining whether a frequency ratio of that point in time satisfies a ratio constraint; and

responsive to the number of content items in the current group exceeding the threshold and to the frequency ratio satisfying the ratio constraint, splitting the current group into two groups at that point in time.

2. The method of claim 1 , wherein determining the point in time with the biggest change in content item frequency comprises:

for each set of three content items consecutive in chronological order within the current group, determining a frequency ratio of a time interval between first and second consecutive content items and a time interval between second and third consecutive content items; and

determining a largest frequency ratio among all sets of three content items consecutive in chronological order within the current group.

3. The method of claim 1 , further comprising:

determining whether the current group should be combined with a previous group; and

responsive to determining that the current group should be combined with the previous group:

removing all of the content items from the current group; and

adding the removed content items to the previous group.

4. The method of claim 3 , wherein determining whether the current group should be combined with the previous group is performed based on how many content items are in the current group and how many content items are in the previous group.

5. The method of claim 4 , wherein determining whether the current group should be combined with the previous group is further performed based on geo-location information associated with a content item that is in the current group and geo-location information associated with a content item that is in the previous group.

6. The method of claim 1 , wherein a content item is a static image, and wherein geo-location information associated with the content item comprises a geographical location shown in the static image.

7. The method of claim 1 , wherein a content item is a static image, and wherein timestamp information associated with the content item comprises a time at which the static image was created.

8. The method of claim 1 , wherein a group represents an event.

9. A computer-implemented method comprising:

identifying, using a processor, a current group of content items, a previous content item, and a current content item;

identifying, using the processor, a first geo-location associated with the previous content item and a second geo-location associated with the current content item;

determining, using the processor, whether a geographical distance between the first geo-location and the second geo-location exceeds a threshold distance amount;

responsive to the geographical distance exceeding the threshold distance amount, creating a new group that includes the current content item; and

responsive to the geographical distance not exceeding the threshold distance amount:

identifying, using the processor, a first timestamp associated with the previous content item and a second timestamp associated with the current content item;

determining, using the processor, whether a time difference between the first timestamp and the second timestamp exceeds a threshold time amount;

responsive to the time difference exceeding the threshold time amount, creating a new group that includes the current content item; and

responsive to the time difference not exceeding the threshold time amount:

determining whether to split the current group into two groups by determining, using the processor, whether a number of content items in the current group exceeds a threshold;

determining where to split the current group into two groups by:

determining a point in time with a biggest change in content item frequency; and

determining whether a frequency ratio of that point in time satisfies a ratio constraint; and

responsive to the number of content items in the current group exceeding the threshold and to the frequency ratio satisfying the ratio constraint, splitting the current group into two groups at that point in time.

10. The method of claim 9 , further comprising:

responsive to the time difference not exceeding the threshold time amount, adding the current content item to the current group.

11. A computer-implemented method comprising:

identifying, using a processor, a current group of content items, a previous content item, and a current content item;

identifying, using the processor, a first timestamp associated with the previous content item and a second timestamp associated with the current content item;

identifying, using the processor, a first geo-location associated with the previous content item and a second geo-location associated with the current content item;

determining, using the processor, whether a time difference between the first timestamp and the second timestamp exceeds a threshold time amount;

determining, using the processor, whether a geographical distance between the first geo-location and the second geo-location exceeds a threshold distance amount; and

when the time difference exceeds the threshold time amount or the geographical distance exceeds the threshold distance amount, creating a new group that includes the current content item; and

responsive to the geographical distance not exceeding the threshold distance amount and responsive to the time difference not exceeding the threshold time amount:

determining whether to split the current group into two groups by determining, using the processor, whether a number of content items in the current group exceeds a threshold;

determining where to split the current group into two groups by:

determining a point in time with a biggest change in content item frequency; and

determining whether a frequency ratio of that point in time satisfies a ratio constraint; and

responsive to the number of content items in the current group exceeding the threshold and to the frequency ratio satisfying the ratio constraint, splitting the current group into two groups at that point in time.

12. A computer program product stored on a non-transitory computer-readable storage medium, the computer program product comprising a machine-readable medium storing computer program code for performing a method, the method comprising:

identifying a current group of content items, a previous content item, and a current content item;

identifying a first timestamp associated with the previous content item and a second timestamp associated with the current content item;

determining whether a time difference between the first timestamp and the second timestamp exceeds a threshold time amount;

responsive to the time difference not exceeding the threshold time amount, adding the current content item to the current group; and

responsive to the time difference exceeding the threshold time amount:

identifying a first geo-location associated with the previous content item and a second geo-location associated with the current content item;

determining whether a geographical distance between the first geo-location and the second geo-location exceeds a threshold distance amount; and

responsive to the geographical distance exceeding the threshold distance amount, creating a new group that includes the current content item; and

responsive to the geographical distance not exceeding the threshold distance amount:

determining whether to split the current group into two groups by determining whether a number of content items in the current group exceeds a threshold;

determining where to split the current group into two groups by:

determining a point in time with a biggest change in content item frequency; and

determining whether a frequency ratio of that point in time satisfies a ratio constraint; and

responsive to the number of content items in the current group exceeding the threshold and to the frequency ratio satisfying the ratio constraint, splitting the current group into two groups at that point in time.

13. A computer program product stored on a non-transitory computer-readable storage medium, the computer program product comprising a machine-readable medium storing computer program code for performing a method, the method comprising:

identifying a current group of content items, a previous content item, and a current content item;

identifying a first geo-location associated with the previous content item and a second geo-location associated with the current content item;

determining whether a geographical distance between the first geo-location and the second geo-location exceeds a threshold distance amount;

responsive to the geographical distance exceeding the threshold distance amount, creating a new group that includes the current content item; and

responsive to the geographical distance not exceeding the threshold distance amount:

identifying a first timestamp associated with the previous content item and a second timestamp associated with the current content item;

determining whether a time difference between the first timestamp and the second timestamp exceeds a threshold time amount;

responsive to the time difference exceeding the threshold time amount, creating a new group that includes the current content item; and

responsive to the time difference not exceeding the threshold time amount:

determining whether to split the current group into two groups by determining whether a number of content items in the current group exceeds a threshold;

determining where to split the current group into two groups by:

determining a point in time with a biggest change in content item frequency; and

determining whether a frequency ratio of that point in time satisfies a ratio constraint; and

responsive to the number of content items in the current group exceeding the threshold and to the frequency ratio satisfying the ratio constraint, splitting the current group into two groups at that point in time.

14. A computer program product stored on a non-transitory computer-readable storage medium, the computer program product comprising a machine-readable medium storing computer program code for performing a method, the method comprising:

identifying a current group of content items, a previous content item, and a current content item;

identifying a first timestamp associated with the previous content item and a second timestamp associated with the current content item;

identifying a first geo-location associated with the previous content item and a second geo-location associated with the current content item;

determining whether a time difference between the first timestamp and the second timestamp exceeds a threshold time amount;

determining whether a geographical distance between the first geo-location and the second geo-location exceeds a threshold distance amount;

when the time difference exceeds the threshold time amount or the geographical distance exceeds the threshold distance amount, creating a new group that includes the current content item; and

responsive to the geographical distance not exceeding the threshold distance amount and responsive to the time difference not exceeding the threshold time amount:

determining whether to split the current group into two groups by determining whether a number of content items in the current group exceeds a threshold;

determining where to split the current group into two groups by:

determining a point in time with a biggest change in content item frequency; and

determining whether a frequency ratio of that point in time satisfies a ratio constraint; and

responsive to the number of content items in the current group exceeding the threshold and to the frequency ratio satisfying the ratio constraint, splitting the current group into two groups at that point in time.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2021
From: VERIZON MEDIA INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 057453/0431 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 045240/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2017
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 042963/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2014
From: COOLIRIS, INC.
To: YAHOO! INC.
Reel/Frame 034398/0787 →
RELEASE OF SECURITY INTEREST Recorded Nov 22, 2014
From: MONTAGE CAPITAL II, L.P.
To: COOLIRIS, INC.
Reel/Frame 034241/0793 →
SECURITY INTEREST Recorded Mar 31, 2014
From: COOLIRIS, INC.
To: MONTAGE CAPITAL II, L.P.
Reel/Frame 032563/0456 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2010
From: KRISHNARAJ, VENKAT; SHOEMAKER, AUSTIN W.; RATHNAM, ADITYA; BHUMKAR, SOUJANYA
To: COOLIRIS, INC.
Reel/Frame 023917/0778 →