Patents by Inventor Andrés Monroy-Hernández
Andrés Monroy-Hernández has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20200380747Abstract: A server machine modifies an augmented reality (AR) object in response to fulfillment of a condition. The machine provides, to a user device, object data that defines the AR object. The object data specifies a physical geolocation of the AR object, a presentation attribute of the AR object, a conditional modification program, and a trigger condition for execution of the conditional modification program. The object data causes the user device to present the AR object with a first appearance, located at the physical geolocation. The machine detects fulfillment of the trigger condition, and in response, the machine executes the conditional modification program. This modifies the object data by modifying the presentation attribute. The machine provides, to the user device, the modified object data, which causes the user device to present the AR object with a second appearance based on the modified presentation attribute.Type: ApplicationFiled: August 25, 2020Publication date: December 3, 2020Inventors: Ilteris Canberk, Andrés Monroy-Hernández, Rajan Vaish
-
Patent number: 10789749Abstract: A server machine modifies an augmented reality (AR) object in response to fulfillment of a condition. The machine provides, to a user device, object data that defines the AR object. The object data specifies a physical geolocation of the AR object, a presentation attribute of the AR object, a conditional modification program, and a trigger condition for execution of the conditional modification program. The object data causes the user device to present the AR object with a first appearance, located at the physical geolocation. The machine detects fulfillment of the trigger condition, and in response, the machine executes the conditional modification program. This modifies the object data by modifying the presentation attribute. The machine provides, to the user device, the modified object data, which causes the user device to present the AR object with a second appearance based on the modified presentation attribute.Type: GrantFiled: May 6, 2020Date of Patent: September 29, 2020Assignee: Snap Inc.Inventors: Ilteris Canberk, Andrés Monroy-Hernández, Rajan Vaish
-
Patent number: 10755061Abstract: The subject technology receives image data including a representation of a physical item. The subject technology analyzes the image data to recognize an object corresponding to an identification indicator of the physical item. The subject technology determines whether the identification indicator of the physical item includes a representation of a barcode. The subject technology extracts verification metadata from the representation of the barcode. The subject technology sends the verification metadata to determine verification information associated with the verification metadata. The subject technology receives the verification information. The subject technology sends the verification information and the verification metadata to determine provenance information associated with the physical item. The subject technology receives, from the second server, the provenance information associated with the physical item.Type: GrantFiled: September 30, 2019Date of Patent: August 25, 2020Assignee: Snap Inc.Inventor: Andrés Monroy-Hernández
-
Publication number: 20200265626Abstract: A server machine modifies an augmented reality (AR) object in response to fulfillment of a condition. The machine provides, to a user device, object data that defines the AR object. The object data specifies a physical geolocation of the AR object, a presentation attribute of the AR object, a conditional modification program, and a trigger condition for execution of the conditional modification program. The object data causes the user device to present the AR object with a first appearance, located at the physical geolocation. The machine detects fulfillment of the trigger condition, and in response, the machine executes the conditional modification program. This modifies the object data by modifying the presentation attribute. The machine provides, to the user device, the modified object data, which causes the user device to present the AR object with a second appearance based on the modified presentation attribute.Type: ApplicationFiled: May 6, 2020Publication date: August 20, 2020Inventors: Ilteris Canberk, Andrés Monroy-Hernández, Rajan Vaish
-
Patent number: 10679393Abstract: A server machine modifies an augmented reality (AR) object in response to fulfillment of a condition. The machine provides, to a user device, object data that defines the AR object. The object data specifies a physical geolocation of the AR object, a presentation attribute of the AR object, a conditional modification program, and a trigger condition for execution of the conditional modification program. The object data causes the user device to present the AR object with a first appearance, located at the physical geolocation. The machine detects fulfillment of the trigger condition, and in response, the machine executes the conditional modification program. This modifies the object data by modifying the presentation attribute. The machine provides, to the user device, the modified object data, which causes the user device to present the AR object with a second appearance based on the modified presentation attribute.Type: GrantFiled: July 24, 2018Date of Patent: June 9, 2020Assignee: Snap Inc.Inventors: Ilteris Canberk, Andrés Monroy-Hernández, Rajan Vaish
-
Publication number: 20200035003Abstract: A server machine modifies an augmented reality (AR) object in response to fulfillment of a condition. The machine provides, to a user device, object data that defines the AR object. The object data specifies a physical geolocation of the AR object, a presentation attribute of the AR object, a conditional modification program, and a trigger condition for execution of the conditional modification program. The object data causes the user device to present the AR object with a first appearance, located at the physical geolocation. The machine detects fulfillment of the trigger condition, and in response, the machine executes the conditional modification program. This modifies the object data by modifying the presentation attribute. The machine provides, to the user device, the modified object data, which causes the user device to present the AR object with a second appearance based on the modified presentation attribute.Type: ApplicationFiled: July 24, 2018Publication date: January 30, 2020Inventors: Ilteris Canberk, Andrés Monroy-Hernández, Rajan Vaish
-
Publication number: 20190340244Abstract: A software agent, that is used to assist in providing a service, receives communications from a set of users that are attempting to use the software agent. The communications include communications that are interacting with the software agent, and communications that are not interacting with the software agent. The software agent performs natural language processing on all communications to identify such things as user sentiment, user concerns or other items in the content of the messages, and also to identify actions taken by the users in order to obtain a measure of user satisfaction with the software agent. One or more action signals are then generated based upon the identified user satisfaction with the software agent.Type: ApplicationFiled: July 15, 2019Publication date: November 7, 2019Inventors: Benjamin Gene CHEUNG, Andres MONROY-HERNANDEZ, Todd Daniel NEWMAN, Mayerber Loureiro De CARVALHO NETO, Michael Brian PALMER, Pamela BHATTACHARYA, Justin Brooks CRANSHAW, Charles Yin-Che LEE
-
Patent number: 10416841Abstract: The claimed subject matter generates animated data visualization videos. A user interface is displayed that includes a clip library panel, a clips panel, and a configurations panel. The clip library panel includes available data clips; the clips panel includes multiple configured data clips; and, the configurations panel includes properties of a selected data clip from the clips panel. A user interface for entering a dataset is displayed. Multiple data clips dragged from the clip library panel to the clips panel, are added to the clips panel. Configuration settings for a dragged and dropped data clip are displayed in the configurations panel. One or more properties of the data clip are updated. An animated data visualization video is generated based on the dragged and dropped data clips and updated properties, and in a sequence specified in the clips panel.Type: GrantFiled: August 10, 2015Date of Patent: September 17, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Nathalie Riche, Bongshin Lee, Andres Monroy Hernandez, Fereshteh Amini
-
Patent number: 10394957Abstract: A software agent, that is used to assist in providing a service, receives communications from a set of users that are attempting to use the software agent. The communications include communications that are interacting with the software agent, and communications that are not interacting with the software agent. The software agent performs natural language processing on all communications to identify such things as user sentiment, user concerns or other items in the content of the messages, and also to identify actions taken by the users in order to obtain a measure of user satisfaction with the software agent. One or more action signals are then generated based upon the identified user satisfaction with the software agent.Type: GrantFiled: September 25, 2017Date of Patent: August 27, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Benjamin Gene Cheung, Andres Monroy-Hernandez, Todd Daniel Newman, Mayerber Loureiro De Carvalho Neto, Michael Brian Palmer, Pamela Bhattacharya, Justin Brooks Cranshaw, Charles Yin-Che Lee
-
Patent number: 10248452Abstract: In order to complete user instructions beyond the scope of services that are provided on the user's own computing device, a framework an interaction framework for executing user instructions with online services is provided. The framework includes an instruction processing agent that interacts with a user agent on a computer user's computing device to execute instructions provided to the user agent. The instruction processing agent maintains a list of domain agents, each domain agent corresponding to a domain. Upon receiving a user instruction (from a user agent), the instruction processing agent identifies a suitable domain and corresponding domain agent for completing the user instruction and provides the instruction to the domain agent. The domain agent identifies an online service suitable for completing the user instruction and interfaces with the online service via a proxy for the online service to carry out the user instruction.Type: GrantFiled: May 20, 2016Date of Patent: April 2, 2019Assignee: Microsoft Technology Licensing, LLCInventors: William Lawrence Portnoy, Andres Monroy-Hernandez
-
Publication number: 20190095424Abstract: A software agent, that is used to assist in providing a service, receives communications from a set of users that are attempting to use the software agent. The communications include communications that are interacting with the software agent, and communications that are not interacting with the software agent. The software agent performs natural language processing on all communications to identify such things as user sentiment, user concerns or other items in the content of the messages, and also to identify actions taken by the users in order to obtain a measure of user satisfaction with the software agent. One or more action signals are then generated based upon the identified user satisfaction with the software agent.Type: ApplicationFiled: September 25, 2017Publication date: March 28, 2019Inventors: Benjamin Gene CHEUNG, Andres MONROY-HERNANDEZ, Todd Daniel NEWMAN, Mayerber Loureiro De CARVALHO NETO, Michael Brian PALMER, Pamela BHATTACHARYA, Justin Brooks CRANSHAW, Charles Yin-Che LEE
-
Publication number: 20180365614Abstract: A set of nodes are organized into a graph to represent a workflow to enable the dynamic and directed management of that workflow in a decentralized system. Each node maintains a value necessary for execution of the workflow, and includes code to populate that value. A workflow agent manages the population of the values according to an identified dependency structure for the nodes relative to the workflow. As changes are made to the workflow, the workflow agent ensures that values and dependencies of the nodes stay up-to-date. Each node retains historic values, which enables the workflow agent to query several states of the workflow throughout time as changes are made thereto. The dynamic management of the nodes improves the responsiveness of the system to changes, thereby improving computational efficiency.Type: ApplicationFiled: June 20, 2017Publication date: December 20, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Michael Brian Palmer, Emad Mohamed Hamdy Elwany, Justin Brooks Cranshaw, Pamela Bhattacharya, Mayerber Loureiro De Carvalho Neto, Charles Yin-che Lee, Benjamin Gene Cheung, Andres Monroy-Hernandez, Todd Daniel Newman
-
Publication number: 20170337079Abstract: In order to complete user instructions beyond the scope of services that are provided on the user's own computing device, a framework an interaction framework for executing user instructions with online services is provided. The framework includes an instruction processing agent that interacts with a user agent on a computer user's computing device to execute instructions provided to the user agent. The instruction processing agent maintains a list of domain agents, each domain agent corresponding to a domain. Upon receiving a user instruction (from a user agent), the instruction processing agent identifies a suitable domain and corresponding domain agent for completing the user instruction and provides the instruction to the domain agent. The domain agent identifies an online service suitable for completing the user instruction and interfaces with the online service via a proxy for the online service to carry out the user instruction.Type: ApplicationFiled: May 20, 2016Publication date: November 23, 2017Inventors: William Lawrence Portnoy, Andres Monroy-Hernandez
-
Publication number: 20170270488Abstract: Aspects extend to methods, systems, and computer program products for privilege-based task processing at a virtual assistant. An owner of a virtual assistant can assign other users privileges for interacting with the owner's calendar through the virtual assistant. To establish user privileges, the owner can enter information about himself or herself, including user permissions, into a Privileged Associates Database (“PAD”). An administrator can also configure some or all of this privileged associate(s) information to be entered automatically in the PAD. As such, a privileged associate can request that the virtual assistant schedule an event on the owner's calendar. In response, the virtual assistant refers to the PAD and checks privileges. The virtual assistant automatically synthesizes a response accordingly (e.g., scheduling the event, displaying schedule information, requesting owner confirmation, preventing the request, etc.) based on the owner's schedule and the associate's privileges.Type: ApplicationFiled: March 15, 2016Publication date: September 21, 2017Inventors: William Alexander Spencer, JR., Andres Monroy-Hernandez, Justin Brooks Cranshaw
-
Publication number: 20170249600Abstract: Aspects extend to methods, systems, and computer program products for automated task processing with escalation. An overall task to be achieved (e.g., scheduling a meeting) can be broken down into a grouping of (e.g., loosely-coupled) asynchronous sub-tasks. Completing the grouping of sub-tasks completes the overall task. Performance of some sub-tasks can be automated. Other sub-tasks can be escalated for performance by micro workers. When a micro worker is unable to perform a sub-task, the overall task can be escalated to a macro worker. Accordingly, a three tiered approach of automation, micro workers, and macro workers is scalable, cost efficient, and also provides flexibility to accurately handle more complex tasks and sub-tasks.Type: ApplicationFiled: February 26, 2016Publication date: August 31, 2017Inventors: Justin Brooks Cranshaw, Todd D. Newman, Andrea Ryuta Orimoto, Emad M. Elwany, Andres Monroy-Hernandez, Colleen Griffiths Estrada, Richard Daniel Marshall
-
Publication number: 20170249580Abstract: Aspects extend to methods, systems, and computer program products for automating task processing. Assisted microtasking is used to facilitate an incremental introduction of automation to handle more and more of scheduling related work over time as the automation become more effective. Incremental introduction of automation permits delivery of higher quality results (via human worker verification) prior to acquiring sufficient training data for fully automated solutions. Assisted microtasking can be used to increase human worker efficiency by using automation to do much of the work. The human worker's involvement can be essentially reduced to one of (e.g., YES/NO) verification. Aspects of the invention can be used to bootstrap data collection, for example, in “small data” scenarios.Type: ApplicationFiled: April 21, 2017Publication date: August 31, 2017Inventors: Todd D. Newman, Emad M. Elwany, Andres Monroy-Hernandez, Justin Brooks Cranshaw
-
Publication number: 20170103359Abstract: Edits on a content item, such as a document, are divided into microtasks. The microtasks associated with a document can be automatically identified based on a workflow or can be identified by a user such as the creator of the content item or an administrator. The microtasks can be assigned to one or more workers including the creator of the content item. When a determination is made that an assigned worker is available to complete a microtask (e.g., when the worker is waiting in line, has just closed an application or file, or has just completed a phone call, etc.), the assigned microtask is presented to the worker for completion.Type: ApplicationFiled: October 12, 2015Publication date: April 13, 2017Inventors: Jaime Teevan, Shamsi Tamara Iqbal, Curtis von Veh, Daniel Liebling, Semiha Ece Kamar Eden, Andres Monroy-Hernandez, Pallavi Choudhury, Kristina Toutanova, Saleema Amershi
-
Publication number: 20170046016Abstract: The claimed subject matter generates animated data visualization videos. A user interface is displayed that includes a clip library panel, a clips panel, and a configurations panel. The clip library panel includes available data clips; the clips panel includes multiple configured data clips; and, the configurations panel includes properties of a selected data clip from the clips panel. A user interface for entering a dataset is displayed. Multiple data clips dragged from the clip library panel to the clips panel, are added to the clips panel. Configuration settings for a dragged and dropped data clip are displayed in the configurations panel. One or more properties of the data clip are updated. An animated data visualization video is generated based on the dragged and dropped data clips and updated properties, and in a sequence specified in the clips panel.Type: ApplicationFiled: August 10, 2015Publication date: February 16, 2017Applicant: Microsoft Technology Licensing, LLCInventors: Nathalie Riche, Bongshin Lee, Andres Monroy Hernandez, Fereshteh Amini
-
Publication number: 20150199844Abstract: Data points that include geolocation data are obtained. Frequency values are determined that depict frequencies of sets of the data points that are associated with respective geolocations represented by the geolocation data, and the frequency values are normalized. A georepresentation of the data points is generated, as a tangible 3-D model, using the geolocation data to determine location perspective of the data points on the 3-D model for a mapping of the data points to the 3-D model, and using the normalized frequency values to determine sensory attributes of portions of the 3-D model at locations of the respective mapped data points on the 3-D model, the sensory attributes representing frequency value ranges.Type: ApplicationFiled: January 10, 2014Publication date: July 16, 2015Applicant: Microsoft CorporationInventors: Andrés Monroy-Hernández, Henric H. Jentz, Timothy Regan, Alicia Marie Edelman Pelton, Jennifer Lauren Rodenhouse, Michal Lahav, Siân Elizabeth Lindley