Adobe Systems Patent Applications

Fitting a Parametric Curve using Maximum Curvature

Granted: February 9, 2017
Application Number: 20170039740
Maximum curvature techniques are described. In one or more implementations, a curve includes a first data point disposed between second and third data points. The first data point is freely moveable while the second and third data points are constrained from movement.

CROSS-SITE REQUEST FORGERY DEFENSE

Granted: February 9, 2017
Application Number: 20170041144
An HTML document includes a JavaScript element that manages CSRF token use. When the HTML document is rendered, the JavaScript element asynchronously requests a CSRF token from the server. In response, the server generates a JWT using a keyed HMAC algorithm. The resulting JWT, which functions as a CSRF token, is returned to the user where it is stored in a protected variable inside the JavaScript element. The CSRF token is therefore stateless and isn't stored in a server-side repository.…

Facilitating the operation of a client/server application while a client is offline or online

Granted: February 9, 2017
Application Number: 20170041439
One embodiment of the present invention provides a system that facilitates the operation of a client/server application while a client is online or offline. The system operates by receiving a request from an application at a client to synchronize data with a server. In response to the request, the system places the data in a resource, wherein the resource can be a file. Next, the system sends an acknowledgement to the application. The system then determines a protocol for synchronizing…

Rendering Illustrations using a Two-Dimensional Rendering Engine

Granted: February 2, 2017
Application Number: 20170032490
A rendering engine is described that implements rendering techniques to render 2D illustrations by assigning light values to objects that define an illustration ‘inside out’. Light values may be assigned to a first object and subsequently inherited by objects that are hierarchly related to the first object. The light values assigned to the objects may include a light variable that depends on a relationship between the two or more groups of objects. Various rendering techniques may be…

IMPLEMENTING OUT OF ORDER ACCESS TO REVERSAL OPERATIONS IN IMAGES

Granted: February 2, 2017
Application Number: 20170032552
A computing device is provided. The computing device includes a memory, at least one processor coupled to the memory and an action undo module executable by the processor. The action undo module is configured to receive user input requesting a target session of one or more sessions be undone. Each session of the one or more sessions includes at least one identifier of at least one tile that is affected by a respective action. The target session includes an identifier of a target action…

EDGE PRESERVING COLOR SMOOTHING OF 3D MODELS

Granted: February 2, 2017
Application Number: 20170032580
Techniques are disclosed for noise reduction and color smoothing of scanned 3D models for 3D printing. An anisotropic box kernel variant of a bilateral filter is applied to each vertex of a 3D mesh model, where the vertices contain color information. With bilateral filtering, the color at a given vertex is, under certain conditions, replaced by a Gaussian weighted average of colors of neighboring vertices. The weighting is a function of a geometric distance between vertices. The…

WEB DOCUMENT PREVIEW PRIVACY AND SECURITY PROTECTION

Granted: January 12, 2017
Application Number: 20170012980
Techniques are disclosed for protecting the privacy and security of data associated with a web document. A web browser is configured to manipulate the URL, which contains an access token, of a preview web page document before the browser loads external resources (e.g., web page content) linked from the preview web page document. For example, the browser may change a current page URL containing the access token to another sacrificial URL that does not include the token. In addition, the…

AUTHENTICATION CONTEXT TRANSFER FOR ACCESSING COMPUTING RESOURCES VIA SINGLE SIGN-ON WITH SINGLE USE ACCESS TOKENS

Granted: January 5, 2017
Application Number: 20170006020
Techniques are disclosed for accessing computing resources using secure single sign on authentication with a single use access token, including website-to-desktop application delivery and secure transfer of context information from the website to the desktop application once valid security credentials are provided from the same end-user computing device. A user signs onto a web application once using the security credentials. A web-based single use token generator generates a single use…

Accelerating Object Detection

Granted: December 22, 2016
Application Number: 20160371538
Accelerating object detection techniques are described. In one or more implementations, adaptive sampling techniques are used to extract features from an image. Coarse features are extracted from the image and used to generate an object probability map. Then, dense features are extracted from high-probability object regions of the image identified in the object probability map to enable detection of an object in the image. In one or more implementations, cascade object detection…

HYBRID SURFACES FOR MESH REPAIR

Granted: December 22, 2016
Application Number: 20160371891
Techniques are provided for repairing a polygon mesh that represents a three-dimensional surface, the repaired mesh comprising explicit regions that are preserved from the original mesh and implicit regions that are modified from the mesh repair operation. The explicit and implicit regions that comprise the hybrid surface meet along a “cut path” which can be located by identifying the elements of the volumetric grid where the implicit and explicit surfaces diverge. These elements…

