Abstract:
Methods and systems are provided for determining and transmitting applicable lighting information, applicable viewing perspective, and a 3D model for an object in response to a search query. An example method includes receiving, at a server, a search query regarding an object. A 3D model for the object is determined. The 3D model includes three-dimensional shape information about the object. The method also includes determining, based on a plurality of stored images of the object, at least one applicable light field and at least one applicable viewing perspective. A search query result is transmitted from the server. The search query result may include the 3D model, the applicable light field(s), and the applicable viewing perspective(s). A server and a non-transitory computer readable medium are also disclosed that could perform a similar method.
Abstract:
Methods and systems for interacting with multiple three-dimensional (3D) object data models are provided. An example method may involve providing to a display device for display a first 3D object data model and a second 3D object data model. Information associated with a modification to the first 3D object data model may be received. Based on the received information, a same change may be applied to the first 3D object data model and applied to the second 3D object data model to obtain a first modified 3D object data model and a second modified 3D object data model. According to the method, the first modified 3D object data model and the second modified 3D object data model may be provided to the display device for substantially simultaneous display.
Abstract:
Methods and systems for allocating tasks to robotic devices are provided. An example method includes receiving information associated with task logs for a plurality of robotic devices and in a computing system configured to access a processor and memory, determining information associated with a health level for the plurality of robotic devices based on the information associated with the task logs. A health level for a given robotic device may be proportional to a current level of ability to perform a function, which may change over a lifespan of the given robotic device. Information associated with a plurality of tasks to be performed by one or more or the robotic devices may also be determined. The computing system may optimize an allocation of the plurality of tasks such that a high precision task may be allocated to a robotic device having a greater current health level than another robotic device.
Abstract:
Methods and systems for determining and presenting virtual safety cages are provided. An example method may involve receiving an instruction for a robotic device to perform a physical action in a physical environment occupied by the robotic device. The method may also involve, responsive to receiving the instruction, and based on one or more parameters of one or more physical components of the robotic device, determining one or more estimated trajectories along which the one or more physical components of the robotic device are estimated to move as the robotic device performs the physical action. The method may further involve, based on the one or more estimated trajectories, determining a virtual representation of a space that the robotic device is estimated to occupy in the physical environment while performing the physical action. The method may then involve providing, into the physical environment, an indication of a location of the space.
Abstract:
A method and system for video encoding assets for swivel/360-degree spinners is disclosed. Still images of a 3D object from different perspectives about the 3D object may be stacked and then video encoded to generate video frames of the object from the different perspectives. The video-encoded assets may be stored on a server or other network-connected device, and later retrieved by a connected client device for display processing by a swivel/360-degree spinner on the client device. The swivel/360-degree spinner may utilize native video processing capabilities of the client device and/or of a browser running on the client device to display video motion of the object moving through different angular orientations in response to movement of an interactive cursor.
Abstract:
Methods and systems for determining and presenting virtual safety cages are provided. An example method may involve receiving an instruction for a robotic device to perform a physical action in a physical environment occupied by the robotic device. The method may also involve, responsive to receiving the instruction, and based on one or more parameters of one or more physical components of the robotic device, determining one or more estimated trajectories along which the one or more physical components of the robotic device are estimated to move as the robotic device performs the physical action. The method may further involve, based on the one or more estimated trajectories, determining a virtual representation of a space that the robotic device is estimated to occupy in the physical environment while performing the physical action. The method may then involve providing, into the physical environment, an indication of a location of the space.
Abstract:
Methods and systems for determining a status of a component of a device are provided. An example method includes triggering an action of a component of a device, and responsively receiving information associated with the action of the component from a sensor. The method further includes a computing system having a processor and a memory comparing the information with calibration data and determining a status of the component based on the comparison. In some examples, the calibration data may include information derived from data received from a pool of one or more devices utilizing same or similar components as the component. The determined status may include information associated with a performance of the component with respect to performances of same or similar components of the pool of devices. In one example, the device may self-calibrate the component based on the status.
Abstract:
Methods and systems for determining a status of a component of a device are provided. An example method includes triggering an action of a component of a device, and responsively receiving information associated with the action of the component from a sensor. The method further includes a computing system having a processor and a memory comparing the information with calibration data and determining a status of the component based on the comparison. In some examples, the calibration data may include information derived from data received from a pool of one or more devices utilizing same or similar components as the component. The determined status may include information associated with a performance of the component with respect to performances of same or similar components of the pool of devices. In one example, the device may self-calibrate the component based on the status.
Abstract:
Methods and systems for allocating tasks to robotic devices are provided. An example method includes receiving information associated with task logs for a plurality of robotic devices and in a computing system configured to access a processor and memory, determining information associated with a health level for the plurality of robotic devices based on the information associated with the task logs. A health level for a given robotic device may be proportional to a current level of ability to perform a function, which may change over a lifespan of the given robotic device. Information associated with a plurality of tasks to be performed by one or more or the robotic devices may also be determined. The computing system may optimize an allocation of the plurality of tasks such that a high precision task may be allocated to a robotic device having a greater current health level than another robotic device.
Abstract:
Methods and systems for encoding and compressing 3D object data models are provided. An example method may involve receiving 3D mesh data for an object that includes geometry coordinates for a surface of the object. Additionally, material properties may be associated with the geometry coordinates. The method may also include identifying multiple portions of the mesh data based on the material properties associated with the geometry coordinates. For example, a given group of adjacent geometry coordinates having common material properties may be identified as a given portion. For at least some of the identified portions of the mesh data, the method may further include encoding information related to an identified portion of the mesh data and compressing the encoded information into a file of compressed geometric data.