Abstract:
The disclosed technology includes techniques for improved content coverage in automatically-generated content summaries. The technique may include clustering a set of input content, determining diffusion for each cluster, and selecting representatives of each cluster to optimize other secondary metrics. Various types of input content may be used, including groups of images, video clips, or other multimedia content. Contiguous content may be manually or programmatically divided into discrete portions before clustering, for example, a lengthy video divided into a number of short clips. In some implementations, the disclosed technique may be implemented effectively on a mobile device. In other words, the processing required may be computationally feasible for execution on a smartphone or similar device.
Abstract:
A computer-implemented technique can receive a plurality of photos and automatically select a subset of the plurality of photos having a high degree of representativeness by jointly maximizing both photo quality and photo diversity to obtain a photo album. The technique can determine one or more clusters for the photo album using a hierarchical clustering algorithm, and store the photo album according to the one or more clusters. The technique can control the manner in which the photo album is displayed using the one or more clusters. The technique can adjust at least one of the one or more clusters and the automatic photo album generation based on user input. The user input can include at least one of adding, deleting, and moving a photo with respect to the one or more clusters. The technique can then re-cluster, automatically generate a new photo album, and/or adjust the presentation.
Abstract:
In general, techniques of this disclosure may enable a computing device to capture one or more images based on a natural language user input. The computing device, while operating in an image capture mode, receive an indication of a natural language user input associated with an image capture command. The computing device determines, based on the image capture command, a visual token to be included in one or more images to be captured by the camera. The computing device locates the visual token within an image preview output by the computing device while operating in the image capture mode. The computing device captures one or more images of the visual token.
Abstract:
In general, the subject matter described in this disclosure can be embodied in methods, systems, and program products for detecting motion in images. A computing system receives first and second images that were captured by a camera. The computing system generates, using the images, a mathematical transformation that indicates movement of the camera from the first image to the second image. The computing system generates, using the first image and the mathematical transformation, a modified version of the first image that presents the scene that was captured by the first image from a position of the camera when the second image was captured. The computing system determines a portion of the first image or second image at which a position of an object in the scene moved, by comparing the modified version of the first image to the second image.
Abstract:
In one example, a method includes determining, by a processor (104) of a wearable computing device (102) and based on motion data generated by a motion sensor (106) of the wearable computing device, one or more strokes. In this example, the method also includes generating, by the processor and based on the motion data, a respective attribute vector for each respective stroke from the one or more strokes and classifying, by the processor and based on the respective attribute vector, each respective stroke from the one or more strokes into at least one category. In this example, the method also includes determining, by the processor and based on a gesture library and the at least one category for each stroke from the one or more strokes, a gesture. In this example, the method also includes performing, by the wearable device and based on the gesture, an action.
Abstract:
In one example, a method includes determining, by a processor (104) of a wearable computing device (102) and based on motion data generated by a motion sensor (106) of the wearable computing device, one or more strokes. In this example, the method also includes generating, by the processor and based on the motion data, a respective attribute vector for each respective stroke from the one or more strokes and classifying, by the processor and based on the respective attribute vector, each respective stroke from the one or more strokes into at least one category. In this example, the method also includes determining, by the processor and based on a gesture library and the at least one category for each stroke from the one or more strokes, a gesture. In this example, the method also includes performing, by the wearable device and based on the gesture, an action.
Abstract:
In general, the subject matter can be embodied in methods, systems, and program products for identifying, by a computing system and using first and second frames of a video, a transformation that indicates movement of a camera with respect to the frames. The computing system generates a modified transformation so that the transformation is less representative of recent movement. The computing system uses the transformation and the modified transformation to generate a second transformation. The computing system identifies an anticipated distortion that would be present in a stabilized version of the second frame. The computing system determines an amount by which to reduce a stabilizing effect. The computing system applies the second transformation to the second frame to stabilize the second frame, where the stabilizing effect has been reduced based on the determined amount by which to reduce the stabilizing effect.
Abstract:
A computer-implemented technique can receive a plurality of photos and automatically select a subset of the plurality of photos having a high degree of representativeness by jointly maximizing both photo quality and photo diversity to obtain a photo album. The technique can determine one or more clusters for the photo album using a hierarchical clustering algorithm, and store the photo album according to the one or more clusters. The technique can control the manner in which the photo album is displayed using the one or more clusters. The technique can adjust at least one of the one or more clusters and the automatic photo album generation based on user input. The user input can include at least one of adding, deleting, and moving a photo with respect to the one or more clusters. The technique can then re-cluster, automatically generate a new photo album, and/or adjust the presentation.
Abstract:
Implementations relate to a system for video encoding and conversion including an image resolution conversion component operable to convert a resolution of a source image frame from a first resolution to a second resolution to produce a first intermediate image frame at the second resolution; an image conversion component operable to receive the first intermediate image frame and convert an image size of the first intermediate image frame to another image frame size to produce a first viewable image frame; an image viewer component operable to display the first viewable image on a first display; a color space conversion component comprising a luminance conversion component and a chrominance operable to receive the first viewable image frame and convent a first luminance value and a first chrominance value of the first viewable image frame to a second intermediate image frame having a second luminance value and a second chrominance value.
Abstract:
The disclosed technology includes techniques for improved content coverage in automatically-generated content summaries. The technique may include clustering a set of input content, determining diffusion for each cluster, and selecting representatives of each cluster to optimize other secondary metrics. Various types of input content may be used, including groups of images, video clips, or other multimedia content. Contiguous content may be manually or programmatically divided into discrete portions before clustering, for example, a lengthy video divided into a number of short clips. In some implementations, the disclosed technique may be implemented effectively on a mobile device. In other words, the processing required may be computationally feasible for execution on a smartphone or similar device.