DRM PROTECTED VIDEO STREAMING ON GAME CONSOLE WITH SECRET-LESS APPLICATION

Granted: December 15, 2016
Application Number: 20160366116
Techniques are disclosed for secure playback of protected multimedia content on a game console using a secret-less application. An SSO model can be used for client authentication at a key server, which eliminates the need of storing or using any secret information in the client application. Further, an encrypted content key generated by a content packager using a public key can be deployed in the key URI of a playlist file, which is sent to the key server. The key server can be…

USING USER SEGMENTS FOR TARGETED CONTENT

Granted: December 8, 2016
Application Number: 20160358206
Techniques for providing content to a computing device of a user are described. For example, a platform hosts a plurality of tools includes an analytics tool and a content tool. Input of a customer of the platform is received and specifies user segments and content to be provided accordingly. The tools are updated based on the customer input. User interactions of the user are also received and analyzed by, for example, the analytics tool. The analytics tool outputs an indication that the…

DIGITAL ASSET AND DESIGN COMPONENT TRACKING IN A COLLABORATIVE ENVIRONMENT

Granted: December 1, 2016
Application Number: 20160350716
As digital assets are created and shared, design components that comprise those digital assets are curated, organized, and tracked so as to allow meaningful relationships to be established between shared assets and design components. The tracking that underlies such relationships is provided by metadata associated with a given design component. This metadata may include information such as an asset identifier that identifies a source digital asset from which the design component was…

Decrypting Content Samples Including Distinct Encryption Chains

Granted: December 1, 2016
Application Number: 20160352755
Embodiments may be configured to receive a protected version of content that includes multiple encrypted content samples. In various embodiments, each encrypted content sample includes multiple encrypted blocks. For a given encrypted content sample, different sets of encrypted blocks in that sample may form different encryption chains. The protected version of the content may further include decryption information for decrypting the encrypted content samples. The decryption information…

SCALE ADAPTIVE BLIND DEBLURRING

Granted: November 17, 2016
Application Number: 20160335747
Techniques are disclosed for removing blur from a single image by accumulating a blur kernel estimation across several scale levels of the image and balancing the contributions of the different scales to the estimation depending on the noise level in each observation. In particular, a set of observations can be obtained by applying a set of variable scale filters to a single blurry image at different scale levels. A single blur kernel can be estimated across all scales from the set of…

INCREMENTAL GLOBAL NON-RIGID ALIGNMENT OF THREE-DIMENSIONAL SCANS

Granted: November 17, 2016
Application Number: 20160335771
Techniques are provided for incrementally aligning multiple scans of a three-dimensional subject. This can be accomplished by establishing an updated aligned set of scans as each new scan is sequentially processed and aligned with the existing scans. In such embodiments the pairwise and global alignment processes are effectively combined into a single collective alignment process. This collective alignment converges to an optimal alignment faster than the sequential pairwise alignment…

Natural Language Processing Utilizing Grammar Templates

Granted: November 3, 2016
Application Number: 20160321242
Natural language input processing utilizing grammar templates are described. In one or more implementations, a natural language input indicating an operation to be performed is parsed into at least one part-of-speech, a grammar template corresponding to the part-of-speech is located, an arbitrary term in the part-of-speech is detected based on the located grammar template, a term related to the arbitrary term and describing a modification for the operation is determined based on the…

Object Detection Using Cascaded Convolutional Neural Networks

Granted: October 20, 2016
Application Number: 20160307074
Different candidate windows in an image are identified, such as by sliding a rectangular or other geometric shape of different sizes over an image to identify portions of the image (groups of pixels in the image). The candidate windows are analyzed by a set of convolutional neural networks, which are cascaded so that the input of one convolutional neural network layer is based on the input of another convolutional neural network layer. Each convolutional neural network layer drops or…

USER FEEDBACK PROVIDED FROM WITHIN AN APPLICATION

Granted: October 6, 2016
Application Number: 20160291937
A method for providing user feedback leverages background data collected by a software application. A software application includes a feedback mode that is accessible via a keyboard shortcut or the like. Once invoked, the feedback mode disables functionality normally associated with toolbar icons, menu options, scroll bars, and other user interface elements. Certain user interface elements are highlighted or otherwise provided with a modified appearance. Selecting one of these…

Feature Interpolation

Granted: October 6, 2016
Application Number: 20160292537
Feature interpolation techniques are described. In a training stage, features are extracted from a collection of training images and quantized into visual words. Spatial configurations of the visual words in the training images are determined and stored in a spatial configuration database. In an object detection stage, a portion of features of an image are extracted from the image and quantized into visual words. Then, a remaining portion of the features of the image are interpolated…