IP Library › Granted Patent US 11,372,529
Granted Patent B1
US 11,372,529 · App. 17/392,675 · Granted Jun 28, 2022

Digital image object anchor points

Inventors: Arushi Jain (Ashok Vihar, IN); Praveen Kumar Dhanuka (Howrah, IN); Varun Sharma (Noida, IN)
Assignee: Adobe Inc.
G06F3/04845G06F3/04842G06T11/60
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 11,372,529
App. No.
17/392,675
Granted
Jun 28, 2022
Kind
B1
Abstract

Digital image object anchor point techniques are described that increase user efficiency in interacting with a user interface to create digital images. This is achieved through use of anchor points by the digital image editing system that are defined with respect to an actual geometry of the object. Further, filtering and prioritization techniques are also leveraged to promote real world utility and efficiency of these techniques as a balance between having too many and two few anchor points.

Claims (49)

1. In a digital medium object location environment, a method implemented by a computing device, the method comprising:

generating, by the computing device, candidate anchor points for an object included in a digital image displayed in a user interface;

filtering, by the computing device, the candidate anchor points, to generate a filtered set of anchor points;

determining, by the computing device, priority of the filtered set of anchor points, one to another; and

controlling, by the computing device, a location operation based on a location of the object in relation to a location of another object in the user interface based on the priority of the filtered set of anchor points.

2. The method as described in claim 1 , wherein the generating includes generating at least one said candidate anchor point that is explicit based on a vector geometry used to define the object.

3. The method as described in claim 1 , wherein the generating includes generating at least one said candidate anchor point that is implicit by analyzing a local maximum or minimum in a geometry used to define the object.

4. The method as described in claim 1 , wherein the generating includes generating at least one said candidate anchor point this is implicit by analyzing curvature in a geometry used to define the object.

5. The method as described in claim 1 , wherein the filtering is performed such that at least one anchor point of the filtered set of anchor points corresponds to a comer of the object.

6. The method as described in claim 1 , wherein the filtering is based on a curvature of a geometry of the object.

7. The method as described in claim 6 , further comprising:

identifying a plateau in a curvature plot generated based on the object; and

finding an extreme between samples points from the curvature plot between a start point and an end point of the plateau, and wherein the extreme is included in the filtered set of anchor points.

8. The method as described in claim 1 , wherein the filtering includes determining visual importance of the candidate anchor points, respectively, by:

removing a respective said candidate anchor point from a geometry of the object;

ascertaining whether a visual change occurred to the object resulting from the removing; and

including the respective said candidate anchor point in the filtered set of anchor points responsive to the ascertaining that the visual change did occur.

9. The method as described in claim 1 , wherein the determining the priority includes:

identifying a subset of the filtered set of anchor points that satisfy a constraint of the location operation;

assigning weights to the subset of the filtered set of anchor points, respectively; and

selecting an anchor point from the subset of the filtered set of anchor points for use in the location operation based on the weights.

10. The method as described in claim 9 , wherein the weights are based at least in part on a direction of movement of the object in the user interface.

11. The method as described in claim 9 , wherein the weights are based at least in part on a distance of respective said anchor points in the subset of the filtered set of anchor points to a selection point of the object in the user interface.

12. The method as described in claim 1 , wherein the location operation is a snapping operation, alignment operation, or spacing operation.

13. The method as described in claim 1 , wherein the controlling of the location operation includes outputting one or more guides in the user interface indicating alignment or spacing of the object in relation to the another object based on a respective said anchor point identified based on the priority of the filtered set of anchor points.

14. In a digital medium object location environment, a system comprising:

a candidate generation module implemented at least partially in hardware of a computing device to generate candidate anchor points for an object included in a digital image displayed in a user interface;

a filter module implemented at least partially in hardware of the computing device to filter the candidate anchor points to generate a filtered set of anchor points;

a prioritization module implemented at least partially in hardware of the computing device to determine a priority of the filtered set of anchor points, one to another; and

a location management module implemented at least partially in hardware of the computing device to control a location operation specifying a location of the object in relation to a location of another object in the user interface based on the priority of the filtered set of anchor points.

15. The system as described in claim 14 , wherein the filter module is configured to filter based on a curvature of a geometry of the object or is performed such that at least one anchor point of the filtered set of anchor points corresponds to a comer of the object.

16. The system as described in claim 14 , wherein the candidate generation module is configured to generate at least one said candidate anchor point that is:

explicit based on a vector geometry used to define the object;

implicit by analyzing a local maximum or minimum in a geometry used to define the object; or

implicit by analyzing curvature in a geometry used to define the object.

17. The system as described in claim 14 , wherein the filter module is configured to filter based on visual importance of the candidate anchor points, respectively, by:

removing a respective said candidate anchor point from a geometry of the object; and

ascertaining whether a visual change occurred to the object resulting from the removing; and

including the respective said candidate anchor point in the filtered set of anchor points responsive to the ascertaining that the visual change did occur.

18. The system as described in claim 15 , wherein the prioritization module is configured to determine the priority by:

identifying a subset of the filtered set of anchor points that satisfy a constraint of the location operation;

assigning weights to the subset of the filtered set of anchor points, respectively; and

selecting an anchor point from the subset of the filtered set of anchor points for use in the location operation based on the weights.

19. A non-transitory computer-readable storage medium having instructions stored thereon that, responsive to execution by a processor, causes the processor to perform operations including:

generating candidate anchor points for an object included in a digital image displayed in a user interface;

filtering the candidate anchor points to generate a filtered set of anchor points;

determining priority of the filtered set of anchor points, one to another; and

controlling a location operation based on a location of the object in relation to a location of another object in the user interface based on the priority of the filtered set of anchor points.

20. The non-transitory computer-readable storage medium as described in claim 19 , wherein the generating the candidate anchor points includes generating at least one said candidate anchor point that is explicit based on a vector geometry used to define the object.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2021
From: JAIN, ARUSHI; DHANUKA, PRAVEEN KUMAR; SHARMA, VARUN
To: ADOBE INC.
Reel/Frame 057066/0611 →
Cited By (2)
US 12,498,793 US 12,639,909