Marco Zuliani - Los Gatos CA, US Kevin L. Hunter - Sunnyvale CA, US Jianping Zhou - Fremont CA, US Todd Sachs - Palo Alto CA, US Frank Doepke - San Jose CA, US
Assignee:
Apple Inc. - Cupertino CA
International Classification:
G06K 9/68 H04N 5/228 G06K 9/34
US Classification:
3482221, 382218, 382171, 348E05031
Abstract:
Systems, methods, and computer readable media to register images in real-time and that are capable of producing reliable registrations even when the number of high frequency image features is small. The disclosed techniques may also provide a quantitative measure of a registration's quality. The latter may be used to inform the user and/or to automatically determine when visual registration techniques may be less accurate than motion sensor-based approaches. When such a case is detected, an image capture device may be automatically switched from visual-based to sensor-based registration. Disclosed techniques quickly determine indicators of an image's overall composition (row and column projections) which may be used to determine the translation of a first image, relative to a second image. The translation so determined may be used to align/register the two images.
Frank Doepke - San Jose CA, US Marius Tico - Mountain View CA, US Marco Zuliani - Los Gatos CA, US
Assignee:
Apple Inc. - Cupertino CA
International Classification:
G06K 9/36 H04N 5/228
US Classification:
3482221, 382284, 348E05031
Abstract:
Procedures are described for blending images in real-time that avoid ghosting artifacts (attributable to moving objects), maintain the proper appearance of contiguous edges in the final image, and permits the use of fast (real-time) blending operations. A “guard-band” may be defined around an initially identified seam that perturbs the path of the initial seam so that both the seam and the guard-band's edges avoid moving objects by at least a specified amount. Rapid blend operations may then be performed in the region demarcated by the guard-band. The seam may be further adjusted to bias its position toward a specified trajectory within the overlap region when there is no moving object present. If visual registration techniques are not able to provide a properly aligned overlap region, motion sensor data for the image capture device, may be used instead to facilitate blending operations.
Jianping Zhou - Fremont CA, US Marco Zuliani - Los Gatos CA, US
Assignee:
APPLE INC. - Cupertino CA
International Classification:
H04N 5/225
US Classification:
3482221, 348E05024
Abstract:
Systems, methods, and computer readable media for stitching or aligning multiple images (or portions of images) to generate a panoramic image are described. In general, techniques are disclosed for using motion data (captured at substantially the same time as image data) to align images rather than performing image analysis and/or registration operations. More particularly, motion data may be used to identify the rotational change between successive images. The identified rotational change, in turn, may be used to calculate a motion vector that describes the change in position between a point in a first image and a corresponding point in a subsequent image. The motion vector may be utilized to align successive images in an image sequence based on the motion data associated with the images.
Lookup Table Activation Functions For Neural Networks
- Cupertino CA, US Francesco ROSSI - Sunnyvale CA, US Guillaume TARTAVEL - Cupertino CA, US Xiaojin SHI - Cupertino CA, US Marco ZULIANI - San Jose CA, US
International Classification:
G06F 16/22 G06N 3/04
Abstract:
The subject technology provides a framework for evaluating activation functions of a neural network using lookup tables. In order to provide lookup table based activation functions with a desired precision within hardware constraints for the lookup tables, multiple lookup tables for each activation function can be provided. Each of the multiple lookup tables may correspond to a respective subrange of input values, within a full range of input values for the activation function.
Method For Improving Temporal Consistency Of Deep Neural Networks
- Cupertino CA, US Marco Zuliani - San Jose CA, US Vignesh Jagadeesh - San Jose CA, US
International Classification:
G06K 9/62 G06K 9/00 G06N 3/04 G06N 3/08
Abstract:
Training a network for image processing with temporal consistency includes obtaining un-annotated frames from a video feed. A pretrained network is applied to the first frame of first frame set comprising a plurality of frames to obtain a first prediction, wherein the pretrained network is pretrained for a first image processing task. A current version of the pretrained network is applied to each frame of the first frame set to obtain a first prediction. A content loss term is determined, based on the first prediction and a current prediction for the frame, based on the current network. A temporal consistency loss term is also determined based on a determined consistency of pixels within each frame of the first frame set. The pretrained network may be refined based on the content loss term and the temporal term to obtain a refined network.
Enhanced Image Processing Techniques For Deep Neural Networks
- Cupertino CA, US Marco Zuliani - San Jose CA, US Albert Antony - Hayes, GB Brian P. Keene - Cupertino CA, US Xiaojin Shi - Cupertino CA, US
International Classification:
G06T 3/40 G06T 11/60 G06N 3/04
Abstract:
Artistic styles extracted from source images may be applied to target images to generate stylized images and/or video sequences. The extracted artistic styles may be stored as a plurality of layers in one or more neural networks, which neural networks may be further optimized, e.g., via the fusion of various elements of the networks' architectures. The artistic style may be applied to the target images and/or video sequences using various optimization methods, such as the use of a first version of the neural network by a first processing device at a first resolution to generate one or more sets of parameters (e.g., scaling and/or biasing parameters), which parameters may then be mapped for use by a second version of the neural network by a second processing device at a second resolution. Analogous multi-processing device and/or multi-network solutions may also be applied to other complex image processing tasks for increased efficiency.
Machine Learning Model With Conditional Execution Of Multiple Processing Tasks
- Cupertino CA, US Vignesh Jagadeesh - San Jose CA, US Vinay Sharma - Palo Alto CA, US Marco Zuliani - San Jose CA, US Xiaojin Shi - Cupertino CA, US Benjamin Poulain - San Jose CA, US
International Classification:
G06N 20/00 G06F 9/38
Abstract:
A method includes receiving input data at a trained machine learning model that includes a common part and task-specific parts, receiving an execution instruction that identifies one or more processing tasks to be performed, processing the input data using the common part of the trained machine learning model to generate intermediate data, and processing the intermediate data using one or more of the task-specific parts of the trained machine learning model based on the execution instruction to generate one or more outputs.
- Cupertino CA, US Cecile M. FORET - Palo Alto CA, US Gaurav KAPOOR - Santa Clara CA, US Kit-Man WAN - Sunnyvale CA, US Umesh S. VAISHAMPAYAN - Santa Clara CA, US Etienne BELANGER - Saratoga CA, US Albert ANTONY - San Jose CA, US Alexey MARINICHEV - Mountain View CA, US Marco ZULIANI - San Jose CA, US Xiaojin SHI - Cupertino CA, US
International Classification:
G06N 3/10 G06N 3/04 G06N 3/08
Abstract:
The subject technology provides receiving a neural network (NN) model to be executed on a target platform, the NN model including multiple layers that include operations and some of the operations being executable on multiple processors of the target platform. The subject technology further sorts the operations from the multiple layers in a particular order based at least in part on grouping the operations that are executable by a particular processor of the multiple processors. The subject technology determines, based at least in part on a cost of transferring the operations between the multiple processors, an assignment of one of the multiple processors for each of the sorted operations of each of the layers in a manner that minimizes a total cost of executing the operations. Further, for each layer of the NN model, the subject technology includes an annotation to indicate the processor assigned for each of the operations.
Flickr
Googleplus
Marco Zuliani
Lived:
Los Gatos, CA Santa Barbara, CA Padua, Italy Bressa di Campoformido, Italy
Work:
Apple Inc. - Algorithm Engineer (2011) Mayachitra, Inc. - Research Staff Member (2006-2011)
Education:
University of California, Santa Barbara - Electrical Engineering, Universita' degli Studi di Padova - Computer Engineering
Tagline:
Later...
Bragging Rights:
Father of an amazing baby, husband to a wonderful wife