Systems and methods for a vision guided end effector

Information

  • Patent Grant
  • 12175741
  • Patent Number
    12,175,741
  • Date Filed
    Tuesday, June 22, 2021
    3 years ago
  • Date Issued
    Tuesday, December 24, 2024
    2 days ago
Abstract
Systems and method for an object from a plurality of objects are disclosed. An image of a scene containing the plurality of objects is obtained, and a segmentation map is generated for the objects in the scene. The shapes of the objects are determined based on the segmentation map. An end effector is adjusted in response to determining the shapes of the objects. The adjusting the end effector includes shaping the end effector according to at least one of the shapes of the objects. The plurality of objects is approached in response to the shaping of the end effector, and one of the plurality of objects is picked with the end effector.
Description
FIELD

Aspects of embodiments of the present disclosure relate to soft robotics, and in particular, a soft robot gripper that is configured to deform using guidance of a vision system.


BACKGROUND

Advances to the field of soft robotics have allowed the use of soft robots to grasp a larger variety of objects than what is possible with traditional robots that have rigid end effectors. For example, soft robots are generally equipped with end effectors that are flexible and soft, to allow the robots to gently grab and manipulate delicate or irregularly shaped objects. Despite the advances in soft robotics however, challenges remain. For example, it may be challenging for soft robots to pick an item from a bin that is cluttered with other items.


The above information disclosed in this Background section is only for enhancement of understanding of the background of the present disclosure, and therefore, it may contain information that does not form prior art.


SUMMARY

Embodiments of the present disclosure are directed to a computer-implemented method for picking an object from a plurality of objects. An image of a scene containing the plurality of objects is obtained, and a segmentation map is generated for the objects in the scene. The shapes of the objects are determined based on the segmentation map. An end effector is adjusted in response to determining the shapes of the objects. The adjusting the end effector includes shaping the end effector according to at least one of the shapes of the objects. The plurality of objects is approached in response to the shaping of the end effector, and one of the plurality of objects is picked with the end effector.


According to one embodiment, the shaping of the end effector includes moving a portion of the end effector from a first state to a second state, wherein the first state is an equilibrium state, and the second state is a non-equilibrium state. In the second state, the portion of the end effector may retract by an amount determined by the one of the shapes.


According to one embodiment, the shaping of the end effector includes: predicting a shape of the end effector configured to provide an optimal grasp of the one of the plurality of objects, wherein the shaping of the end effector is based on the predicting of the shape.


According to one embodiment, the end effector is at least one of a pin, tube, or suction cup.


According to one embodiment, the one of the shapes is the shape of the one of the plurality of objects, and the method further comprises: identifying a grasp point on the one of the plurality of objects, wherein the shaping of the end effector is based on the identifying of the grasp point.


According to one embodiment, the method further comprises: in response to approaching the plurality of objects, re-shaping the end effector based on determining a second shape.


According to one embodiment, the method further comprises: determining poses of the objects in the scene, wherein the determining of the shapes is based on the determining of the poses.


Embodiments of the present disclosure are also directed to a system for picking an object from a plurality of objects. The system comprises one or more cameras for obtaining an image of a scene containing the plurality of objects, and a processing system coupled to the polarization camera. The processing system comprises a processor and memory storing instructions that, when executed by the processor, cause the processor to perform: generating a segmentation map for the objects in the scene; determining shapes of the objects based on the segmentation map; adjusting an end effector in response to determining the shapes of the objects, wherein the adjusting the end effector includes shaping the end effector according to at least one of the shapes of the objects; approaching the plurality of objects in response to the shaping of the end effector; and picking one of the plurality of objects with the end effector.


These and other features, aspects and advantages of the embodiments of the present disclosure will be more fully understood when considered with respect to the following detailed description, appended claims, and accompanying drawings. Of course, the actual scope of the invention is defined by the appended claims.





BRIEF DESCRIPTION OF THE DRAWINGS

Non-limiting and non-exhaustive embodiments of the present embodiments are described with reference to the following figures, wherein like reference numerals refer to like parts throughout the various views unless otherwise specified.



FIG. 1 is a schematic block diagram of a vision guided gripping system according to one embodiment;



FIG. 2 is a more detailed block diagram of a vision module in the system of FIG. 1, according to one embodiment;



FIGS. 3A-3B are schematic diagrams of an exemplary configuration of grasp members of an end effector according to one embodiment;



FIGS. 4A-4C are schematic diagrams of a vision guided grasping process according to one embodiment;



FIG. 5 is a flow diagram of a process for a vision guided grasping process according to one embodiment;



FIG. 6A is a schematic diagram depicting a pose estimation system according to one embodiment;



FIG. 6B is a high-level depiction of the interaction of light with transparent objects and non-transparent (e.g., diffuse and/or reflective) objects;



FIG. 7A is a perspective view of a camera array according to one embodiment;



FIG. 7B is a cross sectional view of a portion of a camera array according to one embodiment;



FIG. 8 is a perspective view of a stereo camera array system according to one embodiment;



FIG. 9 is a flowchart depicting a general pipeline for computing six-degree-of-freedom (6-DoF) poses of objects, including small objects, according to some embodiments;



FIG. 10A is a flow diagram of a process for object level correspondence according to one embodiment;



FIG. 10B is a block diagram of an architecture for instance segmentation and mask generation of step according to one embodiment;



FIG. 10C is a more detailed flow diagram of a matching algorithm for identifying object-level correspondence for a particular object instance in a first segmentation mask according to one embodiment;



FIG. 11 is a flowchart depicting a method for computing a pose of an object based on dense correspondences according to some embodiments;



FIG. 12 is a schematic depiction of a 3-D model, depicted in shaded form, posed in accordance with an initial pose estimate and overlaid onto an image of a scene, depicted in line drawing form;



FIG. 13A is a block diagram depicting a pipeline for refining a pose estimate using dense correspondences according to one embodiment;



FIG. 13B is a schematic depiction of mappings between observed images and 3-D mesh models based on image-to-object correspondences computed in accordance with some embodiments; and



FIG. 14 is a flowchart depicting a method for computing a pose of an object based on dense correspondences across multiple viewpoints according to some embodiments.





DETAILED DESCRIPTION

Hereinafter, example embodiments will be described in more detail with reference to the accompanying drawings, in which like reference numbers refer to like elements throughout. The present disclosure, however, may be embodied in various different forms, and should not be construed as being limited to only the illustrated embodiments herein. Rather, these embodiments are provided as examples so that this disclosure will be thorough and complete, and will fully convey the aspects and features of the present disclosure to those skilled in the art. Accordingly, processes, elements, and techniques that are not necessary to those having ordinary skill in the art for a complete understanding of the aspects and features of the present disclosure may not be described. Unless otherwise noted, like reference numerals denote like elements throughout the attached drawings and the written description, and thus, descriptions thereof may not be repeated. Further, in the drawings, the relative sizes of elements, layers, and regions may be exaggerated and/or simplified for clarity.


Pose estimation generally refers to a computer vision technique for estimating or predicting the location and orientation of objects. Some forms of pose estimation refer to detecting the physical pose of a human figure, such as the position and orientation of a person's head, arms, legs, and joints. Pose estimation may also refer more generally to the position and orientation of various animate or inanimate physical objects in a scene. For example, autonomously navigating robots may maintain information regarding the physical poses of objects around them in order to avoid collisions and to predict trajectories of other moving objects. As another example, in the case of robotics for use in manufacturing, object pose estimation may be used by robots to detect the position and orientation of physical manufacturing components, such that a robot arm can approach the component from the correct angle to obtain a proper grip on the part for assembly with other components of a manufactured product (e.g., gripping the head of a screw and threading the screw into a hole, whereas gripping a screw by the tip would make it difficult to insert into a hole).


Robot arms may be configured with different types of end effectors (also referred to as grippers) that may be used for different pick-and-place tasks. For soft robots, the end effectors may be flexible or adaptable to conform to the shape of an object to be picked, without active position control. Such compliance in grasping may be desirable to avoid shocks that could damage the target object to be picked, or push it out of the desired path. Soft robotic end effectors may include, for example, an array of pins, tubes, or suction cups. Soft robotic end effectors may also be formed of resilient materials such as rubber, polymers, and/or the like.


In one embodiment, a vision guided gripping system leverages information of various objects in a scene provided by a computer vision system, to adjust a soft robotic gripper to a shape that is predicted to provide an optimal grip of a target object. The soft robotic gripper may maintain the shape as the gripper approaches the target object, such as, for example, right up to the point of grasping and/or lifting the target object. Such pre-shaping of the robotic gripper may be desirable, for example, in a cluttered environment to avoid obstacles, and to focus the pick on the target object as opposed to other objects that may be blocking the target object.


In one embodiment, an optimal shape of the soft robotic gripper is based on visible grasp points on the target object. The optimal shape of the gripper may be re-adjusted any time prior to the gripping of the target object, based on changes to the scene as detected by the vision system, and/or based on progress along a motion path to the target object.



FIG. 1 is a schematic block diagram of a vision guided gripping system for picking a target object included in a scene. In the embodiment of FIG. 1, the scene includes various types of objects 2a-2d (collectively referenced as 2), which may be contained, for example, in a bin 3. The objects 2 in the bin 3 may be, for example, workpieces cluttered together with other workpieces. In some embodiments, one or more of the objects 2 are substantially homogenous in terms of material, geometry, texture, and/or color. In some embodiments, one or more of the objects 2 are transparent, reflective, matte black, or otherwise optically challenging to detect by a standard color camera system, and/or may include some surfaces that are optically challenging.


In one embodiment, the vision guided gripping system includes a vision system with one or more cameras 1a, 1b (collectively referenced as 1) configured to capture images of the scene. One or more of the cameras may be, for example, depth cameras (e.g. passive stereo cameras or active stereo cameras with structured light for computing depth from stereo, time-of-flight depth cameras, LIDAR, and the like). The one or more cameras may have the same or different imaging modalities to capture the images of the scene. Examples of imaging modalities include, without limitation, monochrome, color, infrared, near-infrared (NIR), ultraviolet, thermal, polarization, and combinations thereof. In one embodiment, the one or more cameras 1 include a polarization camera that uses a polarization imaging modality. In this regard, the polarization camera may be equipped with a polarizer or polarizing filter or polarization mask that is configured to enable the polarization camera to capture images of the scene with the polarizer set at various specified polarization angles (e.g., spaced apart at 45° rotations or at 60° rotations or at non-uniformly spaced polarization angles).


The vision guided gripping system may also include a robot arm 4 coupled to one or more end effectors/grippers 5. Although a robot arm 4 with a pin array end-effector 5 is used as an example, a person of skill in the art should recognize that the embodiments of the present disclosure extend to any automated apparatus configured to handle objects such as, for example, any type of robot or robotic manipulator, automated vehicles with lift capabilities, lift modules, gantries, and/or the like. Also, although exemplary embodiments are described in connection with bin-picking, a person of skill in the art should recognize that the present embodiments are not so limited, and may be used in a variety of applications.


In one embodiment, the one or more end effectors 5 are soft robotic end effectors formed of material and/or having structure that may be fully or partially molded into a desired shape. In this regard, the end effector 5 may have a base 5a and one or more grasp members 5b. The base 5a may include, for example, an actuation system for actively driving the grasp members 5b during pre-shaping, grasping, and the like. The one or more grasp members 5b may be, without limitation, an array/matrix of pins, tubes, suctions cups, and/or the like (collectively referred to as “pins”). In some embodiments, the one or more grasp members 5b may be made of silicone or other flexible material, and/or comprise underactuated joints as described in J. Shintake et al. “Soft Robotic Grippers,” Advanced Materials, Vol. 30, 1707035 (2018), the content of which is incorporated herein by reference.


In one embodiment, all or a portion of the end effector 5 is configured to deform passively when the end effector comes into contact with a target object, and conform, at least in part, to the shape of the surface that is touched. The end effector 5 may also be configured for active deformation in response to the pins being actively driven during a pre-shaping process, prior to making contact with the target object. In one embodiment, the end effector 5 is pre-shaped based on the 3D shape of a target object. The 3D shape may be determined based on the images of the scene captured by the one or more cameras 1. In one embodiment, one or more of the grasp members 5b are slid in and/or out of the base 5a to shape the end effector to a desired shape that is determined based on the 3D shape of the target object.


In one embodiment, one or more sensors are disposed in one or more locations of the robot arm 4 and/or end effector 5. The sensors may include, without limitation, Hall-effect sensors, encoders, torque sensors, tension sensors, and/or other sensors for estimating position and velocity of the robot arm 4 and end effector 5. The sensors may also include pressure sensors, resistive and conductive sensors, electromagnetic sensors, and/or other sensors for gathering, along with the one or more cameras 1, information about the objects 2 in the scene. For example, the sensors may provide tactile information in response to the end effector grasping a target object.


In one embodiment, the images captured by the one or more cameras 1 are supplied to a computing system 6 for executing the vision guided gripping by the end effector 5. The computing system 6 may include, without limitation, a vision module 7, shape prediction module 108, motion planning module 9, and control module 11. Although the various modules 7-11 are assumed to be separate functional units, a person of skill in the art will recognize that the functionality of the modules may be combined or integrated into a single module, or further subdivided into further sub-modules without departing from the spirit and scope of the inventive concept.


The vision module 7, shape prediction module 8, and/or motion planning module 9 may include one or more neural networks, such as, for example, one or more convolutional neural networks (CNN), recurrent neural networks (RNN), long short-term memory (LSTM) recurrent neural networks, gated recurrent units (GRUs) and/or the like. The neural network that is employed may include different number of layers and different number of nodes within each layer of the neural network. The one or more neural networks may be trained, among other things, to generate predictions on the shape of the end effector 5 for optimal grasping.


In one embodiment, the vision module 7 is configured to process images provided by the cameras 1 for obtaining information of the objects 2 in the scene. In this regard, the vision module 7 may be configured to perform object segmentation, surface normal calculation, depth estimation, pose estimation, and/or the like. The information obtained by the vision module 7 may include information such as the shape, surface normal, pose, texture, and/or keypoints of the objects 2 in the scene. In one embodiment, object segmentation entails generating a segmentation map where each pixel of the segmentation map is associated with one or more confidences that a pixel in an input image corresponds to various possible classes (or types) of objects. In one embodiment, pose estimation may be performed in six degrees of freedom as described below in the section entitled “POSE DETECTION AND MEASUREMENT.”


In one embodiment, the vision module 7 is configured to identify the 3D shape of one or more objects 2 in the scene, based on the information obtained for the objects. The 3D shape of a particular object may be computed based on the segmentation maps of multiple images of the scene from different view points captured by multiple cameras 1. The 3D shape may also be obtained by retrieving a precomputed 3D model (e.g. a CAD model) based on the segmentation map for the particular object, and aligning of the 3D model based on a calculated pose of the particular object.


In one embodiment, the shape prediction module 8 may be configured to predict a shape of the end effector 5 based on the 3D shape of the objects 2 in the scene, for pre-shaping the end effector 5 prior to attempt a pick of a target object. In this regard, one or more neural networks of the shape prediction module 8 may take as input information of the objects 2 in the scene provided by the vision module 7 (e.g. 3D geometry of the objects), along with optional other parameters such as, for example, grasp/suction scores based on material properties, object texture information, angle of attack, and/or motion paths. The output of the shape prediction module 8 may be, for example, one or more predicted shapes of the end effector 5, along with associated probability values indicative of a successful grasp.


In one embodiment, the predicted shape of the end effector is one that maximizes surface contact area of the target object while avoiding other objects. In this regard, the shape of the end effector 5 may mimic the shape of the visible/accessible areas of the target object for the portion of the end effector configured to make contact with the target object, and take a shape that avoids contact with non-target objects for the portion of the end effector that may otherwise make contact with the non-target objects.


In one embodiment, the shape of the end effector is one that achieves contact with a maximum number of visible grasp points of the target object (while again, avoiding contact with other objects). The grasp points may be, for example, points on the target object that are graspable by the end effector 5 to achieve a pick. An example grasp point for a screw may be an edge of the head of the screw. In some embodiments, the grasp points may be predefined for each type of 3D shape possible in the scene. In some embodiments, the grasp points may be identified via machine learning based on successes and failures of pick attempts. The grasp points may also differ depending on the type of end effector 5 that is being used to grasp the object (e.g., suction cups versus pliable silicone grasp members at the tips of the pins of a pin array).


In some embodiments, each grasp point may be associated with a grasp score indicative of a predicted success of a pick that uses the grasp point or collection of grasp points. In this regard, the shape of the end effector may be one that maximizes the grasp score.


Other factors may also be considered in predicting a shape of the end effector to achieve an optimal grasp. For example, texture and/or surface normal of the target object may be considered so that the shape of the end effector is one that maximizes contact of surface areas of the target object with certain textures, and/or applying force to the object along directions identified as the surface normals of the grasp points. For example, for end effectors consisting of an array of suction cups, the shape of the end effector may be one that maximizes contact with smooth areas of the target object and/or may approach the smooth areas along the direction of the surface normal (e.g., perpendicular to the surface). In one embodiment, a grasp score may be assigned to one or more portions of the object based on texture, surface normal computations, and the like.


The motion planning module 9 may be configured to generate a motion plan for moving the robot arm 4 to complete a given task. The task may be, for example a bin picking task where the robot arm 4 to picks up a target object from a source location, and places the target object at a destination location. In this regard, the motion plan may include commands to manipulate the end effector 5 to take a particular pose and/or angle of attack, and perform the pick-and-place task. Such commands may include, for example, turning, bending, grasping, lifting, placing, and/or the like.


In one embodiment, the motion planning module 9 executes a motion planning algorithm to generate the motion plan. In this regard, the motion planning algorithm may take as input, parameters and/or constraints associated with the given task, and output a corresponding motion plan (e.g. a list of motion commands) based on the input. The output motion plan may be one that is predicted to be optimal. One of existing motion planning algorithms may be employed for generating the optimal motion path, such as, for example, A*, D*, Rapidly-exploring Random Tree (RRT), Probabilistic Roadmap, or the like.


In one embodiment, one of the constraints input to the motion planning algorithm is the predicted shape of the end effector 5. In this regard, according to one embodiment, the shape prediction module 8 first predicts an optimal shape of the end effector 5, and the motion planning algorithm then optimizes the motion plan based on, among other constraints, the predicted shape. In some embodiments, a single algorithm may jointly solve for an optimal motion plan as well as for an optimal shape of the end effector 5.


In some cases, more paths may become available with the pre-shaping of the end effector 5 than without pre-shaping. For example, the pre-shaping of the end effector 5 may avoid certain obstacles in a given path, making that path available for consideration by the motion planning algorithm. In some embodiments, the pre-shaping of the end effector 5 may be based on the shape of an obstacle in a given path instead of the shape of the target object to be picked. Once the end effector 5 passes the obstacle, the end effector may then be re-shaped to the shape of the target object.


In some embodiments, if the pick is unsuccessful, the shape of the end effector and/or motion plan may be altered to attempt the pick again. Failures and successes of the picks may be used as feedback to train the shape prediction module 8 and/or motion planning module 9 accordingly.


In one embodiment, the control module 11 generates commands to one or more controllers of the robot arm 4 and/or end effector 5 according to the motion plan output by the motion planning module 9. The one or more controllers may include, without limitation, one or more actuation systems that control movement of the robot arm 4 and/or end effector 5. For example, the actuation system of the end effector 5 may include motors, pneumatic actuators, magnetic actuators, hydraulic actuators, and/or the like.


In one embodiment, the controllers may cause the end effector to move (or be adjusted) from a first state to a second state, based on the commands from the control module 11. The first state may be a resting equilibrium position where the controller generates zero force or zero torque. The second state may be a non-equilibrium state that deviates from the equilibrium position based on the predicted shape. In this regard, the actuation system of the end effector 5 may drive the one or more grasp members 5b to protrude and/or retract based on the predicted shape. In one embodiment, the end effector 5 may turn rigid to maintain the predicted shape.


In one embodiment, the controllers may cause the end effector to continue to maintain the rigid shape as the end effector 5 approaches a target object to be grasped. In this regard, the actuation system may exert force on the grasp members 5b to cause the grasp members 5b to maintain the predicted shape. The predicted shape may be maintained up until the point of contact of the end effector 5 with the target object. In some embodiments, all or a portion of the end effector 5 may revert back to the equilibrium state in response to making contact with the surface of the target object. For example, the portion of the end effector contacting the target object may regain flexibility, and passively adapt to the shape of the object from the neutral position in response to making the contact. Once the end effector has adapted to the shape of the target object, the end effector may be driven (e.g. by pushing, pressing, and/or pressurizing the grasp members 5b) to become rigid to securely grasp the object.


According to various embodiments of the present disclosure, the computing system is implemented using one or more electronic circuits configured to perform various operations as described in more detail below. Types of electronic circuits may include a central processing unit (CPU), a graphics processing unit (GPU), an artificial intelligence (AI) accelerator (e.g., a vector processor, which may include vector arithmetic logic units configured efficiently perform operations common to neural networks, such dot products and softmax), a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a digital signal processor (DSP), or the like. For example, in some circumstances, aspects of embodiments of the present disclosure are implemented in program instructions that are stored in a non-volatile computer readable memory where, when executed by the electronic circuit (e.g., a CPU, a GPU, an Al accelerator, or combinations thereof), perform the operations described herein for a vison guided gripper. The operations performed by the computing system 6 may be performed by a single electronic circuit (e.g., a single CPU, a single GPU, or the like) or may be allocated between multiple electronic circuits (e.g., multiple GPUs or a CPU in conjunction with a GPU). The multiple electronic circuits may be local to one another (e.g., located on a same die, located within a same package, or located within a same embedded device or computer system) and/or may be remote from one other (e.g., in communication over a network such as a local personal area network such as Bluetooth®, over a local area network such as a local wired and/or wireless network, and/or over wide area network such as the internet, such a case where some operations are performed locally and other operations are performed on a server hosted by a cloud computing service). One or more electronic circuits operating to implement the computing system 6 may be referred to herein as a computer or a computer system, which may include memory storing instructions that, when executed by the one or more electronic circuits, implement the systems and methods described herein.



FIG. 2 is a more detailed block diagram of the vision module 7 according to one embodiment. The vision module 7 may include a feature extractor 15 and a predictor 19 (e.g., a classical computer vision prediction algorithm or a trained statistical model) configured to compute a prediction output 21 (e.g., a statistical prediction) regarding one or more objects 2 in the scene based on the output of the feature extractor. In this regard, the feature extractor 15 may be configured to receive one or more input images 13 of the scene, and extract one or more first feature maps 17 in one or more representation spaces. The extracted features may be polarization features and/or non-polarization features. The polarization features may encode information relating to the polarization of light received from the scene when one of the input images 13 is a polarization image.


The extracted derived feature maps 17 may be provided as input to the predictor 19 to compute the prediction output 21. In one embodiment, the predictor 19 is an image segmentation or instance segmentation system, and the prediction output 21 may be a segmentation map (e.g. an instance segmentation map). One class of approaches to performing instance segmentation on input images is to supply input images to a convolutional neural network (CNN) that is trained to compute instance segmentation maps from those input images. Examples of image segmentation CNNs include Mask R-CNN (He, Kaiming, et al. “Mask R-CNN.” Proceedings of the IEEE International Conference on Computer Vision. 2017.), AlexNet (see, e.g., Krizhevsky, Alex, Ilya Sutskever, and Geoffrey E. Hinton. “ImageNet classification with deep convolutional neural networks.” Advances in neural information processing systems. 2012.), VGG (see, e.g., Simonyan, Karen, and Andrew Zisserman. “Very deep convolutional networks for large-scale image recognition.” arXiv preprint arXiv:1409.1556 (2014).), ResNet-101 (see, e.g., Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 770-778, 2016.), MobileNet (see, e.g., Howard, Andrew G., et al. “Mobilenets: Efficient convolutional neural networks for mobile vision applications.” arXiv preprint arXiv:1704.04861 (2017).), MobileNetV2 (see, e.g., Sandler, Mark, et al. “MobileNetV2: Inverted residuals and linear bottlenecks.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018.), and MobileNetV3 (see, e.g., Howard, Andrew, et al. “Searching for MobileNetV3.” Proceedings of the IEEE International Conference on Computer Vision. 2019.)


In some embodiments, the predictor 19 is a classification system, and the prediction output 21 includes a plurality of classes and corresponding confidences that the input images 13 depict an instance of each of the classes. In yet some embodiments, the predictor 19 is a classical computer vision prediction algorithm, and the prediction output includes detected features such as, for example, detected edges, keypoints, grasp points, basis coefficients, Haar wavelet coefficients, or other features of the objects in the image.



FIGS. 3A-3B are schematic diagrams of an exemplary configuration of the grasp members 5b of the end effector 5 according to one embodiment. In one embodiment, the grasp members 5b are configured in a 2-dimensional pixel array. Each pixel 23 in the array may have a size of dx and dy. In pre-shaping the end effector 5, the actuation system (e.g. located at the base 5a) may drive one or more of the pixels 23 to adjust their corresponding heights 25 by retracting the pixels towards the base 5a, or extending the pixels away from the base. In this manner, the pixel array creates a 3D surface that corresponds to the predicted shape output by the shape prediction module 8.



FIGS. 4A-4C are schematic diagrams of a vision guided grasping process according to one embodiment. The end effector 5 starts off in a resting equilibrium state (FIG. 4A). In the equilibrium state, the grasp members 5b may be flexible and extend at a full length.


The end effector 5 may transition from the equilibrium state to a pre-shaping state in response to the shape prediction module 8 outputting a predicted shape. (FIG. 4B). During the pre-shaping state, the actuation system actively drives the grasp members 5b based on the predicted shape. In one embodiment, the grasp members 5b are pre-shaped to maximize surface contact area of a target object 2b to be grasped while avoiding other surrounding objects. In one embodiment, the grasp members 5b are pre-shaped to achieve contact with a maximum number of visible grasp points. In yet one embodiment, the grasp members 5b are pre-shaped to achieve contact with surfaces having a particular texture or surface normal.


In one embodiment, the flexible grasp members 5b become rigid in response to the pre-shaping. The rigid pre-shaped shape may be maintained as the end effector 5 approaches the target object 2b. In one embodiment, at least a portion of the grasp members 5b′ become flexible again during a pick process in order for the grasp members 5b′ to passively mold to the surface of the target object to be picked. (FIG. 4C). The grasp members 5b′ may be then be actively driven to securely grasp the target object 2b. For example, if the grasp members 5b′ are an array of pins, the actuation system may move the pins surrounding the target object 2b to move towards the object to build rigid contact between lateral surface of the pins and the object so that the object is securely grasped. For example, in some embodiments, each of the pins is rotatable and includes a gripping surface that is non-circular (e.g., oval-shaped or cam-shaped), such that rotating the pins applies force in a direction perpendicular to the axis of the pin, thereby applying forces to the lateral surfaces of the target object 2b. In another example, if the grasp members 5b′ are suction cups, the actuation system may grasp the target object using suction by squeezing out the air in the suction cups in response to the suction cups being sealed against the contacted surface of the target object.



FIG. 5 is a flow diagram of a process for a vision guided grasping process according to one embodiment. The process starts, and at block 51, the one or more cameras 1 capture one or more images of the objects 2 in the scene. The captured images are provided to the vision module 7 for generating, at block 53, one or more segmentation maps of the objects in the scene. In one embodiment, each pixel of the segmentation map identifies a class or type of object in the corresponding image pixel.


At block 55, the vision module 7 computes or retrieves the 3D shape of the objects in the scene based on the one or more segmentation maps. The 3D shapes may be overlaid in the scene according to a computed pose of the corresponding objects.


At block 57, the shape prediction module 8 predicts a shape of the end effector 5 based on one or more of the identified 3D shapes. The shape of the end effector 5 may be defined, for example, using a protrusion value for each of the grasp members 5b indicative of how far the grasp members 5b protrude out of the base 5a.


At block 59, the motion planning module 9 generates a motion plan for picking up a target object from the bin 3. The motion plan may be configured to optimize a path to be taken by the robot arm 4 based on, among other constrains, the obstacles in the scene, the predicted shape of the end effector 5, and/or the like.


At block 61, the control module 11 pre-shapes the end effector 5 based on the shape output by the shape prediction module 8. In one embodiment, the pre-shaping may be part of the motion plan output by the motion planning module 9. In this regard, the motion plan may call for the pre-shaping of the end effector 5 prior to approaching the target object.


At block 63, the robot arm 4 approaches the target object according to the motion plan. In this regard, the end effector 5 maintains the pre-shaped shape during the approach stage. The robot arm 4 attempts a pick of the target object when the robot arm 4 is at a pick location, according to the motion plan.


At block 65, a determination is made as to whether a pick was successful. If the answer in NO, a feedback is provided, at block 67, to the shape prediction module 8 and/or motion planning module 9 for indicating that the pick was unsuccessful, for further training of the shape prediction module 8 and/or motion planning module 9. In one embodiment, the process repeats to re-determine the shape of the end effector 5 and/or motion plan using updated images of the scene. In some embodiments, the end effector 5 may be controlled to clear obstructing objects near the target object prior to repeating the process.


Referring again to block 65, if a determination is made that the pick was successful, a feedback is provided, at block 69, to the shape prediction module 8 and/or motion planning module 9 for validating the predicted shapes and/or motion plan.


In one embodiment, a pick may be deemed to be successful in response to testing stability of the pick. In this regard, the robot arm 4 and/or end effector 5 may be configured to shake the grasped object and measure any displacement of the object in response to the shaking. One or more tactile sensors on the end effector 5 may be invoked to measure the displacement. In one embodiment, the pick is deemed to be successful in response to the displacement in the vertical axis being under a set threshold value.


In some embodiments, the shape of the end effector 5 may change as the robot arm 4 progresses along a motion path based on, for example, updated images of the scene provided by the one or more cameras 1. For example, the end effector 5 may be initially pre-shaped based on a shape of an obstacle in the motion path. The pre-shaping may allow the robot arm 4 to efficiently navigate around the obstacle. In this manner, the motion path with an obstacle that would otherwise not be available to be selected by the motion planning module 9, may be selected if deemed to be the most optimal.


In one embodiment, updated images of the scene after the robot arm 4 safely navigates around the obstacle may trigger a re-shaping of the end effector 5 to be pre-shaped based on the shape of another obstacle in the motion path, or the shape target object (and surrounding objects) to be picked. The shaping and re-shaping may continue until the robot arm 4 achieves a successful pick. The dynamic updating of the pre-shape form of the end effector 5 based on updated images of the scene and/or based on reaching of particular milestones (e.g. moving past obstacles), allows for a soft robotic gripper that is more versatile and better fit for use for bin picking tasks.


In some embodiments, the computing system 6 may be configured to select an end effector 5 from a plurality of available end effectors based on information of the objects in the scene computed by the vision module 7. A type of end effector 5 that is configured to provide an optimal grasp result may be selected. For example, an array of suction cups may be selected instead of an array of pins in response to the vision module 7 determining that the texture of the target object to be picked is smooth. A machine learning algorithm may be invoked to learn the most optimal end effector to be used for a given target object.


Pose Detection and Measurement


Pose estimation generally refers to a technique for estimating or predicting the location and orientation of objects. Some forms of pose estimation refer to detecting the physical pose of a human figure, such as the position and orientation of a person's head, arms, legs, and joints. Pose estimation may also refer more generally to the position and orientation of various animate or inanimate physical objects in a scene. For example, autonomously navigating robots may maintain information regarding the physical poses of objects around them (e.g., humans, vehicles, equipment, other robots, barriers, doors, and the like) in order to avoid collisions and to predict trajectories of other moving objects. As another example, in the case of robotics for use in manufacturing, pose estimation may be used to detect the position and orientation of components and workpieces such that a robotic arm can approach the components and workpieces from the correct angle to obtain a proper grip on the part for assembly with other components of a manufactured product (e.g., gripping the head of a screw and threading the screw into a hole, whereas gripping a screw by the tip would make it difficult to insert into a hole, or gripping a flexible printed circuit, flexible circuit, or flex circuit and attaching the ends of the connector to different components of the manufactured product, such as connecting a flexible printed circuit to two different rigid circuit boards) and orient and/or reorient components and workpieces for assembly.


Aspects of embodiments of the present disclosure relate to systems and methods for automated six degree of freedom (6-DoF) estimation of a wide variety of objects in a scene. The six degrees of freedom in three dimensional space include positional coordinates (e.g., x, y, and z translational coordinates in a three-dimensional global coordinate system) and orientation coordinates (e.g., 8, 4), and ip rotational coordinates in the three-dimensional global coordinate system).


Different pose estimation systems exhibit different levels of accuracy and precision in their measurements. The precision of such pose estimation systems may depend, for example, on signal-to-noise ratios, and the accuracy of the measurements may depend on parameters such as the resolution of the sensing devices. More concretely, in the case of an active scanning system such as lidar, the resolution of the sensing depends on the scanning rate of the active scanner as it sweeps over the surfaces of the objects in a scene, where there is a tradeoff between faster scans that produce lower resolution images or slower scans that produce higher resolution images. As another example, the resolution of a camera-based pose estimation system may be limited by the resolution of the image sensor in the camera (or cameras), the field of view of the lens over the scene, and the distance to the surfaces in the scene.


Small objects pose a particular challenge because the error margins of comparative pose estimation systems may be comparable in size to the dimensions of those small objects. For example, some comparative pose estimation systems have a pose estimation error of about 10 millimeters at a nominal working distance of 1000 meter. When objects are relatively large, such as about 100 mm in diameter, this error of 10 mm may be acceptable and within the tolerances for a robotic gripper to pick up the object. However, a 10 mm error is extremely high when the objects are relatively small, such as about 15 mm in diameter, and may cause the gripper to miss the object entirely or attempt to grasp a non-graspable portion of the object.


When estimating the pose of small objects using comparative pose estimation systems, one approach would be to place the camera as close as possible to the subject, as this would effectively increase the effective resolution of the images of the object. However, the operating environment may make it impractical or impossible to place the camera close enough to achieve the desired precision and accuracy. For example, the placement of the camera may be constrained (to be out of the way of moving machines), the camera might need to see a cluster or group of objects all at once (so it cannot be narrowly focused on one single object), or the location of the objects may be difficult to predict ahead of time (so the camera must be able to see all possible locations where the objects could be located). Thus, physically small objects also tend to be visually small in the camera's field of view. Increasing the resolution of the image capture process may increase accuracy, but have tradeoffs in the form of increasing a cycle time (e.g., a time between starting to image the scene containing objects and outputting a computed pose) due to increases in scanning time (e.g., for active scanning systems such as lidar), increases in processing time (e.g., data bandwidth and processing time for executing algorithms on high resolution images), and/or increases in hardware and energy costs (e.g., higher resolution image sensors, faster processors, additional processing cores, and the like).


For the sake of discussion, in the context of the typical resolutions of imaging systems (e.g., cameras) and a nominal working distance of about 1 meter, “small object” refers to any object which is no larger than about 30 mm in diameter, but embodiments are not limited thereto and are applicable in other situations where the objects appear visually small within the field of view of the sensing system (e.g., where the pixel resolution of the portion of the image depicting the object is relatively small) due to factors such as the relative size of objects, the working distance, and constraints of the imaging systems (e.g., image sensor resolution, field of view, scanning rates to achieve desired cycle times, and the like), which contribute to the pose estimation error of comparative pose estimation systems to be too large for particular applications, such as being insufficiently accurate to control a robot arm to perform a task of manipulating the small objects.


Some approaches to estimating the 6-DoF poses of objects involve aligning a given 3-D model of the object with the object as observed in the environment. This enables the robotic system to determine the pose of the physical object based on the virtual pose of the aligned 3-D model. In the most commonly used datasets for pose estimation (e.g., LineMOD as described in Hinterstoisser, Stefan, et al. “Model based training, detection and pose estimation of texture-less 3d objects in heavily cluttered scenes.” Asian conference on computer vision. Springer, Berlin, Heidelberg, 2012., YCB-Video as described in Xiang, Yu, et al. “PoseCNN: A convolutional neural network for 6d object pose estimation in cluttered scenes.” arXiv preprint arXiv:1711.00199 (2017).), all the objects in these datasets are at least 85 mm in diameter and most are within the 120 mm to 200 mm diameter range. Comparative methods for estimating the poses of objects in these datasets report over 95% accuracy (e.g., Bukschat, Yannick, and Marcus Vetter. “EfficientPose—An efficient, accurate and scalable end-to-end 6D multi object pose estimation approach.” arXiv preprint arXiv:2011.04307 (2020). and Zakharov, Sergey, Ivan Shugurov, and Slobodan Ilic. “DPOD: 6d pose object detector and refiner.” Proceedings of the IEEE/C VF International Conference on Computer Vision. 2019.) in detecting the poses of these objects, where a pose estimate is considered to be “correct” if it is within 10% of the object's diameter (e.g., within 8.5 mm to 20 mm, assuming an object diameter of 85 mm to 200 mm). However, errors in the range of 8.5 mm to 20 mm are far too large for the reliable picking up of small objects (e.g., with a diameter smaller than about 30 mm).


In addition to locating or estimating the poses of rigid objects, some aspects of embodiments of the present disclosure are applied to determining the configuration or deformed shape of deformable objects. Estimating the 6-DoF poses of deformable objects is useful in the field of robotics, such as in robotic systems that manipulate deformable objects. In particular, robotic systems may use the 6-DoF poses of objects in a scene to determine which of the objects are graspable. (An object may be considered to be graspable if it is not blocked by other objects and having mechanically stable surfaces that can be grasped by the end effector of a robotic arm without damaging the object). The robotic system may then grasp a detected graspable object and manipulate that object in some way (e.g., attach a flexible component to an object of manufacture, pick a deformable item and pack the deformable item into a box for shipping, or maintain control of a deformable object during transport). Robotic systems may also be commonly applied to bin packing or placing deformable items into a bin (such as a rigid box for shipping). Examples of such deformable objects include food packaging (bags of chips, candy, etc.), mechanical springs, folded clothing, and the like.


Some approaches to estimating the 6-DoF poses of objects involve aligning a given 3-D model of the object with the object as observed in the environment. This enables the robotic system to determine the pose of the physical object based on the virtual pose of the aligned 3-D model. However, in the case of deformable objects, these existing 3-D models may not be representative of the actual 3-D configurations of the objects in the real world. For example, a 3-D model of a rope may depict the rope in a bundled state, but the actual rope may be folded or twisted, such that the 3-D model of the rope is not representative of the physical rope that is presented to the robotic system. Likewise, a 3-D model of a flex circuit may depict the flex circuit in a flat or substantially planar shape, whereas the flex circuit that is present in the environment may be curved or bent at various portions, due to interactions with external forces such as gravity and other objects in contact with the flex circuit. The process of grasping the object may deform the object from its configuration prior to grasping, and the configuration of the object may further change in the course of manipulating the object (e.g., through interaction with gravity and other forces in the environment).


Some aspects of embodiments of the present disclosure relate to detecting the poses of deformable objects having three-dimensional shapes that can vary continuously through a range of possible configurations. The term “configuration” may be used herein to refer to a physical arrangement of different parts of an object with respect to an object coordinate system (as opposed to a world or global coordinate system). For example, a rigid object may be considered to have a single “configuration,” as the term is used herein, even though its pose within its external environment can be varied (e.g., the rigid object can be rotated and positioned with six degrees of freedom in the external environment). On the other hand, a hinge may have an infinite number of possible configurations because the angle between the components on the opposite sides of the hinge may vary continuously between the extremes of the range of motion. Likewise, a rope may have an infinite number of configurations because every point along the length of the rope may be bent and/or twisted as constrained by the flexibility or pliability of the rope. The configuration of an object may alternatively be referred to herein as a “physical configuration” and/or an “object configuration.”


As such, aspects of embodiments of the present disclosure relate to systems and methods for increasing the accuracy of the detection of locations of objects, such as increasing the accuracy of estimated poses of objects and estimating the deformed shape or configuration of deformable objects. In particular, aspects of embodiments of the present disclosure enable the accurate location (e.g., pose estimation) of small objects in a scene, such as circumstances where constraints including image resolution, image capture speed, field of view of the imaging, and cycle time cause portions of the captured images corresponding to individual objects to be visually small (e.g., low resolution). In addition, in some embodiments, systems and methods described herein are integrated as components of a processing pipeline that may be trained, in an end-to-end fashion, to control robotic systems into interact with objects in the environment, without explicitly calculating a location of the object (e.g., a 6-DoF pose of the object) within the environment.


In the case of estimating or predicting a 6-DoF pose of an object, the six degrees of freedom in three dimensional space include positional coordinates (e.g., x, y, and z translational coordinates in a three-dimensional global coordinate system) and orientation coordinates (e.g., 8, 4), and ip rotational coordinates in the three-dimensional coordinate system). A pose estimation system according to embodiments of the present disclosure, may combine the six-dimensional pose of an object within the scene with a 3-D model of the object (e.g., a 3-D mesh model of the object such as a computer aided design or CAD model, where the mesh may include a collection of vertices and edges connecting the vertices, each of the vertices having three-dimensional coordinates (e.g., x, y, z coordinates), and where the three-dimensional coordinates may be represented in an object coordinate system relative to the object itself or a global coordinate system relative to some external environment). In the case of deformable objects, some aspects of embodiments of the present disclosure relate to identifying and/or generating a 3-D model of the object that corresponds to the configuration of the object (e.g., the relative three dimensional positions of the vertices of the 3-D model of object, thereby defining the observed deformed shape or configuration of the deformable object).


While embodiments of the present disclosure are particularly suited to improving the detection and location (e.g., pose estimation) of small objects, applications of embodiments are not limited thereto and the systems and methods described herein may also be applied to locating and/or estimating the poses of larger objects. Furthermore, the systems and methods described herein may be applied to estimating the physical configurations of deformable objects.


Some aspects of embodiments of the present disclosure relate to computing dense correspondences as part of a processing pipeline for estimating the locations (e.g., poses) of objects depicted in scenes. However, embodiments of the present disclosure are not limited thereto.


Generally, optical flow relates to the distribution of apparent velocities of movement of brightness patterns in an image (see, e.g., Horn, Berthold KP, and Brian G. Schunck. “Determining optical flow.” Artificial intelligence 17.1-3 (1981): 185-203.). One common use of optical flow relates to detecting the movement of objects between successive image frames of a video, such as detecting the motion of a soccer ball based on the change of position of the brightness patterns associated with the ball (e.g., black and white patches) from one frame to the next. An optical flow map may represent the velocities of each pixel value in a first image frame to a corresponding pixel in the second image frame. For example, the brightness at a point (x,y) in the first image at time t may be denoted as E(x,y,t), and this pixel may move by some distance (Δx, Δy) from time t associated with the first image frame to time t+Δt associated with the second frame. Accordingly, the optical flow map may include a velocity (u, v) for each point (x, y) in the first image frame, where u=dx/dt and v=dy/dt. One aspect of algorithms for computing optical flow fields relates to determining correct correspondences between pairs of pixels in the two images. For example, for any given point (x,y) in the first image, there may be many pixels in the second image having the same brightness, and therefore an optical flow algorithm will need to determine which pixel in the second image corresponds to the point (x,y) of the first image, even if the corresponding point in the second image has a different brightness or appearance due to changes in lighting, noise, or the like.


Aspects of embodiments of the present disclosure relate to the use of optical flow for computing dense correspondences in the context of refining an estimated pose of an object. For example, a pose estimation system may capture an image of a scene and compute an initial estimated pose of a known type of object depicted in the image. A 3-D model (or computer aided design or CAD model) of the object is then rotated and transformed based on the initial estimated pose, and a 2-D view of the 3-D model can then be rendered from the perspective of a virtual camera, where the virtual camera has the same position as the real camera with respect to the object. If the estimated pose of the object is the same as the actual pose of the object in the scene, then the image of the object and the rendering of the 3-D model should appear the same. However, rotational and translational errors in the initial pose estimate can result in a mismatch between the estimated position and the real position of the object. Supplying the rendered image of the 3-D model and the captured actual image of the object to a dense correspondence algorithm (such as an optical flow algorithm) computes a dense correspondence map (such as an optical flow map) that maps between pixels of the rendered image and the captured or observed image of the actual object. The rendered image and the captured or observed image may include any of color (e.g., RGB) images, monochrome images, surface normals maps, polarization feature maps (e.g., angle of linear polarization and/or degree of linear polarization), and combinations thereof, and the rendered image and the observed image may be different types of images or the same type of image.


The computed optical flow map represents a dense correspondence map, as optical flow correspondences are computed for every visible pixel of the object (e.g., every visible pixel of the object in the first image is mapped to a corresponding pixel in the second image). However, alternative techniques may be used to compute these dense correspondence maps. In various embodiments, this dense correspondence map is then used to refine the estimated pose of the object to align the estimated pose with the actual pose of the object, as described in more detail below, using techniques such as Perspective-n-Point (PnP) algorithms taking a classical computer vision approach (e.g., computing a pose based on the inputs without using a learned model). Generally, a classical PnP algorithm relies on matching n points between the 3-D model and the image of the object, where the use of larger numbers of points improves the accuracy and confidence of the computed pose. However, comparative techniques for identifying features in the 3-D model and the image of the object result in relatively sparse feature maps, such that n is small. Aspects of embodiments of the present disclosure overcome this deficiency by generating dense correspondence maps (e.g., through optical flow, disparity maps, or other techniques), thereby increasing the number of points that are matched between the image of the object and the 3-D model and, in some embodiments, enabling detection of the deformation or configuration of the shape of the object.



FIG. 6A is a schematic diagram depicting a pose estimation system according to one embodiment of the present disclosure. As shown in FIG. 6A, a main camera 10 is arranged such that its field of view 12 captures an arrangement 20 of objects 22 in a scene. In the embodiment shown in FIG. 6A, the main camera 10 is located above the support platform (e.g., spaced apart from the objects 22 along the direction of gravity), but embodiments of the present disclosure are not limited thereto—for example, the main camera 10 can be arranged to have a downward angled view of the objects 22.


In some embodiments, one or more support cameras 30 are arranged at different poses around the scene containing the arrangement 20 of objects 22. Accordingly, each of the support cameras 30, e.g., first support camera 30a, second support camera 30b, and third support camera 30c, captures a different view of the objects 22 from a different view point (e.g., a first viewpoint, a second viewpoint, and a third viewpoint, respectively). While FIG. 6A shows three support cameras 30, embodiments of the present disclosure are not limited thereto and may include, for example, at least one support camera 30 and may include more than three support cameras 30. In addition, while the mail camera 10 is depicted in FIG. 6A as a stereo camera, embodiments of the present disclosure are not limited thereto, and may be used with, for example, a monocular main camera.


A pose estimator 100 according to various embodiments of the present disclosure is configured to compute or estimate poses of the objects 22 based on information captured by the main camera 10 and the support cameras 30. According to various embodiments of the present disclosure, the pose estimator 100 is implemented using one or more processing circuits or electronic circuits configured to perform various operations as described in more detail below. Types of electronic circuits may include a central processing unit (CPU), a graphics processing unit (GPU), an artificial intelligence (AI) accelerator (e.g., a vector processor, which may include vector arithmetic logic units configured efficiently perform operations common to neural networks, such dot products and softmax), a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a digital signal processor (DSP), or the like. For example, in some circumstances, aspects of embodiments of the present disclosure are implemented in program instructions that are stored in a non-volatile computer readable memory where, when executed by the electronic circuit (e.g., a CPU, a GPU, an Al accelerator, or combinations thereof), perform the operations described herein to compute a processing output, such as an instance segmentation map or 6-DoF poses, from input polarization raw frames 18 (the underlying images captured by polarization cameras or cameras with polarization filters in their optical paths). The operations performed by the pose estimator 100 may be performed by a single electronic circuit (e.g., a single CPU, a single GPU, or the like) or may be allocated between multiple electronic circuits (e.g., multiple GPUs or a CPU in conjunction with a GPU). The multiple electronic circuits may be local to one another (e.g., located on a same die, located within a same package, or located within a same embedded device or computer system) and/or may be remote from one other (e.g., in communication over a network such as a local personal area network such as Bluetooth®, over a local area network such as a local wired and/or wireless network, and/or over wide area network such as the internet, such a case where some operations are performed locally and other operations are performed on a server hosted by a cloud computing service). One or more electronic circuits operating to implement the pose estimator 100 may be referred to herein as a computer or a computer system, which may include memory storing instructions that, when executed by the one or more electronic circuits, implement the systems and methods described herein.


In more detail, the main camera 10 and the support cameras 30 are configured to estimate the poses of objects 22 detected within their fields of view 12 (while FIG. 6A illustrates a field of view 12 for the main camera 10 using dashed lines, the fields of view of the support cameras 30 are not explicitly shown). In the embodiment shown in FIG. 6A, the objects 22 are depicted abstractly as simple three-dimensional solids such as spheres, rectangular prisms, and cylinders. However, embodiments of the present disclosure are not limited thereto and characterization of pose estimators may be performed using any arbitrary object for which a pose with respect to a camera can be clearly defined, including deformable objects mentioned above, such as flex circuits, bags or other pliable containers containing solids, liquids, and/or fluids, flexible tubing, and the like.


In particular, a “pose” refers to the position and orientation of an object with respect to a reference coordinate system. For example, a reference coordinate system may be defined with the main camera 10 at the origin, where the direction along the optical axis of the main camera 10 (e.g., a direction through the center of its field of view 12) is defined as the z-axis of the coordinate system, and the x and y axes are defined to be perpendicular to one another and perpendicular to the z-axis. (Embodiments of the present disclosure are not limited to this particular coordinate system, and a person having ordinary skill in the art would understand that poses can be mathematically transformed to equivalent representations in different coordinate systems.)


Each object 22 may also be associated with a corresponding coordinate system of its own, which is defined with respect to its particular shape. For example, a rectangular prism with sides of different lengths may have a canonical coordinate system defined where the x-axis is parallel to its shortest direction, z-axis is parallel to its longest direction, the y-axis is orthogonal to the x-axis and z-axis, and the origin is located at the centroid of the object 22.


Generally, in a three-dimensional coordinate system, objects 22 have six degrees of freedom—rotation around three axes (e.g., rotation around x-, y-, and z-axes) and translation along the three axes (e.g., translation along x-, y-, and z-axes). For the sake of clarity, symmetries of the objects 22 will not be discussed in detail herein, but may be addressed, for example, by identifying multiple possible poses with respect to different symmetries (e.g., in the case of selecting the positive versus negative directions of the z-axis of a right rectangular prism), or by ignoring some rotational components of the pose (e.g., a right cylinder is rotationally symmetric around its axis).


In some embodiments, it is assumed that a three-dimensional (3-D) model or computer aided design (CAD) model representing a canonical or ideal version of each type of object 22 in the arrangement of objects 20 is available. For example, in some embodiments of the present disclosure, the objects 22 are individual instances of manufactured components that have a substantially uniform appearance from one component to the next. Examples of such manufactured components include screws, bolts, nuts, connectors, and springs, as well as specialty parts such electronic circuit components (e.g., packaged integrated circuits, light emitting diodes, switches, resistors, and the like), laboratory supplies (e.g. test tubes, PCR tubes, bottles, caps, lids, pipette tips, sample plates, and the like), and manufactured parts (e.g., handles, switch caps, light bulbs, and the like). Accordingly, in these circumstances, a CAD model defining the ideal or canonical shape of any particular object 22 in the arrangement 20 may be used to define a coordinate system for the object (e.g., the coordinate system used in the representation of the CAD model).


Based on a reference coordinate system (or camera space, e.g., defined with respect to the pose estimation system) and an object coordinate system (or object space, e.g., defined with respect to one of the objects), the pose of the object may be considered to be a rigid transform (rotation and translation) from object space to camera space. The pose of object 1 in camera space 1 may be denoted as Pc11, and the transform from object 1 space to camera space may be represented by the matrix:






[




R
11




R

1

2





R

1

3





T
1






R

2

1





R

2

2





R

2

3





T
2






R

3

1





R

3

2





R

3

3





T
3





0


0


0


1



]





where the rotation submatrix R:






R
=

[




R

1

1





R

1

2





R

1

3







R

2

1





R

2

2





R

2

3







R
31




R

3

2





R

3

3





]






represents rotations along the three axes from object space to camera space, and the translation submatrix T:






T
=

[




T
1






T
2






T
3




]






represents translations along the three axes from object space to camera space.


If two objects—Object A and Object B—are in the same camera C coordinate frame, then the notation PCA is used to indicate the pose of Object A with respect to camera C and PCB is used to indicate the pose of Object B with respect to camera C. For the sake of convenience, it is assumed herein that the poses of objects are represented based on the reference coordinate system, so the poses of objects A and B with respect to camera space C may be denoted PA and PB, respectively.


If Object A and Object B are actually the same object, but performed during different pose estimation measurements, and a residual pose Perr or PAB (PAB=Perr) is used to indicate a transform from pose PA to pose PB, then the following relationship should hold:

PAPerr=PB  (1)

and therefore

Perr=PA−1PB  (2)


Ideally, assuming the object has not moved (e.g., translated or rotated) with respect to the main camera 10 between the measurements of pose estimates PA and PB, then PA and PB should both be the same, and Perr should be the identity matrix (e.g., indicating no error between the poses):






[



1


0


0


0




0


1


0


0




0


0


1


0




0


0


0


1



]




In a similar manner, the pose of a particular object can be computed with respect to views from two different cameras. For example, images of Object A captured by a main camera C can be used to compute the pose PCA of Object A with respect to main camera C. Likewise, images of Object A captured by a first support camera S1 can be used to compute the pose PS1A of object A with respect to the support camera S1. If the relative poses of main camera C and support camera S1 are known, then the pose PS1A can be transformed to the coordinate system of the main camera C.


Ideally, assuming that the known relative poses of main camera C and support camera S1 are accurate and the poses calculated based on the data captured by the two cameras is accurate, then PCA and PS1A should both be the same, and Perr should be the identity matrix (e.g., indicating no error between the poses):






[



1


0


0


0




0


1


0


0




0


0


1


0




0


0


0


1



]




Differences Perr between the actual measured value as computed based on the estimates computed by the pose estimator 100 and the identity matrix may be considered to be errors:

Rerr=∥R(Perr)∥  (3)
Terr=∥T(Perr)∥  (4)

where Rerr is the rotation error and Terr is the translation error. The function R( ) converts Perr into an axis-angle where the magnitude is the rotation difference, and the function T( ) extracts the translation component of the pose matrix.


The axis-angle representation from rotation matrix R is given by:










Tr

(
R
)

=

1
+

2


cos


θ






(
5
)















"\[LeftBracketingBar]"

θ


"\[RightBracketingBar]"


=

arccos



(



Tr

(
R
)

-
1

2

)






(
6
)








where Tr( )denotes the matrix trace (the sum of the diagonal elements of the matrix), and θ represents the angle of rotation.


Some aspects of embodiments of the present disclosure relate to computing a high accuracy pose estimate of objects 22 in a scene based on a joint estimate of the poses the objects across the main camera 10 and the support cameras 30, as described in more detail below.


Some aspects of embodiments of the present disclosure also relate to providing information to assist in the control of a robotic arm 24 having an end effector 26 that may be used to grasp and manipulate objects 22. The robotic arm 24, including its end effector 26, may be controlled by a robotic arm controller 28, which, in some embodiments, receives the six-degree-of-freedom poses computed by the pose estimator 100, which may include 3-D models representing various objects 22 in the scene 1, where the 3-D models have configurations that estimate or approximate the configurations of their corresponding real-world objects, noting, for example, that the configuration of portions of the objects 22 that are occluded or otherwise not visible in the fields of view 12 of the main camera 10 and support cameras 30 may be difficult or impossible to estimate with high accuracy.


While the sensor system is generally referred to herein as a pose estimator 100, embodiments of the present disclosure are not limited to computing poses (e.g., 6-DoF poses) of objects in a scene and may, instead of or in addition to computing 6-DoF poses, the sensor system, including one or more cameras (e.g., main camera and/or support cameras) and processing circuits may implement generalized vision systems that provide information to controller systems.


For example, a processing pipeline may include receiving images captured by sensor devices (e.g., master cameras 10 and support cameras 30) and outputting control commands for controlling a robot arm, where the processing pipeline is trained, in an end-to-end manner, based on training data that includes sensor data as input and commands for controlling the robot arm (e.g., a destination pose for the end effector 26 of the robotic arm 24) as the labels for the input training data.


Sensing Hardware


In the embodiment shown in FIG. 6A, the pose estimation system includes a main camera 10 and one or more support cameras 30. In some embodiments of the present disclosure, the main camera 10 includes a stereo camera. Examples of stereo cameras include camera systems that have at least two monocular cameras spaced apart from each other along a baseline, where the monocular cameras have overlapping fields of view and optical axes that are substantially parallel to one another. While embodiments of the present disclosure will be presented herein in embodiments where the main camera 10 and the support cameras 30 are passive cameras (e.g., that are not connected to a dedicated light projector and that instead use ambient lighting or other light sources), embodiments of the present disclosure are not limited thereto and may also include circumstances where one or more active light projector are included in the camera system, thereby forming an active camera system, where the active light projector may be configured to project structured light or a pattern onto the scene. The support cameras 30 may be stereo cameras, monocular cameras, or combinations thereof (e.g., some stereo support cameras and some monocular support cameras).


The main camera 10 and the support cameras 30 may use the same imaging modalities or different imaging modalities. Examples of imaging modalities include monochrome, color, infrared, ultraviolet, thermal, polarization, and combinations thereof.


The interaction between light and transparent objects is rich and complex, but the material of an object determines its transparency under visible light. For many transparent household objects, the majority of visible light passes straight through and a small portion (˜4% to ˜8%, depending on the refractive index) is reflected. This is because light in the visible portion of the spectrum has insufficient energy to excite atoms in the transparent object. As a result, the texture (e.g., appearance) of objects behind the transparent object (or visible through the transparent object) dominate the appearance of the transparent object. For example, when looking at a transparent glass cup or tumbler on a table, the appearance of the objects on the other side of the tumbler (e.g., the surface of the table) generally dominate what is seen through the cup. This property leads to some difficulties when attempting to detect surface characteristics of transparent objects such as glass windows and glossy, transparent layers of paint, based on intensity images alone:



FIG. 6B is a high-level depiction of the interaction of light with transparent objects and non-transparent (e.g., diffuse and/or reflective) objects. As shown in FIG. 6B, a polarization camera 10 captures polarization raw frames of a scene that includes a transparent object 41 in front of an opaque background object 42. A light ray 43 hitting the image sensor 14 of the polarization camera 10 contains polarization information from both the transparent object 41 and the background object 42. The small fraction of reflected light 44 from the transparent object 41 is heavily polarized, and thus has a large impact on the polarization measurement, in contrast to the light 45 reflected off the background object 42 and passing through the transparent object 41.


Similarly, a light ray hitting the surface of an object may interact with the shape of the surface in various ways. For example, a surface with a glossy paint may behave substantially similarly to a transparent object in front of an opaque object as shown in FIG. 6B, where interactions between the light ray and a transparent or translucent layer (or clear coat layer) of the glossy paint causes the light reflecting off of the surface to be polarized based on the characteristics of the transparent or translucent layer (e.g., based on the thickness and surface normals of the layer), which are encoded in the light ray hitting the image sensor. Similarly, as discussed in more detail below with respect to shape from polarization (SfP) theory, variations in the shape of the surface (e.g., direction of the surface normals) may cause significant changes in the polarization of light reflected by the surface of the object. For example, smooth surfaces may generally exhibit the same polarization characteristics throughout, but a scratch or a dent in the surface changes the direction of the surface normals in those areas, and light hitting scratches or dents may be polarized, attenuated, or reflected in ways different than in other portions of the surface of the object. Models of the interactions between light and matter generally consider three fundamentals: geometry, lighting, and material. Geometry is based on the shape of the material. Lighting includes the direction and color of the lighting. Material can be parameterized by the refractive index or angular reflection/transmission of light. This angular reflection is known as a bi-directional reflectance distribution function (BRDF), although other functional forms may more accurately represent certain scenarios. For example, the bidirectional subsurface scattering distribution function (BSSRDF) would be more accurate in the context of materials that exhibit subsurface scattering (e.g. marble or wax).


A light ray 43 hitting the image sensor 14 of a polarization camera 10 has three measurable components: the intensity of light (intensity image/I), the percentage or proportion of light that is linearly polarized (degree of linear polarization/DOLP/ρ), and the direction of that linear polarization (angle of linear polarization/AOLP/ϕ). These properties encode information about the surface curvature and material of the object being imaged, which can be used by the pose estimator 100 to detect transparent objects, as described in more detail below. In some embodiments, by using one or more polarization cameras, the pose estimator 100 can detect other optically challenging objects based on similar polarization properties of light passing through translucent objects and/or light interacting with multipath inducing objects or by non-reflective objects (e.g., matte black objects).


In more detail, the polarization camera 10 may further includes a polarizer or polarizing filter or polarization mask 16 placed in the optical path between the scene 1000 and the image sensor 14. According to various embodiments of the present disclosure, the polarizer or polarization mask 16 is configured to enable the polarization camera 10 to capture images of the scene 1000 with the polarizer set at various specified angles (e.g., at 45° rotations or at 60° rotations or at non-uniformly spaced rotations).


As one example, FIG. 6B depicts an embodiment where the polarization mask 16 is a polarization mosaic aligned with the pixel grid of the image sensor 14 in a manner similar to a red-green-blue (RGB) color filter (e.g., a Bayer filter) of a color camera. In a manner similar to how a color filter mosaic filters incoming light based on wavelength such that each pixel in the image sensor 14 receives light in a particular portion of the spectrum (e.g., red, green, or blue) in accordance with the pattern of color filters of the mosaic, a polarization mask 16 using a polarization mosaic filters light based on linear polarization such that different pixels receive light at different angles of linear polarization (e.g., at 0°, 45°, 90°, and 135°, or at 0°, 60° degrees, and 120°). Accordingly, the polarization camera 10 using a polarization mask 16 such as that shown in FIG. 6B is capable of concurrently or simultaneously capturing light at four different linear polarizations. One example of a polarization camera is the Blackfly® S Polarization Camera produced by FLIR® Systems, Inc. of Wilsonville, Oregon


While the above description relates to some possible implementations of a polarization camera using a polarization mosaic, embodiments of the present disclosure are not limited thereto and encompass other types of polarization cameras that are capable of capturing images at multiple different polarizations. For example, the polarization mask 16 may have fewer than four polarizations or more than four different polarizations, or may have polarizations at different angles than those stated above (e.g., at angles of polarization of: 0°, 60°, and 120° or at angles of polarization of 0°, 30°, 60°, 90°, 120°, and 150°). As another example, the polarization mask 16 may be implemented using an electronically controlled polarization mask, such as an electro-optic modulator (e.g., may include a liquid crystal layer), where the polarization angles of the individual pixels of the mask may be independently controlled, such that different portions of the image sensor 14 receive light having different polarizations. As another example, the electro-optic modulator may be configured to transmit light of different linear polarizations when capturing different frames, e.g., so that the camera captures images with the entirety of the polarization mask set to, sequentially, to different linear polarizer angles (e.g., sequentially set to: 0 degrees; 45 degrees; 90 degrees; or 135 degrees). As another example, the polarization mask 16 may include a polarizing filter that rotates mechanically, such that different polarization raw frames are captured by the polarization camera 10 with the polarizing filter mechanically rotated with respect to the lens 18 to transmit light at different angles of polarization to image sensor 14. Furthermore, while the above examples relate to the use of a linear polarizing filter, embodiments of the present disclosure are not limited thereto and also include the use of polarization cameras that include circular polarizing filters (e.g., linear polarizing filters with a quarter wave plate). Accordingly, in various embodiments of the present disclosure, a polarization camera uses a polarizing filter to capture multiple polarization raw frames at different polarizations of light, such as different linear polarization angles and different circular polarizations (e.g., handedness).


As a result, the polarization camera 10 captures multiple input images (or polarization raw frames) of the scene including the surfaces of the objects 22. In some embodiments, each of the polarization raw frames corresponds to an image taken behind a polarization filter or polarizer at a different angle of polarization ϕpol (e.g., 0 degrees, 45 degrees, 90 degrees, or 135 degrees). Each of the polarization raw frames is captured from substantially the same pose with respect to the scene 1000 (e.g., the images captured with the polarization filter at 0 degrees, 45 degrees, 90 degrees, or 135 degrees are all captured by a same polarization camera 10 located at a same location and orientation), as opposed to capturing the polarization raw frames from disparate locations and orientations with respect to the scene. The polarization camera 10 may be configured to detect light in a variety of different portions of the electromagnetic spectrum, such as the human-visible portion of the electromagnetic spectrum, red, green, and blue portions of the human-visible spectrum, as well as invisible portions of the electromagnetic spectrum such as infrared and ultraviolet.



FIG. 7A is a perspective view of a camera array 10′ according to one embodiment of the present disclosure. FIG. 7B is a cross sectional view of a portion of a camera array 10′ according to one embodiment of the present disclosure. Some aspects of embodiments of the present disclosure relate to a camera array in which multiple cameras (e.g., cameras having different imaging modalities and/or sensitivity to different spectra) are arranged adjacent to one another and in an array and may be controlled to capture images in a group (e.g., a single trigger may be used to control all of the cameras in the system to capture images concurrently or substantially simultaneously). In some embodiments, the individual cameras are arranged such that parallax shift between cameras is substantially negligible based on the designed operating distance of the camera system to the objects in the scene 1, where larger spacings between the cameras may be tolerated when the designed operating distance is large.



FIG. 7B shows a cross sectional view of two of the cameras 10A′ and 106′ of the camera array 10′ shown in FIG. 7A. As seen in FIG. 7B, each camera or camera module (10A′ and 106′) includes a corresponding lens, a corresponding image sensor, and may include one or more corresponding filters. For example, in some embodiments, camera 10A′ is a visible light color camera that includes lens 12A′, image sensor 14A′, and color filter 16A′ (e.g., a Bayer filter). In the embodiment shown in FIG. 7B, the filter 16 is located behind the lens 12 (e.g., between the lens 12 and the image sensor 14), but embodiments of the present disclosure are not limited thereto. In some embodiments, the filter 16 is located in front of the lens 12, and in some embodiments, the filter 16 may include multiple separate components, where some components are located in front of the lens and other components are located behind the lens (e.g., a polarizing filter in front of the lens 12 and a color filter behind the lens 12). In some embodiments, camera 106′ is a polarization camera that includes lens 12B′, image sensor 14B′, and polarizing filter 16B′ (a polarization camera may also include a visible light color filter or other filter for passing a particular portion of the electromagnetic spectrum, such as an infrared filter, ultraviolet filter, and the like). In some embodiments of the present disclosure, the image sensors four cameras 10A′, 10B′, 10C′, and 10D′ are monolithically formed on a same semiconductor die, and the four cameras are located in a same housing with separate apertures for the lenses 12 corresponding to the different image sensors. Similarly, the filters 16 may correspond to different portions of a single physical layer that has different optical filter functions (e.g., different linear polarizing angles or circular polarizers, color filters with corresponding spectral response functions, and the like) in different regions of the layer (corresponding to the different cameras). In some embodiments, a filter 16 of a polarization camera includes a polarization mask 16 similar to the Sony® IMX250MZR sensor, which includes a polarization mosaic aligned with the pixel grid of the image sensor 14 in a manner similar to a red-green-blue (RGB) color filter (e.g., a Bayer filter) of a color camera. In a manner similar to how a color filter mosaic filters incoming light based on wavelength such that each pixel in the image sensor 14 receives light in a particular portion of the spectrum (e.g., red, green, or blue) in accordance with the pattern of color filters of the mosaic, a polarization mask 16 using a polarization mosaic filters light based on linear polarization such that different pixels receive light at different angles of linear polarization (e.g., at 0°, 45°, 90°, and 135°, or at 0°, 60° degrees, and 120°). Accordingly, a camera of the camera array 10′ may use a polarization mask 16 to concurrently or simultaneously capture light at four different linear polarizations.


In some embodiments, a demosaicing process is used to compute separate red, green, and blue channels from the raw data. In some embodiments of the present disclosure, each polarization camera may be used without a color filter or with filters used to transmit or selectively transmit various other portions of the electromagnetic spectrum, such as infrared light.


As noted above, embodiments of the present disclosure relate to multi-modal and/or multi-spectral camera arrays. Accordingly, in various embodiments of the present disclosure, the cameras within a particular camera array include cameras configured to perform imaging in a plurality of different modalities and/or to capture information in a plurality of different spectra.


As one example, in some embodiments, the first camera 10A′ is a visible light camera that is configured to capture color images in a visible portion of the electromagnetic spectrum, such as by including a Bayer color filter 16A′ (and, in some cases, a filter to block infrared light), and the second camera 10B′, third camera 10C′, and fourth camera 10D′ are polarization cameras having different polarization filters, such filters having linear polarization angles of 0°, 60°, and 120°, respectively. The polarizing filters in the optical paths of each of the cameras in the array cause differently polarized light to reach the image sensors of the cameras. The individual polarization cameras in the camera array have optical axes that are substantially perpendicular to one another, are placed adjacent to one another, and have substantially the same field of view, such that the cameras in the camera array capture substantially the same view of a scene as the visible light camera 10A′, but with different polarizations. While the embodiment shown in FIG. 7A includes a 2×2 array of four cameras, three of which are polarization cameras, embodiments of the present disclosure are not limited thereto, and the camera array may more than three polarization cameras, each having a polarizing filter with a different polarization state (e.g., a camera array may have four polarization cameras along with the visible light color camera 10A′, where the polarization cameras may have polarization filters with angles of linear polarization, such as 0°, 45°, 90°, and 135°). In some embodiments, one or more of the cameras may include a circular polarizer.


As another example, one or more of the cameras in the camera array 10′ may operate in other imaging modalities and/or other imaging spectra, such as polarization, near infrared, far infrared, shortwave infrared (SWIR), longwave infrared (LWIR) or thermal, ultraviolet, and the like, by including appropriate filters 16 (e.g., filters that pass light having particular polarizations, near-infrared light, SWIR light, LWIR light, ultraviolet light, and the like) and/or image sensors 14 (e.g., image sensors optimized for particular wavelengths of electromagnetic radiation) for the particular modality and/or portion of the electromagnetic spectrum.


For example, in the embodiment of the camera array 10′ shown in FIG. 7A, four cameras 10A′, 10B′, 10C′, and 10D′ are arranged in a 2×2 grid to form a camera array, referred to herein as a camera array, where the four cameras have substantially parallel optical axes. The four cameras may be controlled together such that they capture images substantially simultaneously. In some embodiments, the four cameras are configured to capture images using the same exposure settings (e.g., same aperture, length of exposure, and gain or “ISO” settings). In some embodiments, the exposure settings for the different cameras can be controlled independently from one another (e.g., different settings for each camera), where the pose estimator 100 jointly or holistically sets the exposure settings for the cameras based on the current conditions of the scene 1000 and the characteristics of the imaging modalities and spectral responses of the cameras 10A′, 106′, 10C′, and 10D′ of the camera array 10′.


In some embodiments, the various individual cameras of the camera array are registered with one another by determining their relative poses (or relative positions and orientations) by capturing multiple images of a calibration target, such as a checkerboard pattern, an ArUco target (see, e.g., Garrido-Jurado, Sergio, et al. “Automatic generation and detection of highly reliable fiducial markers under occlusion.” Pattern Recognition 47.6 (2014): 390-402.) or a ChArUco target (see, e.g., An, Gwon Hwan, et al. “Charuco board-based omnidirectional camera calibration method.” Electronics 7.12 (2018): 421.). In particular, the process of calibrating the targets may include computing intrinsic matrices characterizing the internal parameters of each camera (e.g., matrices characterizing the focal length, image sensor format, and principal point of the camera) and extrinsic matrices characterizing the pose of each camera with respect to world coordinates (e.g., matrices for performing transformations between camera coordinate space and world or scene coordinate space). Different cameras within a camera array may have image sensors with different sensor formats (e.g., aspect ratios) and/or different resolutions without limitation, and the computed intrinsic and extrinsic parameters of the individual cameras enable the pose estimator 100 to map different portions of the different images to a same coordinate space (where possible, such as where the fields of view overlap).



FIG. 8 is a perspective view of a stereo camera array system 10 according to one embodiment of the present disclosure. For some applications, stereo vision techniques are used to capture multiple images of scene from different perspectives. As noted above, in some embodiments of the present disclosure, individual cameras (or camera modules) within a camera array 10′ are placed adjacent to one another such that parallax shifts between the cameras are small or substantially negligible based on the designed operating distance of the camera system to the subjects being imaged (e.g., where the parallax shifts between cameras of a same array are less than a pixel for objects at the operating distance). In addition, as noted above, in some embodiments, differences in the poses of the individual cameras within a camera array 10′ are corrected through image registration based on the calibrations (e.g., computed intrinsic and extrinsic parameters) of the cameras such that the images are aligned to a same coordinate system for the viewpoint of the camera array.


In stereo camera array systems according to some embodiments, the camera arrays are spaced apart from one another such that parallax shifts between the viewpoints corresponding to the camera arrays are detectable for objects in the designed operating distance of the camera system. This enables the distances to various surfaces in a scene (the “depth”) to be detected in accordance with a disparity measure or a magnitude of a parallax shift (e.g., larger parallax shifts in the locations of corresponding portions of the images indicate that those corresponding portions are on surfaces that are closer to the camera system and smaller parallax shifts indicate that the corresponding portions are on surfaces that are farther away from the camera system). These techniques for computing depth based on parallax shifts are sometimes referred to as Depth from Stereo


Accordingly, FIG. 8 depicts a stereo camera array system 10 having a first camera array 10-1′ and a second camera array 10-2′ having substantially parallel optical axes and spaced apart along a baseline 10-B. In the embodiments shown in FIG. 8, the first camera array 10-1′ includes cameras 10A′, 10B′, 10C′, and 10D′ arranged in a 2×2 array similar to that shown in FIG. 7A and FIG. 7B. Likewise, the second camera array 10-2′ includes cameras 10E′, 10F′, 10G′, and 10H′ arranged in a 2×2 array, and the overall stereo camera array system 10 includes eight individual cameras (e.g., eight separate image sensors behind eight separate lenses). In some embodiments of the present disclosure, corresponding cameras of the camera arrays 10-1′ and 10-2′ are of the same type or, in other words, configured to capture raw frames or images using substantially the same imaging modalities or in substantially the same spectra. In the specific embodiment shown in FIG. 8, cameras 10A′ and 10E′ may be of a same first type, cameras 10B′ and 10F′ may be of a same second type, cameras 10C′ and 10G′ may be of a same third type, and cameras 10D′ and 10H′ may be of a same fourth type. For example, cameras 10A′ and 10E′ may both have linear polarizing filters at a same angle of 0°, cameras 10B′ and 10F′ may both have linear polarizing filters at a same angle of 45°, cameras 10C′ and 10G′ may both be viewpoint-independent cameras having no polarization filter (NF), such as near-infrared cameras, and cameras 10D′ and 10H′ may both have linear polarizing filters at a same angle of 90°. As another example, cameras 10A′ and 10E′ may both be viewpoint-independent cameras such as visible light cameras without polarization filters, cameras 10B′ and 10F′ may both be thermal cameras, cameras 10C′ and 10G′ may both have polarization masks with a mosaic pattern polarization filters at different angles of polarization (e.g., a repeating pattern with polarization angles of 0°, 45°, 90°, and 135°), and cameras 10D′ and 10H′ may both be thermal (LWIR) cameras.


While some embodiments are described above wherein each array includes cameras of different types in a same arrangement, embodiments of the present disclosure are not limited thereto. For example, in some embodiments, the arrangements of cameras within a camera array are mirrored along an axis perpendicular to the baseline 10-B. For example, cameras 10A′ and 10F′ may be of a same first type, cameras 10B′ and 10E′ may be of a same second type, cameras 10C′ and 10H′ may be of a same third type, and cameras 10D′ and 10G′ may be of a same fourth type.


In a manner similar to that described for calibrating or registering cameras within a camera array, the various polarization camera arrays of a stereo camera array system may also be registered with one another by capturing multiple images of calibration targets and computing intrinsic and extrinsic parameters for the various camera arrays. The camera arrays of a stereo camera array system 10 may be rigidly attached to a common rigid support structure 10-S in order to keep their relative poses substantially fixed (e.g., to reduce the need for recalibration to recompute their extrinsic parameters). The baseline 10-B between camera arrays is configurable in the sense that the distance between the camera arrays may be tailored based on a desired or expected operating distance to objects in a scene—when the operating distance is large, the baseline 10-B or spacing between the camera arrays may be longer, whereas the baseline 10-B or spacing between the camera arrays may be shorter (thereby allowing a more compact stereo camera array system) when the operating distance is smaller.


As noted above with respect to FIG. 6B, a light ray 43 hitting the image sensor 14 of a polarization camera 10 has three measurable components: the intensity of light (intensity image/I), the percentage or proportion of light that is linearly polarized (degree of linear polarization/DOLP/ρ), and the direction of that linear polarization (angle of linear polarization/AOLP/ϕ).


Measuring intensity I, DOLP ρ, and AOLP ϕ at each pixel requires 3 or more polarization raw frames of a scene taken behind polarizing filters (or polarizers) at different angles, ϕpol (e.g., because there are three unknown values to be determined: intensity I, DOLP ρ, and AOLP ϕ. For example, a polarization camera such as those described above with respect to FIGS. 1B, 1C, 1D, and 1 E captures polarization raw frames with four different polarization angles ϕpol, e.g., 0 degrees, 45 degrees, 90 degrees, or 135 degrees, thereby producing four polarization raw frames Iϕpol, denoted herein as I0, I45, I90, and I135.


The relationship between Iϕpol and intensity I, DOLP ρ, and AOLP ϕ at each pixel can be expressed as:

Iϕpol=I(1ρcos(2(ϕ−ϕpol)))  (7)


Accordingly, with four different polarization raw frames Iϕpol (I0, I45, I90, and I135), a system of four equations can be used to solve for the intensity I, DOLP ρ, and AOLP ϕ.


Shape from Polarization (SfP) theory (see, e.g., Gary A Atkinson and Edwin R Hancock. Recovery of surface orientation from diffuse polarization. IEEE transactions on image processing, 15(6):1653-1664, 2006.) states that the relationship between the refractive index (n), azimuth angle (θa) and zenith angle (θz) of the surface normal of an object and the ϕ and ρ components of the light ray coming from that object follow the following characteristics when diffuse reflection is dominant:









ρ
=




(

n
-

1
n


)

2




sin
2

(

θ
z

)



2
+

2


n
2


-



(

n
+

1
n


)

2



sin
2



θ
z


+

4


cos



θ
z





n
2

-


sin
2



θ
z











(
8
)












ϕ
=

θ
a





(
9
)








and when the specular reflection is dominant:









ρ
=


2



sin
2



θ
z


cos



θ
z





n
2

-


sin
2



θ
z







n
2

-


sin
2



θ
z


-


n
2



sin
2



θ
z


+

2



sin
4



θ
z








(
10
)












ϕ
=


θ
a

-

π
2






(
11
)







Note that in both cases ρ increases exponentially as θz increases and if the refractive index is the same, specular reflection is much more polarized than diffuse reflection.


Accordingly, some aspects of embodiments of the present disclosure relate to applying SfP theory to detect or measure the gradients of surfaces (e.g., the orientation of surfaces or their surface normals or directions perpendicular to the surfaces) based on the raw polarization frames of the objects, as captured by the polarization cameras among the main camera 10 and the support cameras 30. Computing these gradients produces a gradient map (or slope map or surface normals map) identifying the slope of the surface depicted at each pixel in the gradient map. These gradient maps can then be used when estimating the pose of the object by aligning a pre-existing 3-D model (e.g., CAD model) of the object with the measured surface normals (gradients or slopes) of the object in based on the slopes of the surfaces of the 3-D model, as described in more detail below.


Estimating Six-Degree-of-Freedom Poses of Objects in a Scene


Estimating the six-degree-of-freedom (6-DoF) poses of objects in a scene is a useful task in various applications such as robotics, where understanding the three-dimensional (3-D) shapes and locations of objects in a scene provides more information to a robot controller regarding an environment, thereby improving situational awareness and enabling the robot controller to interact appropriately with the environment, in accordance the particular tasks assigned to the robot. As noted above, autonomously navigating robots or vehicles may maintain information about the poses of objects in a scene in order to assist with navigation around those objects in order to predict trajectories and to avoid collisions with those objects. As another example, in the case of manufacturing, pose estimation may be used by robotic systems to manipulate the workpieces and place and/or attach components to those workpieces.


Some aspects of systems and methods for estimating the six-degree-of-freedom poses of objects are described in International Patent Application No. PCT/US21/15926, titled “SYSTEMS AND METHODS FOR POSE DETECTION AND MEASUREMENT,” filed in the United States Patent and Trademark Office on Jan. 29, 2021, the entire disclosure of which is incorporated by reference herein. Generally, the approach described in the above-referenced international patent application relates to computing a 6-DoF pose of an object in a scene by determining a class or type of the object (e.g., a known or expected object) and aligning a corresponding 3-D model of the object (e.g., a canonical or ideal version of the object based on known design specifications of the object and/or based on the combination of a collection of samples of the object) with the various views of the object, as captured from different viewpoints around the object.



FIG. 9 is a flowchart depicting a method for computing six-degree-of-freedom (6-DoF) poses of objects, including deformable objects, according to some embodiments of the present disclosure.


In operation 310, the pose estimator 100 controls one or more cameras, such as the master camera 10 and the support cameras 30, to capture one or more images of the scene, which may be from multiple viewpoints in the case of multiple cameras. In embodiments using multiple cameras, the cameras are configured to capture images concurrently or substantially simultaneously. Each camera is arranged at a different pose with respect to the scene 1, such that each camera captures scene from its corresponding different viewpoint. Accordingly, the collection of images captured by multiple cameras represent a collection of multi-viewpoint images of the scene 1. (In some embodiments, the images are captured from multiple viewpoints using one or more cameras, such as by moving the one or more cameras between different viewpoints while keeping the scene fixed, and/or rigidly transforming the scene between captures by the one or more cameras.) The one or more images of the scene may be referred to herein as being “consistent” in that they are all pictures of the same consistent scene but providing different views of the scene from different viewpoints and/or different imaging modalities. This consistency between the images of the scene may be achieved by capturing all of the images substantially simultaneously or concurrently or by requiring that none of the objects of interest in the scene that are depicted in the image have moved (e.g., translated or rotated) between in the time between the capture of different images of the scene.


In some circumstances, one or more of the “cameras” are multi-modal cameras that capture multiple images from the same viewpoint, but having in different modalities, such as different portions of the electromagnetic spectrum (e.g., red, green and blue portions of the visible light spectrum, near infrared light, far infrared light, ultraviolet light, etc.), different optical filters (e.g., linear polarization filters at different angles and/or circular polarization filters), and combinations thereof. Accordingly, a collection of multi-viewpoint images of a scene does not require that all images be captured from different viewpoints, but only that there are at least two images captured from different viewpoints. Such a collection of multi-viewpoint images therefore may include at least some images that are captured from the same viewpoint.


In the case of a sensing system using multi-viewpoint images or images of a scene from more than one viewpoint, in operation 330, the pose estimator 100 computes object-level correspondences on the multi-viewpoint images of the scene. More specifically, instances of one or more types of objects are identified in the multi-viewpoint images of the scene, and corresponding instances of objects are identified between the multi-viewpoint images. For example, a scene 1000 may include two cubes and three spheres, and various of the multi-viewpoint images may depict some or all of these five objects. A process of instance segmentation identifies the pixels in each of the images that depict the five objects, in addition to labeling them separately based on the type or class of object (e.g., a classification as a “sphere” or a “cube”) as well as instance labels (e.g., assigning a unique label to each of the objects, such as numerical labels “1,” “2,” “3,” “4,” and “5”). Computing object-level correspondences between the multi-viewpoint images further relates to computing consistent labels between the different viewpoints (for example, such that the same cube is labeled “1” from each of the viewpoint). Accordingly, the pose estimator 100 generates collections of crops or patches of the multi-viewpoint images of the scene, where each collection of patches depicts the same instance from different viewpoints (cropped to the region containing the object and, in some cases, a small neighborhood or margin around the object).


In the case of a single image depicting a scene from a single viewpoint, in operation 330, the pose estimator 100 may merely compute a segmentation map, which similarly enables the generation of a crop or patch for each object instance detected in the image.


Systems and methods for computing object-level correspondences are described in International Patent Application No. PCT/US21/15926, titled “SYSTEMS AND METHODS FOR POSE DETECTION AND MEASUREMENT,” filed in the United States Patent and Trademark Office on Jan. 29, 2021, which, as noted above, is incorporated by reference herein in its entirety. For the sake of clarity, some techniques for computing object-level correspondences on images are described herein with reference to FIGS. 4A, 4B, and 4C.


In general terms, computing object-level correspondences reduces a search space for conducting image processing tasks such as, for example, pixel-level correspondence. In one embodiment, instance segmentation is performed to identify different instances of objects in images portraying a scene as viewed from different viewpoints, and instance segmentation maps/masks may be generated in response to the instance segmentation operation. The instance segmentation masks may then be employed for computing object level correspondences.


In one embodiment, object level correspondence allows the matching of a first instance of an object appearing in a first image that depicts a view of a scene from a first viewpoint, to a second instance of the same object appearing in a second image that depicts a view of a scene from a second viewpoint. Once object level correspondence is performed, the search space for performing, for example, pixel-level correspondence, may be limited to the regions of the image that correspond to the same object. Reducing the search space in this manner may result in faster processing of pixel-level correspondence and other similar tasks.



FIG. 10A is a flow diagram of a process for object level correspondence according to one embodiment. The process may be implemented by one or more processing circuits or electronic circuits that are components of the pose estimator 100. It should be understood that the sequence of steps of the process is not fixed, but can be modified, changed in order, performed differently, performed sequentially, concurrently, or simultaneously, or altered into any desired sequence, as recognized by a person of skill in the art. The process described with respect to FIG. 10A may be used, in some embodiments of the present disclosure, to compute object level correspondences in operation 330 of FIG. 9, but embodiments of the present disclosure are not limited thereto.


The process starts, and at block 400, the pose estimator 100 receives multi-view images from the main and support cameras 10, 30. A first image captured by one of the cameras may depict one or more objects in a scene from a first viewpoint, and a second image captured by a second camera may depict the one or more objects in the scene from a second viewpoint different from the first viewpoint. The images captured by the cameras may be, for example, polarized images and/or images that have not undergone any polarization filtering.


At block 402 the pose estimator 100 performs instance segmentation and mask generation based on the captured images. In this regard, the pose estimator 100 classifies various regions (e.g. pixels) of an image captured by a particular camera 10, 30 as belonging to particular classes of objects. Each of the different instances of the objects in the image may also be identified, and unique labels be applied to each of the different instances of objects, such as by separately labeling each object in the image with a different identifier.


In one embodiment, segmentation masks delineating the various object instances are also be generated. Each segmentation mask may be a 2-D image having the same dimensions as the input image, where the value of each pixel may correspond to a label (e.g. a particular instance of the object depicted by the pixel). A different segmentation mask may be generated for different images depicting different viewpoints of the objects of interest. For example, a first segmentation mask may be generated to depict object instances in a first image captured by a first camera, and a second segmentation mask may be generated to depict object instances in a second image captured by a second camera. As convolutional neural network such as, for example, Mask R-CNN, may be employed for generating the segmentation masks.


At block 404, the pose estimator 100 engages in object-level correspondence of the objects identified in the segmentation masks. In this regard, the pose estimator may invoke a matching algorithm to identify a segmented instance of a particular object in one image as corresponding (or matching) a segmented instance of the same object in another image. The matching algorithm may be constrained to search for matching object instances along an epipolar line through an object instance in one image to find a corresponding object instance in a different image. In one embodiment, the matching algorithm compares different features of the regions corresponding to the segmented object instances to estimate the object correspondence. The matching of object instances from one image to another may narrow a search space for other image processing tasks such as, for example, performing pixel level correspondence or keypoint correspondence. The search space may be narrowed to the identified regions of the images that are identified as corresponding to the same object.


At block 406, the pose estimator 100 generates an output based on the object-level correspondence. The output may be, for example, a measure of disparity or an estimated depth (e.g., distance from the cameras 10, 30) of the object based on the disparity between corresponding instances as depicted in the various images. In one embodiment, the output is a three-dimensional reconstruction of the configuration of the object and a 6-DoF pose of the object, as described in more detail below with respect to FIG. 9.



FIG. 10B is a block diagram of an architecture for instance segmentation and mask generation of step 402 according to one embodiment. Input images 410 captured by the various cameras 10, 30 are provided to a deep learning network 412 such as, for example, a CNN backbone. In the embodiments where the images include polarized images, the deep learning network may be implemented as a Polarized CNN backbone as described in PCT Patent Application No. PCT/US2020/048604, also filed as U.S. patent application Ser. No. 17/266,046, the content of which is incorporated herein by reference.


In one embodiment, the deep learning network 412 is configured to generate feature maps based on the input images 410, and employ a region proposal network (RPN) to propose regions of interest from the generated feature maps. The proposals by the CNN backbone may be provided to a box head 414 for performing classification and bounding box regression. In one embodiment, the classification outputs a class label 416 for each of the object instances in the input images 410, and the bounding box regression predicts bounding boxes 418 for the classified objects. In one embodiment, a different class label 416 is provided to each instance of an object.


The proposals by the CNN backbone may also be provided to a mask head 420 for generating instance segmentation masks. The mask head 416 may be implemented as a fully convolutional network (FCN). In one embodiment, the mask head 420 is configured to encode a binary mask for each of the object instances in the input images 410.



FIG. 10C is a more detailed flow diagram of a matching algorithm employed at step 404 (FIG. 10A) for identifying object-level correspondence for a particular object instance in a first segmentation mask according to one embodiment. The process may repeat for all object instance identified in the first segmentation mask. The sequence of steps of the process of FIG. 10C is not fixed, but can be modified, changed in order, performed differently, performed sequentially, concurrently, or simultaneously, or altered into any desired sequence, as recognized by a person of skill in the art.


At block 430, the matching algorithm identifies features of a first object instance in a first segmentation mask. The identified features for the first object instance may include a shape of the region of the object instance, a feature vector in the region, and/or keypoint predictions in the region. The shape of the region for the first object instance may be represented via a set of points sampled along the contours of the region. Where a feature vector in the region is used as the feature descriptor, the feature vector may be an average deep learning feature vector extracted via a convolutional neural network.


At block 432, the matching algorithm identifies an epipolar line through the first object instance in the first segmentation mask.


At block 434, the matching algorithm identifies one or more second object instances in a second segmentation mask that may correspond to the first object instance. A search for the second object instances may be constrained to the epipolar line between the first segmentation map and the second segmentation map that runs through the first object instance. In one embodiment, the matching algorithm searches approximately along the identified epiploar line to identify object instances in the second segmentation mask having a same class identifier as the first object instance. For example, if the first object instance belongs to a “dog” class, the matching algorithm evaluates object instances in the second segmentation mask that also belong to the “dog” class, and ignores objects that belong to a different class (e.g., a “cat” class).


At block 436, the matching algorithm identifies the features of the second object instances that belong the same class. As with the first object instance, the features of a particular second object instance may include a shape of the region of the second object instance, a feature vector representing the region, and/or keypoint predictions in the region.


At block 438, the matching algorithm compares the features of the first object instance to the features of second object instances for determining a match. In one embodiment, the matching algorithm identifies a fit between the features of the first object instance and features of the second object instances for selecting a best fit. In one embodiment, the best fit may be identified via a matching function such as the Hungarian matching function. In one embodiment, the features of the object instances are represented as probability distributions, and the matching function attempts to find a match of the probability distributions that minimizes a Kullback-Leibler (KL) divergence.


At block 440, a determination is made as to whether a match has been found. If the answer is YES, an output is generated at block 442. The output may include, for example, information (e.g. object ID) of the second object instance that matched the first object instance.


If the answer is NO, an output may be generate indicating a match failure at block 444.


Accordingly, object level correspondences can be computed from the multi-viewpoint images. These object level correspondences may be used to extract corresponding crops or patches from the multi-viewpoint images, where each of these crops or patches depicts a single instance of an object, and collections of corresponding crops or patches depict the same instance of an object from multiple viewpoints.


In operation 350, the pose estimator 100 loads a 3-D model of the object based on the detected object type one or more object detected in the scene (e.g., for each detected instance of a type of object). For example, in a circumstance where the collection of objects 22 includes a mixture of different types of flexible printed circuit boards, the process of computing object-level correspondences assigns both an instance identifier and a type (or classification) to each detected instance of a flexible printed circuit board (e.g., which of the different types of printed circuit boards). Therefore, a 3-D model of the object may then be loaded from a library based on the detected object type.


In operation 370, the pose estimator 100 aligns the corresponding 3-D model to the appearances of the object to be consistent with the appearance of the object as seen from the one or more viewpoints. In the case of deformable objects, the alignment process in operation 370 may also include deforming the 3-D model to match the estimated configuration of the actual object in the scene. This alignment of the 3-D model provides the 6-DoF pose of the object in a global coordinate system (e.g., a coordinate system based on the main camera 10 or based on the robot controller 28). Details of aspects of the present disclosure for performing the alignment of a 3-D model with the appearance of an object will be described in more detail below.


Aligning Poses and Object Configurations Based on Dense Correspondences


Generally, the methods described herein will make use of a 3-D model or computer-aided-design (CAD) model C of the object (e.g., as loaded in operation 350) and observed two-dimensional (2-D) image data I of the object (e.g., as captured by the cameras in operation 310 and with object-level corresponding patches of the images extracted therefrom in operation 330). In some embodiments, the output of the 6-DoF pose estimation technique (computed by the pose estimator 100) includes a mesh M and its 6-DoF pose a global coordinate system (e.g., 3 dimensional translational and rotational coordinates in the coordinate system used by the controller 28 of a robotic arm 24 or a coordinate system oriented with respect to a master camera 10) for each of the detected objects in the scene. In some embodiments, feature vectors computed by embodiments of the preset disclosure (e.g., prior to a computation of a pose estimate) are supplied as inputs to other layers of a neural network that is trained (end-to-end) to control a system (e.g., a robotic arm) based on input images.



FIG. 11 is a flowchart depicting a method 500 for computing a pose of an object based on dense correspondences according to some embodiments of the present disclosure. For the sake of clarity, embodiments of the present disclosure will be described with respect to the estimation of the pose of one object in the scene. However, embodiments of the present disclosure are not limited thereto and include embodiments wherein the pose estimator 100 estimates the poses of multiple objects in the scene as depicted in the one or more images captured in operation 310 (e.g., where the poses of the multiple objects may be estimated in parallel or jointly in a combined process).


In operation 510, the pose estimator 100 computes an initial pose estimate of an object based on one or more images of the object, such as the image patches extracted in operation 330. The pose estimator 100 may also receive one or more 3-D models corresponding to the detected objects (e.g., as loaded in operation 350) where the 3-D model is posed (e.g., translated and rotated) based on the initial pose estimate. In some embodiments, the initial pose estimate is computed based on detecting keypoints in the one or more images of the object and using a Perspective-n-Point algorithm to match the detected keypoints with corresponding known locations of keypoints in the 3-D model. See, e.g., Zhao, Wanqing, et al. “Learning deep network for detecting 3D object keypoints and 6D poses.” Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020. and Lepetit, Vincent, Francesc Moreno-Noguer, and Pascal Fua. “EPnP: An accurate O(n) solution to the PnP problem.” International Journal of Computer Vision 81.2 (2009): 155. The keypoints may be detected using, for example, a classical keypoint detector (e.g., scale-invariant feature transform (SIFT), speeded up robust features (SURF), gradient location and orientation histogram (GLOH), histogram of oriented gradients (HOG), basis coefficients, Haar wavelet coefficients, and the like.) or a trained deep learning keypoint detector such as a trained convolutional neural network using HRNet (Wang, Jingdong, et al. “Deep high-resolution representation learning for visual recognition.” IEEE transactions on pattern analysis and machine intelligence (2020).) with a differential spatial to numerical (DSNT) layer and Blind Perspective-n-Point (Campbell, Dylan, Liu, and Stephen Gould. “Solving the Blind Perspective-n-Point Problem End-To-End With Robust Differentiable Geometric Optimization.” European Conference on Computer Vision. Springer, Cham, 2020.).


As another example, the initial pose estimate may be computed by capturing a depth image or depth map of the object (e.g., using a stereo depth camera or time of flight depth camera) and applying an iterative closest point (ICP) algorithm or a point pair feature matching algorithm (see, e.g., Drost, Bertram, et al. “Model globally, match locally: Efficient and robust 3D object recognition.” 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. IEEE, 2010.) to align the 3-D model to the shape of the object as it appears in the depth image. In some embodiments, the initial pose estimate is computed directly from a trained network (see, e.g., Xiang, Yu, et al. “PoseCNN: A convolutional neural network for 6D object pose estimation in cluttered scenes.” arXiv preprint arXiv: 1711.00199 (2017).) and/or approaches such as a dense pose object detector (Zakharov, Sergey, Ivan Shugurov, and Slobodan Ilic. “DPOD: 6D Pose Object Detector and Refiner.” 2019 IEEE/CVF International Conference on Computer Vision (ICCV). IEEE Computer Society, 2019.)



FIG. 12 is a schematic depiction of a 3-D model, depicted in shaded form, posed in accordance with an initial pose estimate and overlaid onto an observed image of a scene, depicted in line drawing form. As shown in FIG. 12 these is an error between the observed object 602 and the rendering of the 3-D model 604 as posed based on the initial pose estimate, both in the form of rotation error and translation error. Accordingly, aspects of embodiments of the present disclosure relate to refining this initial pose estimate (whether performed using keypoint detection and a PnP algorithm or using a depth image and an ICP algorithm as discussed above, or through other techniques) as described in more detail below.



FIG. 13A is a block diagram depicting a pipeline 700 for refining an initial pose estimate using dense correspondences according to one embodiment of the present disclosure. In various embodiments, the pipeline 700 is implemented in whole or in part by the pose estimator 100 to compute refined pose estimates, or feature vectors in other representation spaces representing the location of the object, based on input images of the object.


Referring back to FIG. 11 and to FIG. 13A, in operation 530, the pose estimator 100 uses a renderer 710 (or rendering engine) to render an image 731 (e.g., a 2-D image) of the 3-D model 711 in its initial pose 712 from the viewpoint of a camera (e.g., extrinsic camera parameters) that captured an image of the object in the scene. In embodiments in which multiple consistent images of the object were captured from multiple viewpoints, the pose estimator 100 renders a separate image of the 3-D model in its initial estimated pose in the scene observed by the cameras from each of the separate viewpoints with respect to the object in the scene. The rendering may also be performed in accordance with camera intrinsic parameters (e.g., accounting for field of view and lens distortions of the camera or cameras used to capture the observed images of the object in the scene).


In some embodiments of the present disclosure, the rendered image of the object is a rendered surface normals map, where each pixel or point in the rendered surface normals map is a vector indicating the direction of the surface of the 3-D model depicted at that pixel or point (e.g., a vector perpendicular to the surface of the object at that pixel or point). In some cases, the normal vector at each pixel is encoded in the color channels of an image (e.g., in red, green, and blue color channels). In some embodiments, the pose estimator 100 renders the rendered surface normals map by computing a depth map from the perspective or viewpoint of the observing camera used to capture the observed image (e.g., using the Moller-Trumbore ray-triangle intersection algorithm as described in Möller, Tomas, and Ben Trumbore. “Fast, minimum storage ray-triangle intersection.” Journal of graphics tools 2.1 (1997): 21-28.). According to these embodiments, the depth map of the object is converted to a point cloud, and a rendered surface normals map is computed from the point map (e.g., by computing the slope between neighboring or adjacent points of the point cloud).


In some embodiments of the present disclosure, the pose estimator 100 renders the rendered surface normals map directly from 3-D model with a virtual camera placed at the perspective or viewpoint of the observing camera. This direct rendering may be performed by tracing rays directly from the virtual camera into a virtual scene containing the 3-D model in its initial estimated pose and computing the surface normal of the first surface that each ray intersects with (in particular, the surfaces of the 3-D model in the initial estimated pose that the rays intersect with).


While the rendered image 731 in the embodiments described above include one or more rendered surface normals maps, embodiments of the present disclosure are not limited thereto and the renderer may be configured to generate different types of rendered 2-D images such as color (e.g., red, green, blue) images, monochrome images, and the like.


In operation 570, the pose estimator 100 computes dense image-to-object correspondences between the one or more images of the object and the 3-D model of the object. For example, the rendered image 731 of the object in the scene based on the initial estimated pose and observed image 732 of the object in the same scene (or multiple rendered images 731 and multiple observed images 732 from different viewpoints) are supplied to correspondence calculator 730, which computes dense correspondence features between the rendered image 731 and the observed image 732 (or the rendered images 731 and the corresponding observed images 732 of the object in the scene).


In various embodiments, the correspondence calculator 730 may use different techniques to compute dense correspondence features between the rendered image 731 and the observed image 732. In some embodiments, a disparity neural network is used to detect correspondences (see, e.g., Xu, Haofei, and Juyong Zhang. “AANet: Adaptive aggregation network for efficient stereo matching.” Proceedings of the IEEE/C VF Conference on Computer Vision and Pattern Recognition. 2020.), where the disparity neural network is modified to match pixels along the y-axis of the images (e.g., perpendicular to the usual direction of identifying correspondences by a disparity neural network) in addition to along the x-axis of the input images (as traditional, where the input images are rectified to extend along the x-axis between stereo pairs of images), where the modification may include flattening the output of the neural network before supplying the output to the loss function used to train the disparity neural network, such that the loss function accounts identifies and detects disparities along both the x-axis and the y-axis. In some embodiments, an optical flow neural network is trained and/or retrained to operate on the given types of input data (e.g., observed surface normals maps and observed images), where examples of optical flow neural networks are described in Dosovitskiy, Alexey, et al. “FlowNet: Learning optical flow with convolutional networks.” Proceedings of the IEEE international conference on computer vision. 2015. IIg, Eddy, et al. “FlowNet 2.0: Evolution of optical flow estimation with deep networks.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2017. and Trabelsi, Ameni, et al. “A Pose Proposal and Refinement Network for Better 6D Object Pose Estimation.” Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision. 2021. In some embodiments, classical techniques for computing dense correspondences are be used, such as classical algorithms for computing optical flow (see, e.g., Horn and Schunck, referenced above) or classical techniques for computing disparity (e.g., block matching, but applied along both the x-axis and y-axis). Other embodiments of the present disclosure include modifications and/or retraining of existing neural network backbones to take two inputs (e.g., the observed image and the rendered image) to compute correspondences.


The observed image or observed images 732 supplied as input to the correspondence calculator 730 may be the same images that were used to compute the initial pose estimate or may be different images, such as images from different viewpoints from those used to compute the initial pose estimate, images captured in different modalities (e.g., polarization and/or different spectra), or images or feature maps computed based on captured or observed images (e.g., observed features in polarization representation spaces or observed surface normals computed from polarization features using shape-from-polarization techniques). Examples of types of images include color images (e.g., red, green, blue images) captured by color cameras, monochrome images (e.g., in the visible light, infrared, or ultraviolet portions of the spectrum), polarization raw frames (e.g., color or monochrome images captured through a polarization filter), polarization features in polarization representation spaces (e.g., angle of linear polarization (AOLP) and degree of linear polarization (DOLP)). As discussed in more detail above, shape from polarization (SfP) provides techniques for computing observed surface normals maps from captured or observed polarization raw frames.


Accordingly, the correspondence calculator 730 computes dense correspondences between the rendered image 731 and the observed image 732.


Through the rendering process, the pose estimator 100 also stores information associated with the rendered image 731 regarding the point in the 3-D model that is represented by each pixel in the rendered image. For example, when rendering the image using a ray tracing technique, each pixel of the rendered image corresponds to a location on the surface of the 3-D model (e.g., in uv coordinate space representing points on the surface of the 3-D model) as defined by a ray connecting the camera origin, the pixel, and the location on the surface of the 3-D model, as modified by any virtual optics system (e.g., as defined by camera intrinsic parameters). As such, the pose estimator 100 stores 2-D to 3-D correspondences between the 2-D rendered image 731 and the 3-D model in its initial pose.


Therefore, the correspondence calculator 730 further computes dense image-to-object correspondences 740 that maps pixels in the observed image 732 to locations on the surface of the 3-D model 711. In more detail, as shown in FIG. 13B, the optical flow features computed by the correspondence calculator 730 provide a mapping from pixels in the observed image 732 to pixels in the rendered image 731 and the 2-D to 3-D mapping information from the rendering process provides mappings from pixels in the rendered image 731 to locations on the surface of the 3-D model 711. As a result, the dense image-to-object correspondences 740 provide 2-D to 3-D correspondences between every visible pixel in the observed image 732 and the predicted point it represents on the 3-D model 711 of the object.


In operation 590, the pose estimator 100 updates the estimated pose based on the dense image-to-object correspondences. For example, as shown in FIG. 13A, the dense image-to-object correspondences may be supplied to a Perspective-n-Point (PnP) algorithm to compute a refined pose estimate. In some embodiments, the PnP algorithm estimates the refined pose P by finding the pose P that minimizes the error function below:








arg


min

P






x

X






K

P


f

(
x
)


-
x









where K is the camera intrinsic matrix of the camera used to capture the observed image of the object, P is a pose matrix representing the transformation between the object and the camera, f :N2→R3 is the dense image-to-object correspondences described above (computed in operation 570) mapping from pixel coordinates in the observed image to 3-D coordinates on the surface of the 3-D model, and X is the domain of f (e.g., across all of the pixels in the observed image of the object).


Because the correspondence calculator 730 computes a large number of correspondences (e.g., dense correspondences) between the image and the 3-D model of the object, these correspondences can also be used to estimate the configuration of the deformable object using a PnP algorithm, thereby enabling the measurement of the configuration of deformable objects (e.g., bags holding loose items such as food, clothes, flexible printed circuit boards, and the like) by deforming the 3-D model to match the configuration of the object. In some embodiments, the deformation of the 3-D model to match the configuration of the deformable object in the images can be computed for every pixel coordinate x ∈ X (where X represents the collection of all pixels in the observed images) as:

{Pf(x)−ProjL(x)(Pf(x))|x ∈0 X}

where L(x) represents a line of a projection of point x from the camera, P is a pose matrix representing the transformation between the object and the camera, f: N2→R3 is the dense image-to-object correspondences described above (computed in operation 570) mapping from pixel coordinates in the observed image to 3-D coordinates on the surface of the 3-D model, projL(x)(Pf (x)) is the estimated depth of the object coordinate seen at point x from the camera along line L(x), and X is the domain of f (e.g., across all of the pixels in the observed image of the object). Accordingly, the above expression provides one estimate of the deformation of the object, e.g., the difference between the predicted location based on the current pose P and a 3-D model of the object (as represented by the term Pf(x)) and the actual observed location of the corresponding point in the observed image, as represented by the term projL(x)(Pf(x)), where the difference represents the change in 3-D coordinates to be applied to make the shape of the 3-D model match up with the actual deformed shape or configuration of the observed object.


In some embodiments where a depth map D of the scene is available (e.g., by capturing a depth map of the scene using a depth camera such as a stereo camera) among the one or more observed images 732, the depth map is used to convert the pixel coordinates x to 3-D coordinates D(x) and therefore the deformation would be computed for each pixel x as:

{Pf(x)−D(x)|I x ∈ X}

Accordingly, the above expression provides one estimate of the deformation of the object, e.g., the difference between the predicted location based on the current pose P and a 3-D model of the object (as represented by the term Pf(x)) and the actual observed location of the corresponding point in the observed depth image D(x), where the difference represents the change in 3-D coordinates to be applied to make the shape of the 3-D model match up with the actual deformed shape or configuration of the observed object.


While FIG. 11 shows an embodiment where an updated pose of the 3-D model is computed once, in some embodiments the pose is iteratively refined by supplying the pose computed in operation 590 as the initial pose of the next iteration in operation 530 in order to further refine the estimated pose of the object for consistency with the observed image of the object.


In addition, while FIG. 11 depicts a circumstance in which the observed image of the object is captured from a single viewpoint, embodiments of the present disclosure are not limited thereto and may be applied in a multi-view environment where multiple cameras (e.g., a main camera 10 and support cameras 30) capture observed images of the object from multiple different viewpoints.



FIG. 14 is a flowchart depicting a method 800 for computing a pose of an object based on optical flow across multiple viewpoints according to some embodiments of the present disclosure. In operation 810, these multiple views (N views) are used jointly to compute an initial pose estimate (e.g., by detecting keypoints in the multiple observed images of the object and minimizing an error when matching the known keypoints of the 3-D model across the multiple views). In operation 830, multiple images (e.g., N different images) of the 3-D model are rendered from different virtual viewpoints corresponding to different viewpoints of the cameras, and in operation 870, image-to-object correspondences may be computed for each viewpoint (e.g., N viewpoints) for which a rendered image was generated in operation 830. As shown in FIG. 14 a first view is rendered in operation 831 from view 1000 and an N-th view is rendered in operation 839 from view N, and associated image-to-object correspondences are computed in operations 871 and 879, respectively, where the operations for rendering images and generating image-to-object correspondences from of views 2 through N-1 are not explicitly shown in FIG. 14. Accordingly, the refined pose P is calculated in operation 890 by across all pixels x ∈ X, where X includes all of the pixels of all of the observed images for which image-to-object correspondence maps f were calculated in operation 870.


This multi-view joint optimization approach further constrains the search space and increases the accuracy of the pose estimation, as portions of the object that were occluded (e.g., self-occluded) may be visible from the different viewpoints.


As noted above, the discussion of systems and methods for estimating the pose of an object was described in the context of computing a single pose estimate of a single object and/or a pose estimate and configuration of a single deformable object in a scene. However, embodiments are not limited thereto and, instead, include techniques for concurrently or simultaneously estimating the poses of multiple objects in a scene, such as where objects are depicted in a same set of one or more observed images of the scene. The objects may be homogeneous (e.g., all of the same class representable by a same 3-D model) or heterogeneous (e.g., of two or more different object classes that are represented by different 3-D models).


In more detail, in some embodiments, the correspondence calculator 730 is configured (or trained, in the case of neural network) to process an entire camera image in one pass, as opposed to processing a segmented patch of each object in the scene. As such, the runtime of the correspondence calculator 730 is constant with respect to the number of object poses to refine, thereby enabling the efficient detection of object poses, even in cluttered scenes (e.g., with many visible objects).


The large number of correspondences and multiple viewpoints may be used to perform filtering or smoothing to improve the accuracy of the dense image-to-object correspondences. In some embodiments, the filtering is performed by checking the consistency of the point correspondences such as by confirming that corresponding points between different images are projected to approximately the same location on the surface of the 3-D model, and where projected points that are farther from other projected points (e.g., not clustered with the other projected points) may be discarded as inaccurately located outliers or errors.


While some embodiments of the present disclosure are described above as computing 6-DoF poses of objects that may be supplied to a controller, such as for a robotic arm, other embodiments of the preset disclosure include controller pipelines including an optical flow calculator computing optical flow between an observed image and a rendered image of a 3-D model in a current estimated pose to compute dense correspondences, where the dense correspondences are supplied as feature vectors or feature maps within the controller pipeline, without the explicit computation of a 6-DoF pose within the controller pipeline. Such a controller pipeline may include one or more neural networks or sub-networks, where the controller pipeline is trained in an end-to-end fashion based on training data including images of a scene and labels identifying the desired output of the controller, such as a particular destination pose for the end effector of a robotic arm.


Optical flow refinement performs a task of matching parts of the object (finding correspondences) between two different images, such as by using a neural network to solve this correspondence problem. The output of this optical flow operation is then passed to an optimizer to compute the actual pose of the object. This method has several distinct advantages over comparative approaches.


Firstly, many existing 6-DoF pose estimation methods suffer from the problem of symmetries in the target objects. When an object looks the same from multiple viewpoints, it is ambiguous as to which pose the object takes by simply looking at the scene. In some embodiments using optical flow refinement, the initial pose estimate is known and is generally within 5 degrees (in rotation) and 0.5 mm (in translation) of the actual pose of the object (the initial pose may be calculated using techniques described in more detail below). Therefore, when rendering an image (e.g., a 2-D image) of the 3-D model in the initial estimated pose of the object, the pose estimation system may assume that the 3-D model of the object is viewed from the correct orientation and therefore the pose estimation system is confident that it is not viewing the other, symmetrical, side of the object. This lack of ambiguity means that the 2-D to 3-D correspondences computed by the optical flow model are on the correct view of the object and therefore are optimized in the correct pose orientation when performing alignment (e.g., using perspective-n-point or PnP algorithms as described above).


Another advantage of optical flow refinement is that it is robust to occlusions. In comparative pose prediction methods, if an object is partially occluded, the pose prediction may fail because the pose prediction method does not have the information from the occluded part of the object. For example, in keypoint based models, if some of the keypoints of the object are occluded, the predicted 2-D location of the keypoint will be inaccurate, which will increase the error in the final pose estimate. In contrast, when using optical flow based refinement according to some embodiments of the present disclosure, the correspondence between the rendered image and the observed image of the object is performed only on the visible (not occluded) parts of the object. As such, the lack of information of occluded parts of the object does not impact the optimization process. Additionally, using optical flow to compute correspondences results in a correspondence map for every visible pixel depicting the object and therefore the PnP algorithm has more than enough information to solve for a refined pose.


The large number of correspondences (e.g., dense correspondences) between pixels of the observed images and coordinates of the 3-D model also means that using optical flow refinement in accordance with embodiments of the present disclosure reduces the impact of errors in individual correspondences. In particular, the large number of correspondences causes the variance of the pose estimation from PnP to be drastically reduced versus comparative techniques (e.g., where a limited number of keypoints are detected at relatively sparse locations on the object). This is especially helpful with deformable objects, as the deformation of these objects tend to generate conflicting information for PnP algorithms, and because the dense correspondence map enables the detection of correspondences across the deformable surface of the object rather than merely at a few sparse keypoints on the surface of the object.


As a result of these features, experimental results on four different small objects (e.g., less than 30 mm in width) showed an average reduction in error rates in translation and rotation by about 40%. In particular, each type of small object was scattered into a homogenous collection of about 20 to 50 parts of the same type, and error rates were determined based on techniques described in International Patent Application PCT/US 20/63044, filed in the United States Patent and Trademark Office on Dec. 3, 2020. In more detail, the average translation and rotation error of a comparative pose estimation system (e.g., a keypoint-based pose estimation pipeline using a convolutional neural network-based keypoint detector) about 0.3 mm and 2.4 degrees, respectively. In contrast, the average translation and rotation error of an embodiment of the present disclosure using dense correspondences based on a disparity network, operating on the same input images of the objects, was about 0.2 mm and 1.5 degrees, while maintaining a low run time (e.g., short cycle time).


While the present invention has been described in connection with certain exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims, and equivalents thereof.

Claims
  • 1. A computer-implemented method for picking an object from a plurality of objects by a robot having an end effector, the method comprising: obtaining an image of a scene containing the plurality of objects;generating a segmentation map for the plurality of objects in the scene;determining shapes of the plurality of objects based on the segmentation map including obtaining, for each of one or more objects of the plurality of objects in the segmentation map, a respective 3D CAD model of the object and generating a respective shape of the object from the 3D CAD model of the object;adjusting the end effector including shaping the end effector according to a shape belonging to an object of the plurality of objects;approaching the plurality of objects; andpicking the object of the plurality of objects with the end effector adjusted according to the shape of the object.
  • 2. The method of claim 1, wherein shaping the end effector includes moving a portion of the end effector from a first state to a second state, wherein the first state is an equilibrium state, and the second state is a non-equilibrium state.
  • 3. The method of claim 2, wherein in the second state, the portion of the end effector retracts by an amount determined by one of the shapes.
  • 4. The method of claim 1, wherein shaping the end effector includes: predicting a shape of the end effector that will provide an optimal grasp of the one of the plurality of objects, wherein shaping the end effector is based on the predicted shape.
  • 5. The method of claim 1, wherein the end effector is at least one of a pin array, a tube, or a suction cup.
  • 6. The method of claim 1, further comprising: identifying a grasp point on the one of the plurality of objects, wherein shaping the end effector is based on identifying the grasp point.
  • 7. The method of claim 1 further comprising: in response to approaching the plurality of objects, re-shaping the end effector based on determining a second shape.
  • 8. The method of claim 1 further comprising: determining poses of the plurality of the objects in the scene, wherein determining the shapes is based on determining the poses.
  • 9. A system for picking an object from a plurality of objects with a robot having an end effector, the system comprising: one or more cameras for obtaining an image of a scene containing the plurality of objects;a processing system coupled to the one or more cameras, the processing system comprising one or more electronic circuits and memory storing instructions that, when executed by the processing system, cause the processing system to perform operations comprising: generating a segmentation map for the plurality of objects in the scene;determining shapes of the plurality of objects based on the segmentation map including obtaining, for each of one or more objects of the plurality of objects in the segmentation map, a respective 3D CAD model of the object and generating a respective shape of the object from the 3D CAD model of the object;adjusting the end effector including shaping the end effector according to a shape belonging to an object of the plurality of objects;approaching the plurality of objects; andpicking the object of the plurality of objects with the end effector adjusted according to the shape of the object.
  • 10. The system of claim 9, wherein the shaping of end effector includes moving a portion of the end effector from a first state to a second state, wherein the first state is an equilibrium state, and the second state is a non-equilibrium state.
  • 11. The system of claim 10, wherein in the second state, the portion of the end effector is configured to retract by an amount determined by one of the shapes.
  • 12. The system of claim 9, wherein shaping the end effector includes: predicting a shape of the end effector that will provide an optimal grasp of the one of the plurality of objects, wherein shaping the end effector is based on predicted shape.
  • 13. The system of claim 9, wherein the end effector is at least one of a pin array, a tube, or a suction cup.
  • 14. The system of claim 9, wherein the operations further comprise: identifying a grasp point on the one of the plurality of objects, wherein shaping the end effector is based on identifying the grasp point.
  • 15. The system of claim 9, wherein the operations further comprise: in response to approaching the plurality of objects, re-shaping the end effector based on determining a second shape.
  • 16. The system of claim 9, wherein the operations further comprise: determining poses of the plurality of the objects in the scene, wherein determining the shapes is based on determining the poses.
  • 17. Memory storing instructions that when executed by a computer system comprising one or more electronic circuits cause the computer system to perform operations using a robot having an end effector, the operations comprising: obtaining an image of a scene containing a plurality of objects;generating a segmentation map for the plurality of objects in the scene;determining shapes of the plurality of objects based on the segmentation map including obtaining, for each of one or more objects of the plurality of objects in the segmentation map, a respective 3D CAD model of the object and generating a respective shape of the object from the 3D CAD model of the object;adjusting the end effector including shaping the end effector according to a shape belonging to an object of the plurality of objects;approaching the plurality of objects; andpicking the object of the plurality of objects with the end effector adjusted according to the shape of the object.
US Referenced Citations (1307)
Number Name Date Kind
4124798 Thompson Nov 1978 A
4198646 Alexander et al. Apr 1980 A
4323925 Abell et al. Apr 1982 A
4460449 Montalbano Jul 1984 A
4467365 Murayama et al. Aug 1984 A
4652909 Glenn Mar 1987 A
4888645 Mitchell et al. Dec 1989 A
4899060 Lischke Feb 1990 A
4962425 Rea Oct 1990 A
5005083 Grage et al. Apr 1991 A
5070414 Tsutsumi Dec 1991 A
5144448 Hornbaker et al. Sep 1992 A
5157499 Oguma et al. Oct 1992 A
5325449 Burt et al. Jun 1994 A
5327125 Iwase et al. Jul 1994 A
5463464 Ladewski Oct 1995 A
5475422 Suzuki et al. Dec 1995 A
5488674 Burt et al. Jan 1996 A
5517236 Sergeant et al. May 1996 A
5629524 Stettner et al. May 1997 A
5638461 Fridge Jun 1997 A
5675377 Gibas et al. Oct 1997 A
5703961 Rogina et al. Dec 1997 A
5710875 Hsu et al. Jan 1998 A
5757425 Barton et al. May 1998 A
5793900 Nourbakhsh et al. Aug 1998 A
5801919 Griencewic Sep 1998 A
5808350 Jack et al. Sep 1998 A
5832312 Rieger et al. Nov 1998 A
5833507 Woodgate et al. Nov 1998 A
5880691 Fossum et al. Mar 1999 A
5911008 Niikura et al. Jun 1999 A
5933190 Dierickx et al. Aug 1999 A
5963664 Kumar et al. Oct 1999 A
5973844 Burger Oct 1999 A
6002743 Telymonde Dec 1999 A
6005607 Uomori et al. Dec 1999 A
6034690 Gallery et al. Mar 2000 A
6069351 Mack May 2000 A
6069365 Chow et al. May 2000 A
6084979 Kanade et al. Jul 2000 A
6095989 Hay et al. Aug 2000 A
6097394 Levoy et al. Aug 2000 A
6124974 Burger Sep 2000 A
6130786 Osawa et al. Oct 2000 A
6137100 Fossum et al. Oct 2000 A
6137535 Meyers Oct 2000 A
6141048 Meyers Oct 2000 A
6160909 Melen Dec 2000 A
6163414 Kikuchi et al. Dec 2000 A
6172352 Liu Jan 2001 B1
6175379 Uomori et al. Jan 2001 B1
6185529 Chen et al. Feb 2001 B1
6198852 Anandan et al. Mar 2001 B1
6205241 Melen Mar 2001 B1
6239909 Hayashi et al. May 2001 B1
6292713 Jouppi et al. Sep 2001 B1
6340994 Margulis et al. Jan 2002 B1
6358862 Ireland et al. Mar 2002 B1
6373518 Sogawa Apr 2002 B1
6419638 Hay et al. Jul 2002 B1
6443579 Myers Sep 2002 B1
6445815 Sato Sep 2002 B1
6476805 Shum et al. Nov 2002 B1
6477260 Shimomura Nov 2002 B1
6502097 Chan et al. Dec 2002 B1
6525302 Dowski, Jr. et al. Feb 2003 B2
6546153 Hoydal Apr 2003 B1
6552742 Seta Apr 2003 B1
6563537 Kawamura et al. May 2003 B1
6571466 Glenn et al. Jun 2003 B1
6603513 Berezin Aug 2003 B1
6611289 Yu et al. Aug 2003 B1
6627896 Hashimoto et al. Sep 2003 B1
6628330 Lin Sep 2003 B1
6628845 Stone et al. Sep 2003 B1
6635941 Suda Oct 2003 B2
6639596 Shum et al. Oct 2003 B1
6647142 Beardsley Nov 2003 B1
6657218 Noda Dec 2003 B2
6671399 Berestov Dec 2003 B1
6674892 Melen Jan 2004 B1
6750488 Driescher et al. Jun 2004 B1
6750904 Lambert Jun 2004 B1
6765617 Tangen et al. Jul 2004 B1
6771833 Edgar Aug 2004 B1
6774941 Boisvert et al. Aug 2004 B1
6788338 Dinev et al. Sep 2004 B1
6795253 Shinohara Sep 2004 B2
6801653 Wu et al. Oct 2004 B1
6819328 Moriwaki et al. Nov 2004 B1
6819358 Kagle et al. Nov 2004 B1
6833863 Clemens Dec 2004 B1
6879735 Portniaguine et al. Apr 2005 B1
6897454 Sasaki et al. May 2005 B2
6903770 Kobayashi et al. Jun 2005 B1
6909121 Nishikawa Jun 2005 B2
6917702 Beardsley Jul 2005 B2
6927922 George et al. Aug 2005 B2
6958862 Joseph Oct 2005 B1
6985175 Iwai et al. Jan 2006 B2
7013318 Rosengard et al. Mar 2006 B2
7015954 Foote et al. Mar 2006 B1
7085409 Sawhney et al. Aug 2006 B2
7161614 Yamashita et al. Jan 2007 B1
7199348 Olsen et al. Apr 2007 B2
7206449 Raskar et al. Apr 2007 B2
7215364 Wachtel et al. May 2007 B2
7235785 Hornback et al. Jun 2007 B2
7245761 Swaminathan et al. Jul 2007 B2
7262799 Suda Aug 2007 B2
7292735 Blake et al. Nov 2007 B2
7295697 Satoh Nov 2007 B1
7333651 Kim et al. Feb 2008 B1
7369165 Bosco et al. May 2008 B2
7391572 Jacobowitz et al. Jun 2008 B2
7408725 Sato Aug 2008 B2
7425984 Chen et al. Sep 2008 B2
7430312 Gu Sep 2008 B2
7471765 Jaffray et al. Dec 2008 B2
7496293 Shamir et al. Feb 2009 B2
7564019 Olsen et al. Jul 2009 B2
7599547 Sun et al. Oct 2009 B2
7606484 Richards et al. Oct 2009 B1
7620265 Wolff et al. Nov 2009 B1
7633511 Shum et al. Dec 2009 B2
7639435 Chiang Dec 2009 B2
7639838 Nims Dec 2009 B2
7646549 Zalevsky et al. Jan 2010 B2
7657090 Omatsu et al. Feb 2010 B2
7667824 Moran Feb 2010 B1
7675080 Boettiger Mar 2010 B2
7675681 Tomikawa et al. Mar 2010 B2
7706634 Schmitt et al. Apr 2010 B2
7723662 Levoy et al. May 2010 B2
7738013 Galambos et al. Jun 2010 B2
7741620 Doering et al. Jun 2010 B2
7782364 Smith Aug 2010 B2
7826153 Hong Nov 2010 B2
7840067 Shen et al. Nov 2010 B2
7912673 Hébert et al. Mar 2011 B2
7924321 Nayar et al. Apr 2011 B2
7956871 Fainstain et al. Jun 2011 B2
7965314 Miller et al. Jun 2011 B1
7973834 Yang Jul 2011 B2
7986018 Rennie Jul 2011 B2
7990447 Honda et al. Aug 2011 B2
8000498 Shih et al. Aug 2011 B2
8013904 Tan et al. Sep 2011 B2
8027531 Wilburn et al. Sep 2011 B2
8044994 Vetro et al. Oct 2011 B2
8055466 Bryll Nov 2011 B2
8077245 Adamo et al. Dec 2011 B2
8089515 Chebil et al. Jan 2012 B2
8098297 Crisan et al. Jan 2012 B2
8098304 Pinto et al. Jan 2012 B2
8106949 Tan et al. Jan 2012 B2
8111910 Tanaka Feb 2012 B2
8126279 Marcellin et al. Feb 2012 B2
8130120 Kawabata et al. Mar 2012 B2
8131097 Lelescu et al. Mar 2012 B2
8149323 Li et al. Apr 2012 B2
8164629 Zhang Apr 2012 B1
8169486 Corcoran et al. May 2012 B2
8180145 Wu et al. May 2012 B2
8189065 Georgiev et al. May 2012 B2
8189089 Georgiev et al. May 2012 B1
8194296 Compton et al. Jun 2012 B2
8212914 Chiu Jul 2012 B2
8213711 Tam Jul 2012 B2
8231158 Dollar et al. Jul 2012 B2
8231814 Duparre Jul 2012 B2
8242426 Ward et al. Aug 2012 B2
8244027 Takahashi Aug 2012 B2
8244058 Intwala et al. Aug 2012 B1
8254668 Mashitani et al. Aug 2012 B2
8279325 Pitts et al. Oct 2012 B2
8280194 Wong et al. Oct 2012 B2
8284240 Saint-Pierre et al. Oct 2012 B2
8289409 Chang Oct 2012 B2
8289440 Pitts et al. Oct 2012 B2
8290358 Georgiev Oct 2012 B1
8294099 Blackwell, Jr. Oct 2012 B2
8294754 Jung et al. Oct 2012 B2
8300085 Yang et al. Oct 2012 B2
8305456 McMahon Nov 2012 B1
8315476 Georgiev et al. Nov 2012 B1
8345144 Georgiev et al. Jan 2013 B1
8360574 Ishak et al. Jan 2013 B2
8400555 Georgiev et al. Mar 2013 B1
8406562 Bassi et al. Mar 2013 B2
8411146 Twede Apr 2013 B2
8416282 Lablans Apr 2013 B2
8446492 Nakano et al. May 2013 B2
8456517 Spektor et al. Jun 2013 B2
8493496 Freedman et al. Jul 2013 B2
8514291 Chang Aug 2013 B2
8514491 Duparre Aug 2013 B2
8541730 Inuiya Sep 2013 B2
8542933 Venkataraman et al. Sep 2013 B2
8553093 Wong et al. Oct 2013 B2
8558929 Tredwell Oct 2013 B2
8559705 Ng Oct 2013 B2
8559756 Georgiev et al. Oct 2013 B2
8565547 Strandemar Oct 2013 B2
8576302 Yoshikawa Nov 2013 B2
8577183 Robinson Nov 2013 B2
8581995 Lin et al. Nov 2013 B2
8619082 Ciurea et al. Dec 2013 B1
8648918 Kauker et al. Feb 2014 B2
8648919 Mantzel et al. Feb 2014 B2
8655052 Spooner et al. Feb 2014 B2
8682107 Yoon et al. Mar 2014 B2
8687087 Pertsel et al. Apr 2014 B2
8692893 McMahon Apr 2014 B2
8754941 Sarwari et al. Jun 2014 B1
8773536 Zhang Jul 2014 B1
8780113 Ciurea et al. Jul 2014 B1
8787691 Takahashi et al. Jul 2014 B2
8792710 Keselman Jul 2014 B2
8804255 Duparre Aug 2014 B2
8823813 Mantzel et al. Sep 2014 B2
8830375 Ludwig Sep 2014 B2
8831367 Venkataraman et al. Sep 2014 B2
8831377 Pitts et al. Sep 2014 B2
8836793 Kriesel et al. Sep 2014 B1
8837839 Huber Sep 2014 B1
8842201 Tajiri Sep 2014 B2
8854433 Rafii Oct 2014 B1
8854462 Herbin et al. Oct 2014 B2
8861089 Duparre Oct 2014 B2
8866912 Mullis Oct 2014 B2
8866920 Venkataraman et al. Oct 2014 B2
8866951 Keelan Oct 2014 B2
8878950 Lelescu et al. Nov 2014 B2
8885059 Venkataraman et al. Nov 2014 B1
8885922 Ito et al. Nov 2014 B2
8896594 Xiong et al. Nov 2014 B2
8896719 Venkataraman et al. Nov 2014 B1
8902321 Venkataraman et al. Dec 2014 B2
8928793 McMahon Jan 2015 B2
8977038 Tian et al. Mar 2015 B2
9001226 Ng et al. Apr 2015 B1
9019426 Han et al. Apr 2015 B2
9025894 Venkataraman et al. May 2015 B2
9025895 Venkataraman et al. May 2015 B2
9030528 Pesach et al. May 2015 B2
9031335 Venkataraman et al. May 2015 B2
9031342 Venkataraman May 2015 B2
9031343 Venkataraman May 2015 B2
9036928 Venkataraman May 2015 B2
9036931 Venkataraman et al. May 2015 B2
9041823 Venkataraman et al. May 2015 B2
9041824 Lelescu et al. May 2015 B2
9041829 Venkataraman et al. May 2015 B2
9042667 Venkataraman et al. May 2015 B2
9047684 Lelescu et al. Jun 2015 B2
9049367 Venkataraman et al. Jun 2015 B2
9055233 Venkataraman et al. Jun 2015 B2
9060120 Venkataraman et al. Jun 2015 B2
9060124 Venkataraman et al. Jun 2015 B2
9077893 Venkataraman et al. Jul 2015 B2
9094661 Venkataraman et al. Jul 2015 B2
9100586 McMahon et al. Aug 2015 B2
9100635 Duparre et al. Aug 2015 B2
9123117 Ciurea et al. Sep 2015 B2
9123118 Ciurea et al. Sep 2015 B2
9124815 Venkataraman et al. Sep 2015 B2
9124831 Mullis Sep 2015 B2
9124864 Mullis Sep 2015 B2
9128228 Duparre Sep 2015 B2
9129183 Venkataraman et al. Sep 2015 B2
9129377 Ciurea et al. Sep 2015 B2
9143711 McMahon Sep 2015 B2
9147254 Florian et al. Sep 2015 B2
9185276 Rodda et al. Nov 2015 B2
9188765 Venkataraman et al. Nov 2015 B2
9191580 Venkataraman et al. Nov 2015 B2
9197821 McMahon Nov 2015 B2
9210392 Nisenzon et al. Dec 2015 B2
9214013 Venkataraman et al. Dec 2015 B2
9235898 Venkataraman et al. Jan 2016 B2
9235900 Ciurea et al. Jan 2016 B2
9240049 Ciurea et al. Jan 2016 B2
9247117 Jacques Jan 2016 B2
9253380 Venkataraman et al. Feb 2016 B2
9253397 Lee et al. Feb 2016 B2
9256974 Hines Feb 2016 B1
9264592 Rodda et al. Feb 2016 B2
9264610 Duparre Feb 2016 B2
9361662 Lelescu et al. Jun 2016 B2
9374512 Venkataraman et al. Jun 2016 B2
9412206 McMahon et al. Aug 2016 B2
9413953 Maeda Aug 2016 B2
9426343 Rodda et al. Aug 2016 B2
9426361 Venkataraman et al. Aug 2016 B2
9438888 Venkataraman et al. Sep 2016 B2
9445003 Lelescu et al. Sep 2016 B1
9456134 Venkataraman et al. Sep 2016 B2
9456196 Kim et al. Sep 2016 B2
9462164 Venkataraman et al. Oct 2016 B2
9485496 Venkataraman et al. Nov 2016 B2
9497370 Venkataraman et al. Nov 2016 B2
9497429 Mullis et al. Nov 2016 B2
9516222 Duparre et al. Dec 2016 B2
9519972 Venkataraman et al. Dec 2016 B2
9521319 Rodda et al. Dec 2016 B2
9521416 McMahon et al. Dec 2016 B1
9536166 Venkataraman et al. Jan 2017 B2
9576369 Venkataraman et al. Feb 2017 B2
9578237 Duparre et al. Feb 2017 B2
9578259 Molina Feb 2017 B2
9602805 Venkataraman et al. Mar 2017 B2
9633442 Venkataraman et al. Apr 2017 B2
9635274 Lin et al. Apr 2017 B2
9638883 Duparre May 2017 B1
9661310 Deng et al. May 2017 B2
9706132 Nisenzon et al. Jul 2017 B2
9712759 Venkataraman et al. Jul 2017 B2
9729865 Kuo et al. Aug 2017 B1
9733486 Lelescu et al. Aug 2017 B2
9741118 Mullis Aug 2017 B2
9743051 Venkataraman et al. Aug 2017 B2
9749547 Venkataraman et al. Aug 2017 B2
9749568 McMahon Aug 2017 B2
9754422 McMahon et al. Sep 2017 B2
9766380 Duparre et al. Sep 2017 B2
9769365 Jannard Sep 2017 B1
9774789 Ciurea et al. Sep 2017 B2
9774831 Venkataraman et al. Sep 2017 B2
9787911 McMahon et al. Oct 2017 B2
9794476 Nayar et al. Oct 2017 B2
9800856 Venkataraman et al. Oct 2017 B2
9800859 Venkataraman et al. Oct 2017 B2
9807382 Duparre et al. Oct 2017 B2
9811753 Venkataraman et al. Nov 2017 B2
9813616 Lelescu et al. Nov 2017 B2
9813617 Venkataraman et al. Nov 2017 B2
9826212 Newton et al. Nov 2017 B2
9858673 Ciurea et al. Jan 2018 B2
9864921 Venkataraman et al. Jan 2018 B2
9866739 McMahon Jan 2018 B2
9875427 Medasani et al. Jan 2018 B2
9888194 Duparre Feb 2018 B2
9892522 Smirnov et al. Feb 2018 B2
9898856 Yang et al. Feb 2018 B2
9917998 Venkataraman et al. Mar 2018 B2
9924092 Rodda et al. Mar 2018 B2
9936148 McMahon Apr 2018 B2
9942474 Venkataraman et al. Apr 2018 B2
9955070 Lelescu et al. Apr 2018 B2
9986224 Mullis May 2018 B2
10009538 Venkataraman et al. Jun 2018 B2
10019816 Venkataraman et al. Jul 2018 B2
10027901 Venkataraman et al. Jul 2018 B2
10089740 Srikanth et al. Oct 2018 B2
10091405 Molina Oct 2018 B2
10119808 Venkataraman et al. Nov 2018 B2
10122993 Venkataraman et al. Nov 2018 B2
10127682 Mullis Nov 2018 B2
10142560 Venkataraman et al. Nov 2018 B2
10182216 Mullis et al. Jan 2019 B2
10218889 McMahan Feb 2019 B2
10225543 Mullis Mar 2019 B2
10250871 Ciurea et al. Apr 2019 B2
10261219 Duparre et al. Apr 2019 B2
10275543 Edsinger Apr 2019 B1
10275676 Venkataraman et al. Apr 2019 B2
10306120 Duparre May 2019 B2
10311649 McMohan et al. Jun 2019 B2
10334241 Duparre et al. Jun 2019 B2
10339706 Black Jul 2019 B2
10366472 Lelescu et al. Jul 2019 B2
10375302 Nayar et al. Aug 2019 B2
10375319 Venkataraman et al. Aug 2019 B2
10380752 Ciurea et al. Aug 2019 B2
10390005 Nisenzon et al. Aug 2019 B2
10412314 McMahon et al. Sep 2019 B2
10430682 Venkataraman et al. Oct 2019 B2
10455168 McMahon Oct 2019 B2
10455218 Venkataraman et al. Oct 2019 B2
10462362 Lelescu et al. Oct 2019 B2
10482618 Jain et al. Nov 2019 B2
10540806 Yang et al. Jan 2020 B2
10542208 Lelescu et al. Jan 2020 B2
10547772 Molina Jan 2020 B2
10556338 Marchese et al. Feb 2020 B1
10560684 Mullis Feb 2020 B2
10574905 Srikanth et al. Feb 2020 B2
10638099 Mullis et al. Apr 2020 B2
10643383 Venkataraman May 2020 B2
10661446 Hurwit May 2020 B2
10674138 Venkataraman et al. Jun 2020 B2
10694114 Venkataraman et al. Jun 2020 B2
10708492 Venkataraman et al. Jul 2020 B2
10735635 Duparre Aug 2020 B2
10742861 McMahon Aug 2020 B2
10767981 Venkataraman et al. Sep 2020 B2
10805589 Venkataraman et al. Oct 2020 B2
10818026 Jain et al. Oct 2020 B2
10839485 Lelescu et al. Nov 2020 B2
10864361 Tennican Dec 2020 B2
10909707 Ciurea et al. Feb 2021 B2
10944961 Ciurea et al. Mar 2021 B2
10958892 Mullis Mar 2021 B2
10984276 Venkataraman et al. Apr 2021 B2
11022725 Duparre et al. Jun 2021 B2
11024046 Venkataraman Jun 2021 B2
11475589 Tang Oct 2022 B2
11654564 Fan May 2023 B2
20010005225 Clark et al. Jun 2001 A1
20010019621 Hanna et al. Sep 2001 A1
20010028038 Hamaguchi et al. Oct 2001 A1
20010038387 Tomooka et al. Nov 2001 A1
20020003669 Kedar et al. Jan 2002 A1
20020012056 Trevino et al. Jan 2002 A1
20020015536 Warren et al. Feb 2002 A1
20020027608 Johnson et al. Mar 2002 A1
20020028014 Ono Mar 2002 A1
20020039438 Mori et al. Apr 2002 A1
20020057845 Fossum et al. May 2002 A1
20020061131 Sawhney et al. May 2002 A1
20020063807 Margulis May 2002 A1
20020075450 Aratani et al. Jun 2002 A1
20020087403 Meyers et al. Jul 2002 A1
20020089596 Yasuo Jul 2002 A1
20020094027 Sato et al. Jul 2002 A1
20020101528 Lee et al. Aug 2002 A1
20020113867 Takigawa et al. Aug 2002 A1
20020113888 Sonoda et al. Aug 2002 A1
20020118113 Oku et al. Aug 2002 A1
20020120634 Min et al. Aug 2002 A1
20020122113 Foote Sep 2002 A1
20020163054 Suda Nov 2002 A1
20020167537 Trajkovic Nov 2002 A1
20020171666 Endo et al. Nov 2002 A1
20020177054 Saitoh et al. Nov 2002 A1
20020190991 Efran et al. Dec 2002 A1
20020195548 Dowski, Jr. et al. Dec 2002 A1
20030025227 Daniell Feb 2003 A1
20030026474 Yano Feb 2003 A1
20030086079 Barth et al. May 2003 A1
20030124763 Fan et al. Jul 2003 A1
20030140347 Varsa Jul 2003 A1
20030156189 Utsumi et al. Aug 2003 A1
20030179418 Wengender et al. Sep 2003 A1
20030188659 Merry et al. Oct 2003 A1
20030190072 Adkins et al. Oct 2003 A1
20030198377 Ng Oct 2003 A1
20030211405 Venkataraman Nov 2003 A1
20030231179 Suzuki Dec 2003 A1
20040003409 Berstis Jan 2004 A1
20040008271 Hagimori et al. Jan 2004 A1
20040012689 Tinnerino et al. Jan 2004 A1
20040027358 Nakao Feb 2004 A1
20040047274 Amanai Mar 2004 A1
20040050104 Ghosh et al. Mar 2004 A1
20040056966 Schechner et al. Mar 2004 A1
20040061787 Liu et al. Apr 2004 A1
20040066454 Otani et al. Apr 2004 A1
20040071367 Irani et al. Apr 2004 A1
20040075654 Hsiao et al. Apr 2004 A1
20040096119 Williams et al. May 2004 A1
20040100570 Shizukuishi May 2004 A1
20040105021 Hu Jun 2004 A1
20040114807 Lelescu et al. Jun 2004 A1
20040141659 Zhang Jul 2004 A1
20040151401 Sawhney et al. Aug 2004 A1
20040165090 Ning Aug 2004 A1
20040169617 Yelton et al. Sep 2004 A1
20040170340 Tipping et al. Sep 2004 A1
20040174439 Upton Sep 2004 A1
20040179008 Gordon et al. Sep 2004 A1
20040179834 Szajewski et al. Sep 2004 A1
20040196379 Chen et al. Oct 2004 A1
20040207600 Zhang et al. Oct 2004 A1
20040207836 Chhibber et al. Oct 2004 A1
20040212734 Macinnis et al. Oct 2004 A1
20040213449 Safaee-Rad et al. Oct 2004 A1
20040218809 Blake et al. Nov 2004 A1
20040234873 Venkataraman Nov 2004 A1
20040239782 Equitz et al. Dec 2004 A1
20040239885 Jaynes et al. Dec 2004 A1
20040240052 Minefuji et al. Dec 2004 A1
20040251509 Choi Dec 2004 A1
20040264806 Herley Dec 2004 A1
20050006477 Patel Jan 2005 A1
20050007461 Chou et al. Jan 2005 A1
20050009313 Suzuki et al. Jan 2005 A1
20050010621 Pinto et al. Jan 2005 A1
20050012035 Miller Jan 2005 A1
20050036778 DeMonte Feb 2005 A1
20050047678 Jones et al. Mar 2005 A1
20050048690 Yamamoto Mar 2005 A1
20050068436 Fraenkel et al. Mar 2005 A1
20050083531 Millerd et al. Apr 2005 A1
20050084179 Hanna et al. Apr 2005 A1
20050111705 Waupotitsch et al. May 2005 A1
20050117015 Cutler Jun 2005 A1
20050128509 Tokkonen et al. Jun 2005 A1
20050128595 Shimizu Jun 2005 A1
20050132098 Sonoda et al. Jun 2005 A1
20050134698 Schroeder et al. Jun 2005 A1
20050134699 Nagashima Jun 2005 A1
20050134712 Gruhlke et al. Jun 2005 A1
20050147277 Higaki et al. Jul 2005 A1
20050151759 Gonzalez-Banos et al. Jul 2005 A1
20050168924 Wu et al. Aug 2005 A1
20050175257 Kuroki Aug 2005 A1
20050185711 Pfister et al. Aug 2005 A1
20050203380 Sauer et al. Sep 2005 A1
20050205785 Hornback et al. Sep 2005 A1
20050219264 Shum et al. Oct 2005 A1
20050219363 Kohler et al. Oct 2005 A1
20050224843 Boemler Oct 2005 A1
20050225654 Feldman et al. Oct 2005 A1
20050265633 Piacentino et al. Dec 2005 A1
20050275946 Choo et al. Dec 2005 A1
20050286612 Takanashi Dec 2005 A1
20050286756 Hong et al. Dec 2005 A1
20060002635 Nestares et al. Jan 2006 A1
20060007331 Izumi et al. Jan 2006 A1
20060013318 Webb et al. Jan 2006 A1
20060018509 Miyoshi Jan 2006 A1
20060023197 Joel Feb 2006 A1
20060023314 Boettiger et al. Feb 2006 A1
20060028476 Sobel et al. Feb 2006 A1
20060029270 Berestov et al. Feb 2006 A1
20060029271 Miyoshi et al. Feb 2006 A1
20060033005 Jerdev et al. Feb 2006 A1
20060034003 Zalevsky Feb 2006 A1
20060034531 Poon et al. Feb 2006 A1
20060035415 Wood Feb 2006 A1
20060038891 Okutomi et al. Feb 2006 A1
20060039611 Rother et al. Feb 2006 A1
20060046204 Ono et al. Mar 2006 A1
20060049930 Zruya et al. Mar 2006 A1
20060050980 Kohashi et al. Mar 2006 A1
20060054780 Garrood et al. Mar 2006 A1
20060054782 Olsen et al. Mar 2006 A1
20060055811 Bernard et al. Mar 2006 A1
20060069478 Iwama Mar 2006 A1
20060072029 Miyatake et al. Apr 2006 A1
20060087747 Ohzawa et al. Apr 2006 A1
20060098888 Morishita May 2006 A1
20060103754 Wenstrand et al. May 2006 A1
20060119597 Oshino Jun 2006 A1
20060125936 Gruhike et al. Jun 2006 A1
20060138322 Costello et al. Jun 2006 A1
20060139475 Esch et al. Jun 2006 A1
20060152803 Provitola Jul 2006 A1
20060153290 Watabe et al. Jul 2006 A1
20060157640 Perlman et al. Jul 2006 A1
20060159369 Young Jul 2006 A1
20060176566 Boettiger et al. Aug 2006 A1
20060187322 Janson, Jr. et al. Aug 2006 A1
20060187338 May et al. Aug 2006 A1
20060197937 Bamji et al. Sep 2006 A1
20060203100 Ajito et al. Sep 2006 A1
20060203113 Wada et al. Sep 2006 A1
20060210146 Gu Sep 2006 A1
20060210186 Berkner Sep 2006 A1
20060214085 Olsen et al. Sep 2006 A1
20060215924 Steinberg et al. Sep 2006 A1
20060221250 Rossbach et al. Oct 2006 A1
20060239549 Kelly et al. Oct 2006 A1
20060243889 Farnworth et al. Nov 2006 A1
20060251410 Trutna Nov 2006 A1
20060274174 Tewinkle Dec 2006 A1
20060278948 Yamaguchi et al. Dec 2006 A1
20060279648 Senba et al. Dec 2006 A1
20060289772 Johnson et al. Dec 2006 A1
20070002159 Olsen et al. Jan 2007 A1
20070008575 Yu et al. Jan 2007 A1
20070009150 Suwa et al. Jan 2007 A1
20070024614 Tam et al. Feb 2007 A1
20070030356 Yea et al. Feb 2007 A1
20070035707 Margulis Feb 2007 A1
20070036427 Nakamura et al. Feb 2007 A1
20070040828 Zalevsky et al. Feb 2007 A1
20070040922 McKee et al. Feb 2007 A1
20070041391 Lin et al. Feb 2007 A1
20070052825 Cho Mar 2007 A1
20070083114 Yang et al. Apr 2007 A1
20070085917 Kobayashi Apr 2007 A1
20070092245 Bazakos et al. Apr 2007 A1
20070102622 Olsen et al. May 2007 A1
20070116447 Ye May 2007 A1
20070126898 Feldman et al. Jun 2007 A1
20070127831 Venkataraman Jun 2007 A1
20070139333 Sato et al. Jun 2007 A1
20070140685 Wu Jun 2007 A1
20070146503 Shiraki Jun 2007 A1
20070146511 Kinoshita et al. Jun 2007 A1
20070153335 Hosaka Jul 2007 A1
20070158427 Zhu et al. Jul 2007 A1
20070159541 Sparks et al. Jul 2007 A1
20070160310 Tanida et al. Jul 2007 A1
20070165931 Higaki Jul 2007 A1
20070166447 U r-Rehman et al. Jul 2007 A1
20070171290 Kroger Jul 2007 A1
20070177004 Kolehmainen et al. Aug 2007 A1
20070182843 Shimamura et al. Aug 2007 A1
20070201859 Sarrat Aug 2007 A1
20070206241 Smith et al. Sep 2007 A1
20070211164 Olsen et al. Sep 2007 A1
20070216765 Wong et al. Sep 2007 A1
20070225600 Weibrecht et al. Sep 2007 A1
20070228256 Mentzer et al. Oct 2007 A1
20070236595 Pan et al. Oct 2007 A1
20070242141 Ciurea Oct 2007 A1
20070247517 Zhang et al. Oct 2007 A1
20070257184 Olsen et al. Nov 2007 A1
20070258006 Olsen et al. Nov 2007 A1
20070258706 Raskar et al. Nov 2007 A1
20070263113 Baek et al. Nov 2007 A1
20070263114 Gurevich et al. Nov 2007 A1
20070268374 Robinson Nov 2007 A1
20070291995 Rivera Dec 2007 A1
20070296721 Chang et al. Dec 2007 A1
20070296832 Ota et al. Dec 2007 A1
20070296835 Olsen et al. Dec 2007 A1
20070296846 Barman et al. Dec 2007 A1
20070296847 Chang et al. Dec 2007 A1
20070297696 Hamza et al. Dec 2007 A1
20080006859 Mionetto Jan 2008 A1
20080019611 Larkin et al. Jan 2008 A1
20080024683 Damera-Venkata et al. Jan 2008 A1
20080025649 Liu et al. Jan 2008 A1
20080030592 Border et al. Feb 2008 A1
20080030597 Olsen et al. Feb 2008 A1
20080043095 Vetro et al. Feb 2008 A1
20080043096 Vetro et al. Feb 2008 A1
20080044170 Yap et al. Feb 2008 A1
20080054518 Ra et al. Mar 2008 A1
20080056302 Erdal et al. Mar 2008 A1
20080062164 Bassi et al. Mar 2008 A1
20080079805 Takagi et al. Apr 2008 A1
20080080028 Bakin et al. Apr 2008 A1
20080084486 Enge et al. Apr 2008 A1
20080088793 Sverdrup et al. Apr 2008 A1
20080095523 Schilling-Benz et al. Apr 2008 A1
20080099804 Venezia et al. May 2008 A1
20080106620 Sawachi May 2008 A1
20080112059 Choi et al. May 2008 A1
20080112635 Kondo et al. May 2008 A1
20080117289 Schowengerdt et al. May 2008 A1
20080118241 TeKolste et al. May 2008 A1
20080131019 Ng Jun 2008 A1
20080131107 Ueno Jun 2008 A1
20080151097 Chen et al. Jun 2008 A1
20080152213 Medioni et al. Jun 2008 A1
20080152215 Horie et al. Jun 2008 A1
20080152296 Oh et al. Jun 2008 A1
20080156991 Hu et al. Jul 2008 A1
20080158259 Kempf et al. Jul 2008 A1
20080158375 Kakkori et al. Jul 2008 A1
20080158698 Chang et al. Jul 2008 A1
20080165257 Boettiger Jul 2008 A1
20080174670 Olsen et al. Jul 2008 A1
20080187305 Raskar et al. Aug 2008 A1
20080193026 Horie et al. Aug 2008 A1
20080208506 Kuwata Aug 2008 A1
20080211737 Kim et al. Sep 2008 A1
20080218610 Chapman et al. Sep 2008 A1
20080218611 Parulski et al. Sep 2008 A1
20080218612 Border et al. Sep 2008 A1
20080218613 Janson et al. Sep 2008 A1
20080219654 Border et al. Sep 2008 A1
20080239116 Smith Oct 2008 A1
20080240598 Hasegawa Oct 2008 A1
20080246866 Kinoshita et al. Oct 2008 A1
20080247638 Tanida et al. Oct 2008 A1
20080247653 Moussavi et al. Oct 2008 A1
20080272416 Yun Nov 2008 A1
20080273751 Yuan et al. Nov 2008 A1
20080278591 Barna et al. Nov 2008 A1
20080278610 Boettiger Nov 2008 A1
20080284880 Numata Nov 2008 A1
20080291295 Kato et al. Nov 2008 A1
20080298674 Baker et al. Dec 2008 A1
20080310501 Ward et al. Dec 2008 A1
20090027543 Kanehiro Jan 2009 A1
20090050946 Duparre et al. Feb 2009 A1
20090052743 Techmer Feb 2009 A1
20090060281 Tanida et al. Mar 2009 A1
20090066693 Carson Mar 2009 A1
20090079862 Subbotin Mar 2009 A1
20090086074 Li et al. Apr 2009 A1
20090091645 Trimeche et al. Apr 2009 A1
20090091806 Inuiya Apr 2009 A1
20090092363 Daum et al. Apr 2009 A1
20090096050 Park Apr 2009 A1
20090102956 Georgiev Apr 2009 A1
20090103792 Rahn et al. Apr 2009 A1
20090109306 Shan et al. Apr 2009 A1
20090127430 Hirasawa et al. May 2009 A1
20090128644 Camp, Jr. et al. May 2009 A1
20090128833 Yahav May 2009 A1
20090129667 Ho et al. May 2009 A1
20090140131 Utagawa Jun 2009 A1
20090141933 Wagg Jun 2009 A1
20090147919 Goto et al. Jun 2009 A1
20090152664 Klem et al. Jun 2009 A1
20090167922 Perlman et al. Jul 2009 A1
20090167923 Safaee-Rad et al. Jul 2009 A1
20090167934 Gupta Jul 2009 A1
20090175349 Ye et al. Jul 2009 A1
20090179142 Duparre et al. Jul 2009 A1
20090180021 Kikuchi et al. Jul 2009 A1
20090200622 Tai et al. Aug 2009 A1
20090201371 Matsuda et al. Aug 2009 A1
20090207235 Francini et al. Aug 2009 A1
20090219435 Yuan Sep 2009 A1
20090225203 Tanida et al. Sep 2009 A1
20090237520 Kaneko et al. Sep 2009 A1
20090245573 Saptharishi et al. Oct 2009 A1
20090245637 Barman et al. Oct 2009 A1
20090256947 Ciurea et al. Oct 2009 A1
20090263017 Tanbakuchi Oct 2009 A1
20090268192 Koenck et al. Oct 2009 A1
20090268970 Babacan et al. Oct 2009 A1
20090268983 Stone et al. Oct 2009 A1
20090273663 Yoshida Nov 2009 A1
20090274387 Jin Nov 2009 A1
20090279800 Uetani et al. Nov 2009 A1
20090284651 Srinivasan Nov 2009 A1
20090290811 Imai Nov 2009 A1
20090297056 Lelescu et al. Dec 2009 A1
20090302205 Olsen et al. Dec 2009 A9
20090317061 Jung et al. Dec 2009 A1
20090322876 Lee et al. Dec 2009 A1
20090323195 Hembree et al. Dec 2009 A1
20090323206 Oliver et al. Dec 2009 A1
20090324118 Maslov et al. Dec 2009 A1
20100002126 Wenstrand et al. Jan 2010 A1
20100002313 Duparre et al. Jan 2010 A1
20100002314 Duparre Jan 2010 A1
20100007714 Kim et al. Jan 2010 A1
20100013927 Nixon Jan 2010 A1
20100044815 Chang Feb 2010 A1
20100045809 Packard Feb 2010 A1
20100053342 Hwang et al. Mar 2010 A1
20100053347 Agarwala et al. Mar 2010 A1
20100053415 Yun Mar 2010 A1
20100053600 Tanida et al. Mar 2010 A1
20100060746 Olsen et al. Mar 2010 A9
20100073463 Momonoi et al. Mar 2010 A1
20100074532 Gordon et al. Mar 2010 A1
20100085351 Deb et al. Apr 2010 A1
20100085425 Tan Apr 2010 A1
20100086227 Sun et al. Apr 2010 A1
20100091389 Henriksen et al. Apr 2010 A1
20100097444 Lablans Apr 2010 A1
20100097491 Farina et al. Apr 2010 A1
20100103175 Okutomi et al. Apr 2010 A1
20100103259 Tanida et al. Apr 2010 A1
20100103308 Butterfield et al. Apr 2010 A1
20100111444 Coffman May 2010 A1
20100118127 Nam et al. May 2010 A1
20100128145 Pitts et al. May 2010 A1
20100129048 Pitts et al. May 2010 A1
20100133230 Henriksen et al. Jun 2010 A1
20100133418 Sargent et al. Jun 2010 A1
20100141802 Knight et al. Jun 2010 A1
20100142828 Chang et al. Jun 2010 A1
20100142839 Lakus-Becker Jun 2010 A1
20100157073 Kondo et al. Jun 2010 A1
20100165152 Lim Jul 2010 A1
20100166410 Chang Jul 2010 A1
20100171866 Brady et al. Jul 2010 A1
20100177411 Hegde et al. Jul 2010 A1
20100182406 Benitez Jul 2010 A1
20100194860 Mentz et al. Aug 2010 A1
20100194901 van Hoorebeke et al. Aug 2010 A1
20100195716 Klein Gunnewiek et al. Aug 2010 A1
20100201809 Oyama et al. Aug 2010 A1
20100201834 Maruyama et al. Aug 2010 A1
20100202054 Niederer Aug 2010 A1
20100202683 Robinson Aug 2010 A1
20100208100 Olsen et al. Aug 2010 A9
20100214423 Ogawa Aug 2010 A1
20100220212 Perlman et al. Sep 2010 A1
20100223237 Mishra et al. Sep 2010 A1
20100225740 Jung et al. Sep 2010 A1
20100231285 Boomer et al. Sep 2010 A1
20100238327 Griffith et al. Sep 2010 A1
20100244165 Lake et al. Sep 2010 A1
20100245684 Xiao et al. Sep 2010 A1
20100254627 Panahpour Tehrani et al. Oct 2010 A1
20100259610 Petersen Oct 2010 A1
20100265346 Iizuka Oct 2010 A1
20100265381 Yamamoto et al. Oct 2010 A1
20100265385 Knight et al. Oct 2010 A1
20100277629 Tanaka Nov 2010 A1
20100281070 Chan et al. Nov 2010 A1
20100289941 Ito et al. Nov 2010 A1
20100290483 Park et al. Nov 2010 A1
20100302423 Adams, Jr. et al. Dec 2010 A1
20100309292 Ho et al. Dec 2010 A1
20100309368 Choi et al. Dec 2010 A1
20100321595 Chiu Dec 2010 A1
20100321640 Yeh et al. Dec 2010 A1
20100329556 Mitarai et al. Dec 2010 A1
20100329582 Albu et al. Dec 2010 A1
20110001037 Tewinkle Jan 2011 A1
20110013006 Uzenbajakava et al. Jan 2011 A1
20110018973 Takayama Jan 2011 A1
20110019048 Raynor et al. Jan 2011 A1
20110019243 Constant, Jr. et al. Jan 2011 A1
20110031381 Tay et al. Feb 2011 A1
20110032341 Ignatov et al. Feb 2011 A1
20110032370 Ludwig Feb 2011 A1
20110033129 Robinson Feb 2011 A1
20110038536 Gong Feb 2011 A1
20110043604 Peleg et al. Feb 2011 A1
20110043613 Rohaly et al. Feb 2011 A1
20110043661 Podoleanu Feb 2011 A1
20110043665 Ogasahara Feb 2011 A1
20110043668 Mckinnon et al. Feb 2011 A1
20110044502 Liu et al. Feb 2011 A1
20110051255 Lee et al. Mar 2011 A1
20110055729 Mason et al. Mar 2011 A1
20110064327 Dagher et al. Mar 2011 A1
20110069189 Venkataraman et al. Mar 2011 A1
20110080487 Venkataraman et al. Apr 2011 A1
20110084893 Lee et al. Apr 2011 A1
20110085028 Samadani et al. Apr 2011 A1
20110090217 Mashitani et al. Apr 2011 A1
20110102553 Corcoran et al. May 2011 A1
20110108708 Olsen et al. May 2011 A1
20110115886 Nguyen et al. May 2011 A1
20110121421 Charbon et al. May 2011 A1
20110122308 Duparre May 2011 A1
20110128393 Tavi et al. Jun 2011 A1
20110128412 Milnes et al. Jun 2011 A1
20110129165 Lim et al. Jun 2011 A1
20110141309 Nagashima et al. Jun 2011 A1
20110142138 Tian et al. Jun 2011 A1
20110149408 Hahgholt et al. Jun 2011 A1
20110149409 Haugholt et al. Jun 2011 A1
20110150321 Cheong et al. Jun 2011 A1
20110153248 Gu et al. Jun 2011 A1
20110157321 Nakajima et al. Jun 2011 A1
20110157451 Chang Jun 2011 A1
20110169994 DiFrancesco et al. Jul 2011 A1
20110176020 Chang Jul 2011 A1
20110181797 Galstian et al. Jul 2011 A1
20110193944 Lian et al. Aug 2011 A1
20110199458 Hayasaka et al. Aug 2011 A1
20110200319 Kravitz et al. Aug 2011 A1
20110206291 Kashani et al. Aug 2011 A1
20110207074 Hall-Holt et al. Aug 2011 A1
20110211068 Yokota Sep 2011 A1
20110211077 Nayar et al. Sep 2011 A1
20110211824 Georgiev et al. Sep 2011 A1
20110221599 Högasten Sep 2011 A1
20110221658 Haddick et al. Sep 2011 A1
20110221939 Jerdev Sep 2011 A1
20110221950 Oostra et al. Sep 2011 A1
20110222757 Yeatman, Jr. et al. Sep 2011 A1
20110228142 Brueckner et al. Sep 2011 A1
20110228144 Tian et al. Sep 2011 A1
20110234825 Liu et al. Sep 2011 A1
20110234841 Akeley et al. Sep 2011 A1
20110241234 Duparre Oct 2011 A1
20110242342 Goma et al. Oct 2011 A1
20110242355 Goma et al. Oct 2011 A1
20110242356 Aleksic et al. Oct 2011 A1
20110243428 Das Gupta et al. Oct 2011 A1
20110255592 Sung et al. Oct 2011 A1
20110255745 Hodder et al. Oct 2011 A1
20110255786 Hunter et al. Oct 2011 A1
20110261993 Weiming et al. Oct 2011 A1
20110267264 Mccarthy et al. Nov 2011 A1
20110267348 Lin et al. Nov 2011 A1
20110273531 Ito et al. Nov 2011 A1
20110274175 Sumitomo Nov 2011 A1
20110274366 Tardif Nov 2011 A1
20110279705 Kuang et al. Nov 2011 A1
20110279721 McMahon Nov 2011 A1
20110285701 Chen et al. Nov 2011 A1
20110285866 Bhrugumalla et al. Nov 2011 A1
20110285910 Bamji et al. Nov 2011 A1
20110292216 Fergus et al. Dec 2011 A1
20110298898 Jung et al. Dec 2011 A1
20110298917 Yanagita Dec 2011 A1
20110300929 Tardif et al. Dec 2011 A1
20110310980 Mathew Dec 2011 A1
20110316968 Taguchi et al. Dec 2011 A1
20110317766 Lim et al. Dec 2011 A1
20120012748 Pain Jan 2012 A1
20120013748 Stanwood et al. Jan 2012 A1
20120014456 Martinez Bauza et al. Jan 2012 A1
20120019530 Baker Jan 2012 A1
20120019700 Gaber Jan 2012 A1
20120023456 Sun et al. Jan 2012 A1
20120026297 Sato Feb 2012 A1
20120026342 Yu et al. Feb 2012 A1
20120026366 Golan et al. Feb 2012 A1
20120026451 Nystrom Feb 2012 A1
20120026478 Chen et al. Feb 2012 A1
20120038745 Yu et al. Feb 2012 A1
20120039525 Tian et al. Feb 2012 A1
20120044249 Mashitani et al. Feb 2012 A1
20120044372 Côté et al. Feb 2012 A1
20120051624 Ando Mar 2012 A1
20120056982 Katz et al. Mar 2012 A1
20120057040 Park et al. Mar 2012 A1
20120062697 Treado et al. Mar 2012 A1
20120062702 Jiang et al. Mar 2012 A1
20120062756 Tian et al. Mar 2012 A1
20120069235 Imai Mar 2012 A1
20120081519 Goma et al. Apr 2012 A1
20120086803 Malzbender et al. Apr 2012 A1
20120105590 Fukumoto et al. May 2012 A1
20120105654 Kwatra et al. May 2012 A1
20120105691 Waqas et al. May 2012 A1
20120113232 Joblove May 2012 A1
20120113318 Galstian et al. May 2012 A1
20120113413 Miahczylowicz-Wolski et al. May 2012 A1
20120114224 Xu et al. May 2012 A1
20120114260 Takahashi et al. May 2012 A1
20120120264 Lee et al. May 2012 A1
20120127275 Von Zitzewitz et al. May 2012 A1
20120127284 Bar-Zeev et al. May 2012 A1
20120147139 Li et al. Jun 2012 A1
20120147205 Lelescu et al. Jun 2012 A1
20120153153 Chang et al. Jun 2012 A1
20120154551 Inoue Jun 2012 A1
20120155830 Sasaki et al. Jun 2012 A1
20120162374 Markas et al. Jun 2012 A1
20120163672 McKinnon Jun 2012 A1
20120163725 Fukuhara Jun 2012 A1
20120169433 Mullins et al. Jul 2012 A1
20120170134 Bolis et al. Jul 2012 A1
20120176479 Mayhew et al. Jul 2012 A1
20120176481 Lukk et al. Jul 2012 A1
20120188235 Wu et al. Jul 2012 A1
20120188341 Klein Gunnewiek et al. Jul 2012 A1
20120188389 Lin et al. Jul 2012 A1
20120188420 Black et al. Jul 2012 A1
20120188634 Kubala et al. Jul 2012 A1
20120198677 Duparre Aug 2012 A1
20120200669 Lai et al. Aug 2012 A1
20120200726 Bugnariu Aug 2012 A1
20120200734 Tang Aug 2012 A1
20120206582 DiCarlo et al. Aug 2012 A1
20120218455 Imai et al. Aug 2012 A1
20120219236 Ali et al. Aug 2012 A1
20120224083 Jovanovski et al. Sep 2012 A1
20120229602 Chen et al. Sep 2012 A1
20120229628 Ishiyama et al. Sep 2012 A1
20120237114 Park et al. Sep 2012 A1
20120249550 Akeley et al. Oct 2012 A1
20120249750 Izzat et al. Oct 2012 A1
20120249836 Ali et al. Oct 2012 A1
20120249853 Krolczyk et al. Oct 2012 A1
20120250990 Bocirnea Oct 2012 A1
20120262601 Choi et al. Oct 2012 A1
20120262607 Shimura et al. Oct 2012 A1
20120268574 Gidon et al. Oct 2012 A1
20120274626 Hsieh Nov 2012 A1
20120287291 McMahon Nov 2012 A1
20120290257 Hodge et al. Nov 2012 A1
20120293489 Chen et al. Nov 2012 A1
20120293624 Chen et al. Nov 2012 A1
20120293695 Tanaka Nov 2012 A1
20120307084 Mantzel Dec 2012 A1
20120307093 Miyoshi Dec 2012 A1
20120307099 Yahata Dec 2012 A1
20120314033 Lee et al. Dec 2012 A1
20120314937 Kim et al. Dec 2012 A1
20120327222 Ng et al. Dec 2012 A1
20130002828 Ding et al. Jan 2013 A1
20130002953 Noguchi et al. Jan 2013 A1
20130003184 Duparre Jan 2013 A1
20130010073 Do et al. Jan 2013 A1
20130016245 Yuba Jan 2013 A1
20130016885 Tsujimoto Jan 2013 A1
20130022111 Chen et al. Jan 2013 A1
20130027580 Olsen et al. Jan 2013 A1
20130033579 Wajs Feb 2013 A1
20130033585 Li et al. Feb 2013 A1
20130038696 Ding et al. Feb 2013 A1
20130047396 Au et al. Feb 2013 A1
20130050504 Safaee-Rad et al. Feb 2013 A1
20130050526 Keelan Feb 2013 A1
20130057710 McMahon Mar 2013 A1
20130070060 Chatterjee et al. Mar 2013 A1
20130076967 Brunner et al. Mar 2013 A1
20130077859 Stauder et al. Mar 2013 A1
20130077880 Venkataraman et al. Mar 2013 A1
20130077882 Venkataraman et al. Mar 2013 A1
20130083172 Baba Apr 2013 A1
20130088489 Schmeitz et al. Apr 2013 A1
20130088637 Duparre Apr 2013 A1
20130093842 Yahata Apr 2013 A1
20130100254 Morioka et al. Apr 2013 A1
20130107061 Kumar et al. May 2013 A1
20130113888 Koguchi May 2013 A1
20130113899 Morohoshi et al. May 2013 A1
20130113939 Strandemar May 2013 A1
20130120536 Song et al. May 2013 A1
20130120605 Georgiev et al. May 2013 A1
20130121559 Hu et al. May 2013 A1
20130127988 Wang et al. May 2013 A1
20130128049 Schofield et al. May 2013 A1
20130128068 Georgiev et al. May 2013 A1
20130128069 Georgiev et al. May 2013 A1
20130128087 Georgiev et al. May 2013 A1
20130128121 Agarwala et al. May 2013 A1
20130135315 Bares et al. May 2013 A1
20130135448 Nagumo et al. May 2013 A1
20130147979 McMahon et al. Jun 2013 A1
20130155050 Rastogi et al. Jun 2013 A1
20130162641 Zhang et al. Jun 2013 A1
20130169754 Aronsson et al. Jul 2013 A1
20130176394 Tian et al. Jul 2013 A1
20130208138 Li et al. Aug 2013 A1
20130215108 McMahon et al. Aug 2013 A1
20130215231 Hiramoto et al. Aug 2013 A1
20130216144 Robinson et al. Aug 2013 A1
20130222556 Shimada Aug 2013 A1
20130222656 Kaneko Aug 2013 A1
20130223759 Nishiyama Aug 2013 A1
20130229540 Farina et al. Sep 2013 A1
20130230237 Schlosser et al. Sep 2013 A1
20130250123 Zhang et al. Sep 2013 A1
20130250150 Malone et al. Sep 2013 A1
20130258067 Zhang et al. Oct 2013 A1
20130259317 Gaddy Oct 2013 A1
20130265459 Duparre et al. Oct 2013 A1
20130274596 Azizian et al. Oct 2013 A1
20130274923 By Oct 2013 A1
20130278631 Border et al. Oct 2013 A1
20130286236 Mankowski Oct 2013 A1
20130293760 Nisenzon et al. Nov 2013 A1
20130308197 Duparre Nov 2013 A1
20130321581 El-ghoroury et al. Dec 2013 A1
20130321589 Kirk et al. Dec 2013 A1
20130335598 Gustavsson et al. Dec 2013 A1
20130342641 Morioka et al. Dec 2013 A1
20140002674 Duparre et al. Jan 2014 A1
20140002675 Duparre et al. Jan 2014 A1
20140009586 McNamer et al. Jan 2014 A1
20140013273 Ng Jan 2014 A1
20140037137 Broaddus et al. Feb 2014 A1
20140037140 Benhimane et al. Feb 2014 A1
20140043507 Wang et al. Feb 2014 A1
20140059462 Wernersson Feb 2014 A1
20140076336 Clayton et al. Mar 2014 A1
20140078333 Miao Mar 2014 A1
20140079336 Venkataraman et al. Mar 2014 A1
20140081454 Nuyujukian et al. Mar 2014 A1
20140085502 Lin et al. Mar 2014 A1
20140092281 Nisenzon et al. Apr 2014 A1
20140097631 Ciocarlie Apr 2014 A1
20140098266 Nayar et al. Apr 2014 A1
20140098267 Tian et al. Apr 2014 A1
20140104490 Hsieh et al. Apr 2014 A1
20140118493 Sali et al. May 2014 A1
20140118584 Lee et al. May 2014 A1
20140125760 Au et al. May 2014 A1
20140125771 Grossmann et al. May 2014 A1
20140132810 McMahon May 2014 A1
20140139642 Ni et al. May 2014 A1
20140139643 Hogasten et al. May 2014 A1
20140140626 Cho et al. May 2014 A1
20140146132 Bagnato et al. May 2014 A1
20140146201 Knight et al. May 2014 A1
20140176592 Wilburn et al. Jun 2014 A1
20140183258 DiMuro Jul 2014 A1
20140183334 Wang et al. Jul 2014 A1
20140186045 Poddar et al. Jul 2014 A1
20140192154 Jeong et al. Jul 2014 A1
20140192253 Laroia Jul 2014 A1
20140198188 Izawa Jul 2014 A1
20140204183 Lee et al. Jul 2014 A1
20140218546 McMahon Aug 2014 A1
20140232822 Venkataraman et al. Aug 2014 A1
20140240528 Venkataraman et al. Aug 2014 A1
20140240529 Venkataraman et al. Aug 2014 A1
20140253738 Mullis Sep 2014 A1
20140267243 Venkataraman et al. Sep 2014 A1
20140267286 Duparre Sep 2014 A1
20140267633 Venkataraman et al. Sep 2014 A1
20140267762 Mullis et al. Sep 2014 A1
20140267829 McMahon et al. Sep 2014 A1
20140267890 Lelescu et al. Sep 2014 A1
20140285675 Mullis Sep 2014 A1
20140300706 Song Oct 2014 A1
20140307058 Kirk et al. Oct 2014 A1
20140307063 Lee Oct 2014 A1
20140313315 Shoham et al. Oct 2014 A1
20140321712 Ciurea et al. Oct 2014 A1
20140333731 Venkataraman et al. Nov 2014 A1
20140333764 Venkataraman et al. Nov 2014 A1
20140333787 Venkataraman et al. Nov 2014 A1
20140340539 Venkataraman et al. Nov 2014 A1
20140347509 Venkataraman et al. Nov 2014 A1
20140347748 Duparre Nov 2014 A1
20140354773 Venkataraman et al. Dec 2014 A1
20140354843 Venkataraman et al. Dec 2014 A1
20140354844 Venkataraman et al. Dec 2014 A1
20140354853 Venkataraman et al. Dec 2014 A1
20140354854 Venkataraman et al. Dec 2014 A1
20140354855 Venkataraman et al. Dec 2014 A1
20140355870 Venkataraman et al. Dec 2014 A1
20140368662 Venkataraman et al. Dec 2014 A1
20140368683 Venkataraman et al. Dec 2014 A1
20140368684 Venkataraman et al. Dec 2014 A1
20140368685 Venkataraman et al. Dec 2014 A1
20140368686 Duparre Dec 2014 A1
20140369612 Venkataraman et al. Dec 2014 A1
20140369615 Venkataraman et al. Dec 2014 A1
20140376825 Venkataraman et al. Dec 2014 A1
20140376826 Venkataraman et al. Dec 2014 A1
20150002734 Lee Jan 2015 A1
20150003752 Venkataraman et al. Jan 2015 A1
20150003753 Venkataraman et al. Jan 2015 A1
20150009353 Venkataraman et al. Jan 2015 A1
20150009354 Venkataraman et al. Jan 2015 A1
20150009362 Venkataraman et al. Jan 2015 A1
20150015669 Venkataraman et al. Jan 2015 A1
20150035992 Mullis Feb 2015 A1
20150036014 Lelescu et al. Feb 2015 A1
20150036015 Lelescu et al. Feb 2015 A1
20150042766 Ciurea et al. Feb 2015 A1
20150042767 Ciurea et al. Feb 2015 A1
20150042814 Vaziri Feb 2015 A1
20150042833 Lelescu et al. Feb 2015 A1
20150049915 Ciurea et al. Feb 2015 A1
20150049916 Ciurea et al. Feb 2015 A1
20150049917 Ciurea et al. Feb 2015 A1
20150055884 Venkataraman et al. Feb 2015 A1
20150085073 Bruls et al. Mar 2015 A1
20150085174 Shabtay et al. Mar 2015 A1
20150091900 Yang et al. Apr 2015 A1
20150095235 Dua Apr 2015 A1
20150098079 Montgomery et al. Apr 2015 A1
20150104076 Hayasaka Apr 2015 A1
20150104101 Bryant et al. Apr 2015 A1
20150122411 Rodda et al. May 2015 A1
20150124059 Georgiev et al. May 2015 A1
20150124113 Rodda et al. May 2015 A1
20150124151 Rodda et al. May 2015 A1
20150138346 Venkataraman et al. May 2015 A1
20150146029 Venkataraman et al. May 2015 A1
20150146030 Venkataraman et al. May 2015 A1
20150161798 Venkataraman et al. Jun 2015 A1
20150199793 Venkataraman et al. Jul 2015 A1
20150199841 Venkataraman et al. Jul 2015 A1
20150207990 Ford et al. Jul 2015 A1
20150228081 Kim et al. Aug 2015 A1
20150235476 McMahon et al. Aug 2015 A1
20150237329 Venkataraman et al. Aug 2015 A1
20150243480 Yamada Aug 2015 A1
20150244927 Laroia et al. Aug 2015 A1
20150245013 Venkataraman et al. Aug 2015 A1
20150248744 Hayasaka et al. Sep 2015 A1
20150254868 Srikanth et al. Sep 2015 A1
20150264337 Venkataraman et al. Sep 2015 A1
20150288861 Duparre Oct 2015 A1
20150296137 Duparre et al. Oct 2015 A1
20150312455 Venkataraman et al. Oct 2015 A1
20150317638 Donaldson Nov 2015 A1
20150326852 Duparre et al. Nov 2015 A1
20150332468 Hayasaka et al. Nov 2015 A1
20150373261 Rodda et al. Dec 2015 A1
20160037097 Duparre Feb 2016 A1
20160042548 Du et al. Feb 2016 A1
20160044252 Molina Feb 2016 A1
20160044257 Venkataraman et al. Feb 2016 A1
20160057332 Ciurea et al. Feb 2016 A1
20160065934 Kaza et al. Mar 2016 A1
20160163051 Mullis Jun 2016 A1
20160165106 Duparre Jun 2016 A1
20160165134 Lelescu et al. Jun 2016 A1
20160165147 Nisenzon et al. Jun 2016 A1
20160165212 Mullis Jun 2016 A1
20160182786 Anderson et al. Jun 2016 A1
20160191768 Shin et al. Jun 2016 A1
20160195733 Lelescu et al. Jul 2016 A1
20160198096 McMahon et al. Jul 2016 A1
20160209654 Riccomini et al. Jul 2016 A1
20160210785 Balachandreswaran et al. Jul 2016 A1
20160227195 Venkataraman et al. Aug 2016 A1
20160249001 McMahon Aug 2016 A1
20160255333 Nisenzon et al. Sep 2016 A1
20160266284 Duparre et al. Sep 2016 A1
20160267486 Mitra et al. Sep 2016 A1
20160267665 Venkataraman et al. Sep 2016 A1
20160267672 Ciurea et al. Sep 2016 A1
20160269626 McMahon Sep 2016 A1
20160269627 McMahon Sep 2016 A1
20160269650 Venkataraman et al. Sep 2016 A1
20160269651 Venkataraman et al. Sep 2016 A1
20160269664 Duparre Sep 2016 A1
20160309084 Venkataraman et al. Oct 2016 A1
20160309134 Venkataraman et al. Oct 2016 A1
20160316140 Nayar et al. Oct 2016 A1
20160323578 Kaneko et al. Nov 2016 A1
20170004791 Aubineau et al. Jan 2017 A1
20170006233 Venkataraman et al. Jan 2017 A1
20170011405 Pandey Jan 2017 A1
20170021498 Morey Jan 2017 A1
20170048468 Pain et al. Feb 2017 A1
20170053382 Lelescu et al. Feb 2017 A1
20170054901 Venkataraman et al. Feb 2017 A1
20170070672 Rodda et al. Mar 2017 A1
20170070673 Lelescu et al. Mar 2017 A1
20170070753 Kaneko Mar 2017 A1
20170078568 Venkataraman et al. Mar 2017 A1
20170085845 Venkataraman et al. Mar 2017 A1
20170094243 Venkataraman et al. Mar 2017 A1
20170099465 Mullis et al. Apr 2017 A1
20170109742 Varadarajan Apr 2017 A1
20170142405 Shors et al. May 2017 A1
20170163862 Molina Jun 2017 A1
20170178363 Venkataraman et al. Jun 2017 A1
20170187933 Duparre Jun 2017 A1
20170188011 Panescu et al. Jun 2017 A1
20170203443 Lessing Jul 2017 A1
20170244960 Ciurea et al. Aug 2017 A1
20170257562 Venkataraman et al. Sep 2017 A1
20170365104 McMahon et al. Dec 2017 A1
20180005244 Govindarajan et al. Jan 2018 A1
20180007284 Venkataraman et al. Jan 2018 A1
20180013945 Ciurea et al. Jan 2018 A1
20180024330 Laroia Jan 2018 A1
20180035057 McMahon et al. Feb 2018 A1
20180040135 Mullis Feb 2018 A1
20180048830 Venkataraman et al. Feb 2018 A1
20180048879 Venkataraman et al. Feb 2018 A1
20180081090 Duparre et al. Mar 2018 A1
20180097993 Nayar et al. Apr 2018 A1
20180109782 Duparre et al. Apr 2018 A1
20180124311 Lelescu et al. May 2018 A1
20180131852 McMahon May 2018 A1
20180139382 Venkataraman et al. May 2018 A1
20180189767 Bigioi Jul 2018 A1
20180197035 Venkataraman et al. Jul 2018 A1
20180211402 Ciurea et al. Jul 2018 A1
20180227511 McMahon Aug 2018 A1
20180240265 Yang et al. Aug 2018 A1
20180270473 Mullis Sep 2018 A1
20180286120 Fleishman et al. Oct 2018 A1
20180302554 Lelescu et al. Oct 2018 A1
20180330182 Venkataraman et al. Nov 2018 A1
20180376122 Park et al. Dec 2018 A1
20190012768 Tafazoli Bilandi et al. Jan 2019 A1
20190037116 Molina Jan 2019 A1
20190037150 Srikanth et al. Jan 2019 A1
20190043253 Lucas et al. Feb 2019 A1
20190057513 Jain et al. Feb 2019 A1
20190061170 Curhan et al. Feb 2019 A1
20190063905 Venkataraman et al. Feb 2019 A1
20190087976 Sugahara Mar 2019 A1
20190089947 Venkataraman et al. Mar 2019 A1
20190098209 Venkataraman et al. Mar 2019 A1
20190109998 Venkataraman et al. Apr 2019 A1
20190160692 Miyazaki May 2019 A1
20190164341 Venkataraman May 2019 A1
20190174040 Mcmahon Jun 2019 A1
20190197735 Xiong et al. Jun 2019 A1
20190202070 Nakagawa et al. Jul 2019 A1
20190215496 Mullis et al. Jul 2019 A1
20190230348 Ciurea et al. Jul 2019 A1
20190235138 Duparre et al. Aug 2019 A1
20190243086 Rodda et al. Aug 2019 A1
20190244379 Venkataraman Aug 2019 A1
20190268586 Mullis Aug 2019 A1
20190289176 Duparre Sep 2019 A1
20190347768 Lelescu et al. Nov 2019 A1
20190356863 Venkataraman et al. Nov 2019 A1
20190362515 Ciurea et al. Nov 2019 A1
20190364263 Jannard et al. Nov 2019 A1
20200026948 Venkataraman et al. Jan 2020 A1
20200151894 Jain et al. May 2020 A1
20200164523 Hallock May 2020 A1
20200215685 Jamali Jul 2020 A1
20200252597 Mullis Aug 2020 A1
20200311855 Tremblay Oct 2020 A1
20200334905 Venkataraman Oct 2020 A1
20200353629 Simons Nov 2020 A1
20200389604 Venkataraman et al. Dec 2020 A1
20210002086 Stauffer et al. Jan 2021 A1
20210042952 Jain et al. Feb 2021 A1
20210044790 Venkataraman et al. Feb 2021 A1
20210063141 Venkataraman et al. Mar 2021 A1
20210069904 Duan Mar 2021 A1
20210133927 Lelescu et al. May 2021 A1
20210150748 Ciurea et al. May 2021 A1
20210187741 Marthi Jun 2021 A1
20210233246 Liu Jul 2021 A1
20210276185 Shentu Sep 2021 A1
20210276187 Tang Sep 2021 A1
20220016765 Ku Jan 2022 A1
20220044441 Kalra Feb 2022 A1
20220072712 Tang Mar 2022 A1
20220084238 Tang Mar 2022 A1
20220288783 Sundermeyer Sep 2022 A1
20220309672 Cherian Sep 2022 A1
20220343537 Taamazyan Oct 2022 A1
20220375125 Taamazyan Nov 2022 A1
20220383538 Tang Dec 2022 A1
Foreign Referenced Citations (286)
Number Date Country
3109406 Mar 2021 CA
3109406 Mar 2021 CA
2488005 Apr 2002 CN
1619358 May 2005 CN
1669332 Sep 2005 CN
1727991 Feb 2006 CN
1839394 Sep 2006 CN
1985524 Jun 2007 CN
1992499 Jul 2007 CN
101010619 Aug 2007 CN
101046882 Oct 2007 CN
101064780 Oct 2007 CN
101102388 Jan 2008 CN
101147392 Mar 2008 CN
201043890 Apr 2008 CN
101212566 Jul 2008 CN
101312540 Nov 2008 CN
101427372 May 2009 CN
101551586 Oct 2009 CN
101593350 Dec 2009 CN
101606086 Dec 2009 CN
101785025 Jul 2010 CN
101883291 Nov 2010 CN
102037717 Apr 2011 CN
102164298 Aug 2011 CN
102184720 Sep 2011 CN
102375199 Mar 2012 CN
103004180 Mar 2013 CN
103765864 Apr 2014 CN
104081414 Oct 2014 CN
104508681 Apr 2015 CN
104662589 May 2015 CN
104685513 Jun 2015 CN
104685860 Jun 2015 CN
105409212 Mar 2016 CN
103765864 Jul 2017 CN
104081414 Aug 2017 CN
104662589 Aug 2017 CN
107077743 Aug 2017 CN
107230236 Oct 2017 CN
107346061 Nov 2017 CN
107404609 Nov 2017 CN
104685513 Apr 2018 CN
107924572 Apr 2018 CN
108307675 Jul 2018 CN
104335246 Sep 2018 CN
110633632 Dec 2019 CN
107404609 Feb 2020 CN
107346061 Apr 2020 CN
111178224 May 2020 CN
107230236 Dec 2020 CN
108307675 Dec 2020 CN
107077743 Mar 2021 CN
602011041799.1 Sep 2017 DE
0677821 Oct 1995 EP
0840502 May 1998 EP
1201407 May 2002 EP
1355274 Oct 2003 EP
1734766 Dec 2006 EP
1991145 Nov 2008 EP
1243945 Jan 2009 EP
2026563 Feb 2009 EP
2031592 Mar 2009 EP
2041454 Apr 2009 EP
2072785 Jun 2009 EP
2104334 Sep 2009 EP
2136345 Dec 2009 EP
2156244 Feb 2010 EP
2244484 Oct 2010 EP
0957642 Apr 2011 EP
2336816 Jun 2011 EP
2339532 Jun 2011 EP
2381418 Oct 2011 EP
2386554 Nov 2011 EP
2462477 Jun 2012 EP
2502115 Sep 2012 EP
2569935 Mar 2013 EP
2652678 Oct 2013 EP
2677066 Dec 2013 EP
2708019 Mar 2014 EP
2761534 Aug 2014 EP
2777245 Sep 2014 EP
2867718 May 2015 EP
2873028 May 2015 EP
2888698 Jul 2015 EP
2888720 Jul 2015 EP
2901671 Aug 2015 EP
2973476 Jan 2016 EP
3066690 Sep 2016 EP
2569935 Dec 2016 EP
3201877 Aug 2017 EP
2652678 Sep 2017 EP
3284061 Feb 2018 EP
3286914 Feb 2018 EP
3201877 Mar 2018 EP
2817955 Apr 2018 EP
3328048 May 2018 EP
3075140 Jun 2018 EP
3201877 Dec 2018 EP
3467776 Apr 2019 EP
3 530 415 Aug 2019 EP
2708019 Oct 2019 EP
3286914 Dec 2019 EP
2761534 Nov 2020 EP
2888720 Mar 2021 EP
3328048 Apr 2021 EP
2482022 Jan 2012 GB
2708CHENP2014 Aug 2015 IN
361194 Mar 2021 IN
59-025483 Feb 1984 JP
64-037177 Feb 1989 JP
02-285772 Nov 1990 JP
H05127723 May 1993 JP
06129851 May 1994 JP
07-015457 Jan 1995 JP
H0756112 Mar 1995 JP
09171075 Jun 1997 JP
09181913 Jul 1997 JP
10253351 Sep 1998 JP
11142609 May 1999 JP
11223708 Aug 1999 JP
11325889 Nov 1999 JP
2000209503 Jul 2000 JP
2001008235 Jan 2001 JP
2001194114 Jul 2001 JP
2001264033 Sep 2001 JP
2001277260 Oct 2001 JP
2001337263 Dec 2001 JP
2002195910 Jul 2002 JP
2002205310 Jul 2002 JP
2002209226 Jul 2002 JP
2002250607 Sep 2002 JP
2002252338 Sep 2002 JP
2003094445 Apr 2003 JP
2003139910 May 2003 JP
2003163938 Jun 2003 JP
2003298920 Oct 2003 JP
2004221585 Aug 2004 JP
2005116022 Apr 2005 JP
2005181460 Jul 2005 JP
2005295381 Oct 2005 JP
2005303694 Oct 2005 JP
2005341569 Dec 2005 JP
2005354124 Dec 2005 JP
2006033228 Feb 2006 JP
2006033493 Feb 2006 JP
2006047944 Feb 2006 JP
2006258930 Sep 2006 JP
2007520107 Jul 2007 JP
2007259136 Oct 2007 JP
2008039852 Feb 2008 JP
2008055908 Mar 2008 JP
2008507874 Mar 2008 JP
2008172735 Jul 2008 JP
2008258885 Oct 2008 JP
2009064421 Mar 2009 JP
2009132010 Jun 2009 JP
2009300268 Dec 2009 JP
2010139288 Jun 2010 JP
2011017764 Jan 2011 JP
2011030184 Feb 2011 JP
2011109484 Jun 2011 JP
2011523538 Aug 2011 JP
2011203238 Oct 2011 JP
2012504805 Feb 2012 JP
5127723 Jan 2013 JP
2011052064 Mar 2013 JP
2013509022 Mar 2013 JP
2013526801 Jun 2013 JP
2014519741 Aug 2014 JP
2014521117 Aug 2014 JP
2014535191 Dec 2014 JP
2015022510 Feb 2015 JP
2015522178 Aug 2015 JP
2015534734 Dec 2015 JP
5848754 Jan 2016 JP
2016524125 Aug 2016 JP
6140709 May 2017 JP
2017163550 Sep 2017 JP
2017163587 Sep 2017 JP
2017531976 Oct 2017 JP
6546613 Jul 2019 JP
2019-220957 Dec 2019 JP
6630891 Dec 2019 JP
2020017999 Jan 2020 JP
6767543 Sep 2020 JP
6767558 Sep 2020 JP
1020050004239 Jan 2005 KR
100496875 Jun 2005 KR
1020110097647 Aug 2011 KR
20140045373 Apr 2014 KR
20170063827 Jun 2017 KR
101824672 Feb 2018 KR
101843994 Mar 2018 KR
101973822 Apr 2019 KR
10-2002165 Jul 2019 KR
10-2111181 May 2020 KR
191151 Jul 2013 SG
11201500910 Oct 2015 SG
200828994 Jul 2008 TW
200939739 Sep 2009 TW
201228382 Jul 2012 TW
I535292 May 2016 TW
1994020875 Sep 1994 WO
2005057922 Jun 2005 WO
2006039906 Apr 2006 WO
2006039906 Apr 2006 WO
2007013250 Feb 2007 WO
2007083579 Jul 2007 WO
2007134137 Nov 2007 WO
2008045198 Apr 2008 WO
2008050904 May 2008 WO
2008108271 Sep 2008 WO
2008108926 Sep 2008 WO
2008150817 Dec 2008 WO
2009073950 Jun 2009 WO
2009151903 Dec 2009 WO
2009157273 Dec 2009 WO
2010037512 Apr 2010 WO
2011008443 Jan 2011 WO
2011026527 Mar 2011 WO
2011046607 Apr 2011 WO
2011055655 May 2011 WO
2011063347 May 2011 WO
2011105814 Sep 2011 WO
2011116203 Sep 2011 WO
2011063347 Oct 2011 WO
2011121117 Oct 2011 WO
2011143501 Nov 2011 WO
2012057619 May 2012 WO
2012057620 May 2012 WO
2012057621 May 2012 WO
2012057622 May 2012 WO
2012057623 May 2012 WO
2012057620 Jun 2012 WO
2012074361 Jun 2012 WO
2012078126 Jun 2012 WO
2012082904 Jun 2012 WO
WO-2012089928 Jul 2012 WO
2012155119 Nov 2012 WO
2013003276 Jan 2013 WO
2013043751 Mar 2013 WO
2013043761 Mar 2013 WO
2013049699 Apr 2013 WO
2013055960 Apr 2013 WO
2013119706 Aug 2013 WO
2013126578 Aug 2013 WO
2013166215 Nov 2013 WO
2014004134 Jan 2014 WO
2014005123 Jan 2014 WO
2014031795 Feb 2014 WO
2014052974 Apr 2014 WO
2014032020 May 2014 WO
2014078443 May 2014 WO
2014130849 Aug 2014 WO
2014131038 Aug 2014 WO
2014133974 Sep 2014 WO
2014138695 Sep 2014 WO
2014138697 Sep 2014 WO
2014144157 Sep 2014 WO
2014145856 Sep 2014 WO
2014149403 Sep 2014 WO
2014149902 Sep 2014 WO
2014150856 Sep 2014 WO
2014153098 Sep 2014 WO
2014159721 Oct 2014 WO
2014159779 Oct 2014 WO
2014160142 Oct 2014 WO
2014164550 Oct 2014 WO
2014164909 Oct 2014 WO
2014165244 Oct 2014 WO
2014133974 Apr 2015 WO
2015048694 Apr 2015 WO
2015048906 Apr 2015 WO
2015070105 May 2015 WO
2015074078 May 2015 WO
2015081279 Jun 2015 WO
2015134996 Sep 2015 WO
2015183824 Dec 2015 WO
2016054089 Apr 2016 WO
2016172125 Oct 2016 WO
2016167814 Oct 2016 WO
2016172125 Apr 2017 WO
2018053181 Mar 2018 WO
2019038193 Feb 2019 WO
WO-2021155308 Aug 2021 WO
Non-Patent Literature Citations (303)
Entry
US 8,957,977 B2, 02/2015, Venkataraman et al. (withdrawn)
Grasping Novel Objects with Depth Segmentation, Deepak Rao et al., IEEE, 2010, pp. 2578-2585 (Year: 2010).
Part-Based Robot Grasp Planning from Human Demonstration, Jacopo Aleotti et al., IEEE, 2011, pp. 4554-4560 (Year: 2011).
Object Part Segmentation and Classification in Range Images for Grasping, Karthik Mahesh et al., IEEE, 2011, pp. 21-27 (Year: 2011).
Learning a Dictionary of Prototypical Grasp-predicting Parts from Grasping Experience, Renaud Detry et al., IEEE, 2013, pp. 601-608 (Year: 2013).
Part-based Grasp Planning for Familiar Objects, Nikolaus Vahrenkamp et al., IEEE, 2016, pp. 919-925 (Year: 2016).
Vision-based robotic grasping from object localization, object pose estimation to grasp estimation for parallel grippers: a review, Guoguang Du et al., Springer, Aug. 17, 2020, pp. 1677-1734 (Year: 2020).
Detry et al., “Learning a dictionary of prototypical grasp-predicting parts from grasping experience,” 2013 IEEE International Conference on Robotics and Automation, May 6-10, 2013, 13 pages.
International Search Report and Written Opinion in International Appln. No. PCT/US2022/034532, dated Oct. 7, 2022, 21 pages.
Ansari et al., “3-D Face Modeling Using Two Views and a Generic Face Model with Application to 3-D Face Recognition”, Proceedings of the IEEE Conference on Advanced Video and Signal Based Surveillance, Jul. 22, 2003, 9 pgs.
Aufderheide et al., “A MEMS-based Smart Sensor System for Estimation of Camera Pose for Computer Vision Applications”, Research and Innovation Conference 2011, Jul. 29, 2011, pp. 1-10.
Baker et al., “Limits on Super-Resolution and How to Break Them”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Sep. 2002, vol. 24, No. 9, pp. 1167-1183.
Banz et al., “Real-Time Semi-Global Matching Disparity Estimation on the GPU”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Sep. 2002, vol. 24, No. 9, pp. 1167-1183.
Barron et al., “Intrinsic Scene Properties from a Single RGB-D Image”, 2013 IEEE Conference on Computer Vision and Pattern Recognition, Jun. 23-28, 2013, Portland, OR, USA, pp. 17-24.
Bennett et al., “Multispectral Bilateral Video Fusion”, Computer Graphics (ACM SIGGRAPH Proceedings), Jul. 25, 2006, published Jul. 30, 2006, 1 pg.
Bennett et al., “Multispectral Video Fusion”, Computer Graphics (ACM SIGGRAPH Proceedings), Jul. 25, 2006, published Jul. 30, 2006, 1 pg.
Berretti et al., “Face Recognition by Super-Resolved 3D Models from Consumer Depth Cameras”, IEEE Transactions on Information Forensics and Security, vol. 9, No. 9, Sep. 2014, pp. 1436-1448.
Bertalmio et al., “Image Inpainting”, Proceedings of the 27th Annual Conference on Computer Graphics and Interactive Techniques, 2000, ACM Pres/Addison-Wesley Publishing Co., pp. 417-424.
Bertero et al., “Super-resolution in computational imaging”, Micron, Jan. 1, 2003, vol. 34, Issues 6-7, 17 pgs.
Bishop et al., “Full-Resolution Depth Map Estimation from an Aliased Plenoptic Light Field”, ACCV Nov. 8, 2010, Part II, LNCS 6493, pp. 186-200.
Bishop et al., “Light Field Superresolution”, Computational Photography (ICCP), 2009 IEEE International Conference, Conference Date Apr. 16-17, published Jan. 26, 2009, 9 pgs.
Bishop et al., “The Light Field Camera: Extended Depth of Field, Aliasing, and Superresolution”, IEEE Transactions on Pattern Analysis and Machine Intelligence, May 2012, vol. 34, No. 5, published Aug. 18, 2011, pp. 972-986.
Blanz et al., “A Morphable Model for the Synthesis of 3D Faces”, In Proceedings of ACM SIGGRAPH 1999, Jul. 1, 1999, pp. 187-194.
Borman, “Topics in Multiframe Superresolution Restoration”, Thesis of Sean Borman, Apr. 2004, 282 pgs.
Borman et al., “Image Sequence Processing”, Dekker Encyclopedia of Optical Engineering, Oct. 14, 2002, 81 pgs.
Borman et al, “Linear models for multi-frame super-resolution restoration under non-affine registration and spatially varying PSF”, Proc. SPIE, May 21, 2004, vol. 5299, 12 pgs.
Borman et al., “Simultaneous Multi-Frame MAP Super-Resolution Video Enhancement Using Spatio-Temporal Priors”, Image Processing, 1999, ICIP 99 Proceedings, vol. 3, pp. 469-473.
Borman et al., “Super-Resolution from Image Sequences—A Review”, Circuits & Systems, 1998, pp. 374-378.
Borman et al., “Nonlinear Prediction Methods for Estimation of Clique Weighting Parameters in NonGaussian Image Models”, Proc. SPIE, Sep. 22, 1998, vol. 3459, 9 pgs.
Borman et al., “Block-Matching Sub-Pixel Motion Estimation from Noisy, Under-Sampled Frames—An Empirical Performance Evaluation”, Proc SPIE, Dec. 28, 1998, vol. 3653, 10 pgs.
Borman et al., “Image Resampling and Constraint Formulation for Multi-Frame Super-Resolution Restoration”, Proc SPIE, Dec. 28, 1998, vol. 3653, 10 pgs.
Bose et al., “Superresolution and Noise Filtering Using Moving Least Squares”, IEEE Transactions on Image Processing, Aug. 2006, vol. 15, Issue 8, published Jul. 17, 2006, pp. 2239-2248.
Boye et al., “Comparison of Subpixel Image Registration Algorithms”, Proc. of SPIE—IS&T Electronic Imaging, Feb. 3, 2009, vol. 7246, pp. 72460X-1-72460X-9; doi: 10.1117/12.810369.
Bruckner et al., “Thin wafer-level camera lenses inspired by insect compound eyes”, Optics Express, Nov. 22, 2010, vol. 18, No. 24, pp. 24379-24394.
Bruckner et al., “Artificial compound eye applying hyperacuity”, Optics Express, Dec. 11, 2006, vol. 14, No. 25, pp. 12076-12084.
Bruckner et al., “Driving microoptical imaging systems towards miniature camera applications”, Proc. SPIE, Micro-Optics, May 13, 2010, 11 pgs.
Bryan et al., “Perspective Distortion from Interpersonal Distance Is an Implicit Visual Cue for Social Judgments of Faces”, PLOS One, vol. 7, Issue 9, Sep. 26, 2012, e45301, doi:10.1371/journal.pone.0045301, 9 pgs.
Bulat et al., “How far are we from solving the 2D & 3D Face Alignment problem? (and a dataset of 230,000 3D facial landmarks)”, arxiv.org, Cornell University Library, 201 Olin Library Cornell University Ithaca, NY 14853, Mar. 21, 2017.
Cai et al., “3D Deformable Face Tracking with a Commodity Depth Camera”, Proceedings of the European Conference on Computer Vision: Part III, Sep. 5-11, 2010, 14pgs.
Capel, “Image Mosaicing and Super-resolution”, Retrieved on Nov. 10, 2012, Retrieved from the Internet at URL:<http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.226.2643&rep=rep1 &type=pdf>, 2001, 269 pgs.
Caron et al., “Multiple camera types simultaneous stereo calibration, Robotics and Automation (ICRA)”, 2011 IEEE International Conference on, May 1, 2011 (May 1, 2011), pp. 2933-2938.
Carroll et al., “Image Warps for Artistic Perspective Manipulation”, ACM Transactions on Graphics (TOG), vol. 29, No. 4, Jul. 26, 2010, Article No. 127, 9 pgs.
Chan et al., “Investigation of Computational Compound-Eye Imaging System with Super-Resolution Reconstruction”, IEEE, ISASSP, Jun. 19, 2006, pp. 1177-1180.
Chan et al., “Extending the Depth of Field in a Compound-Eye Imaging System with Super-Resolution Reconstruction”, Proceedings—International Conference on Pattern Recognition, Jan. 1, 2006, vol. 3, pp. 623-626.
Chan et al., “Super-resolution reconstruction in a computational compound-eye imaging system”, Multidim. Syst. Sign. Process, published online Feb. 23, 2007, vol. 18, pp. 83-101.
Chen et al., “Interactive deformation of light fields”, Symposium on Interactive 3D Graphics, 2005, pp. 139-146.
Chen et al., “KNN Matting”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Sep. 2013, vol. 35, No. 9, pp. 2175-2188.
Chen et al., “KNN matting”, 2012 IEEE Conference on Computer Vision and Pattern Recognition, Jun. 16-21, 2012, Providence, RI, USA, pp. 869-876.
Chen et al., “Image Matting with Local and Nonlocal Smooth Priors” CVPR '13 Proceedings of the 2013 IEEE Conference on Computer Vision and Pattern Recognition, Jun. 23, 2013, pp. 1902-1907.
Chen et al., “Human Face Modeling and Recognition Through Multi-View High Resolution Stereopsis”, IEEE Conference on Computer Vision and Pattern Recognition Workshop, Jun. 17-22, 2006, 6 pgs.
Collins et al., “An Active Camera System for Acquiring Multi-View Video”, IEEE 2002 International Conference on Image Processing, Date of Conference: Sep. 22-25, 2002, Rochester, NY, 4 pgs.
Cooper et al., “The perceptual basis of common photographic practice”, Journal of Vision, vol. 12, No. 5, Article 8, May 25, 2012, pp. 1-14.
Crabb et al., “Real-time foreground segmentation via range and color imaging”, 2008 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops, Anchorage, AK, USA, Jun. 23-28, 2008, pp. 1-5.
Dainese et al., “Accurate Depth-Map Estimation For 3D Face Modeling”, IEEE European Signal Processing Conference, Sep. 4-8, 2005, 4 pgs.
Debevec et al., “Recovering High Dynamic Range Radiance Maps from Photographs”, Computer Graphics (ACM SIGGRAPH Proceedings), Aug. 16, 1997, 10 pgs.
Do, Minh N. “Immersive Visual Communication with Depth”, Presented at Microsoft Research, Jun. 15, 2011, Retrieved from: http://minhdo.ece.illinois.edu/talks/ImmersiveComm.pdf, 42 pgs.
Do et al., Immersive Visual Communication, IEEE Signal Processing Magazine, vol. 28, Issue 1, Jan. 2011, DOI: 10.1109/MSP.2010.939075, Retrieved from: http://minhdo.ece.illinois.edu/publications/ImmerComm_SPM.pdf, pp. 58-66.
Dou et al., “End-to-end 3D face reconstruction with deep neural networks”, arXiv:1704.05020v1, Apr. 17, 2017, 10 pgs.
Drouin et al., “Improving Border Localization of Multi-Baseline Stereo Using Border-Cut”, International Journal of Computer Vision, Jul. 5, 2006, vol. 83, Issue 3, 8 pgs.
Drouin et al., “Fast Multiple-Baseline Stereo with Occlusion”, Fifth International Conference on 3-D Digital Imaging and Modeling (3DIM'05), Ottawa, Ontario, Canada, Jun. 13-16, 2005, pp. 540-547.
Drouin et al., “Geo-Consistency for Wide Multi-Camera Stereo”, 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05), vol. 1, Jun. 20-25, 2005, pp. 351-358.
Drulea et al., “Motion Estimation Using the Correlation Transform”, IEEE Transactions on Image Processing, Aug. 2013, vol. 22, No. 8, pp. 3260-3270, first published May 14, 2013.
Duparre et al., “Microoptical artificial compound eyes—from design to experimental verification of two different concepts”, Proc. of SPIE, Optical Design and Engineering II, vol. 5962, Oct. 17, 2005, pp. 59622A-1-59622A-12.
Duparre et al., Novel Optics/Micro-Optics for Miniature Imaging Systems, Proc. of SPIE, Apr. 21, 2006, vol. 6196, pp. 619607-1-619607-15.
Duparre et al., “Micro-optical artificial compound eyes”, Bioinspiration & Biomimetics, Apr. 6, 2006, vol. 1, pp. R1-R16.
Duparre et al., “Artificial compound eye zoom camera”, Bioinspiration & Biomimetics, Nov. 21, 2008, vol. 3, pp. 1-6.
Duparre et al., “Artificial apposition compound eye fabricated by micro-optics technology”, Applied Optics, Aug. 1, 2004, vol. 43, No. 22, pp. 4303-4310.
Duparre et al., “Micro-optically fabricated artificial apposition compound eye”, Electronic Imaging—Science and Technology, Prod. SPIE 5301, Jan. 2004, pp. 25-33.
Duparre et al., “Chirped arrays of refractive ellipsoidal microlenses for aberration correction under oblique incidence”, Optics Express, Dec. 26, 2005, vol. 13, No. 26, pp. 10539-10551.
Duparre et al., “Artificial compound eyes—different concepts and their application to ultra flat image acquisition sensors”, MOEMS and Miniaturized Systems IV, Proc. SPIE 5346, Jan. 24, 2004, pp. 89-100.
Duparre et al., “Ultra-Thin Camera Based on Artificial Apposition Compound Eyes”, 10th Microoptics Conference, Sep. 1-3, 2004, 2 pgs.
Duparre et al., “Microoptical telescope compound eye”, Optics Express, Feb. 7, 2005, vol. 13, No. 3, pp. 889-903.
Duparre et al., “Theoretical analysis of an artificial superposition compound eye for application in ultra flat digital image acquisition devices”, Optical Systems Design, Proc. SPIE 5249, Sep. 2003, pp. 408-418.
Duparre et al., “Thin compound-eye camera”, Applied Optics, May 20, 2005, vol. 44, No. 15, pp. 2949-2956.
Duparre et al., “Microoptical Artificial Compound Eyes—Two Different Concepts for Compact Imaging Systems”, 11th Microoptics Conference, Oct. 30-Nov. 2, 2005, 2 pgs.
Eng et al., “Gaze correction for 3D tele-immersive communication system”, IVMSP Workshop, 2013 IEEE 11th. IEEE, Jun. 10, 2013.
Fanaswala, “Regularized Super-Resolution of Multi-View Images”, Retrieved on Nov. 10, 2012 (Nov. 10, 2012). Retrieved from the Internet at URL:<http://www.site.uottawa.ca/-edubois/theses/Fanaswala_thesis.pdf>, 2009, 163 pgs.
Fang et al., “Volume Morphing Methods for Landmark Based 3D Image Deformation”, SPIE vol. 2710, Proc. 1996 SPIE Intl Symposium on Medical Imaging, Newport Beach, CA, Feb. 10, 1996, pp. 404-415.
Fangmin et al., “3D Face Reconstruction Based on Convolutional Neural Network”, 2017 10th International Conference on Intelligent Computation Technology and Automation, Oct. 9-10, 2017, Changsha, China.
Farrell et al., “Resolution and Light Sensitivity Tradeoff with Pixel Size”, Proceedings of the SPIE Electronic Imaging 2006 Conference, Feb. 2, 2006, vol. 6069, 8 pgs.
Farsiu et al., “Advances and Challenges in Super-Resolution”, International Journal of Imaging Systems and Technology, Aug. 12, 2004, vol. 14, pp. 47-57.
Farsiu et al., “Fast and Robust Multiframe Super Resolution”, IEEE Transactions on Image Processing, Oct. 2004, published Sep. 3, 2004, vol. 13, No. 10, pp. 1327-1344.
Farsiu et al., “Multiframe Demosaicing and Super-Resolution of Color Images”, IEEE Transactions on Image Processing, Jan. 2006, vol. 15, No. 1, date of publication Dec. 12, 2005, pp. 141-159.
Fechteler et al., Fast and High Resolution 3D Face Scanning, IEEE International Conference on Image Processing, Sep. 16-Oct. 19, 2007, 4 pgs.
Fecker et al., “Depth Map Compression for Unstructured Lumigraph Rendering”, Proc. SPIE 6077, Proceedings Visual Communications and Image Processing 2006, Jan. 18, 2006, pp. 60770B-1-60770B-8.
Feris et al., “Multi-Flash Stereopsis: Depth Edge Preserving Stereo with Small Baseline Illumination”, IEEE Trans on PAMI, 2006, 31 pgs.
Fife et al., “A 3D Multi-Aperture Image Sensor Architecture”, Custom Integrated Circuits Conference, 2006, CICC '06, IEEE, pp. 281-284.
Fife et al., “A 3MPixel Multi-Aperture Image Sensor with 0.7Mu Pixels in 0.11Mu CMOS”, ISSCC 2008, Session 2, Image Sensors & Technology, 2008, pp. 48-50.
Fischer et al., “Optical System Design”, 2nd Edition, SPIE Press, Feb. 14, 2008, pp. 49-58.
Fischer et al., “Optical System Design”, 2nd Edition, SPIE Press, Feb. 14, 2008, pp. 191-198.
Garg et al., “Unsupervised CNN for Single View Depth Estimation: Geometry to the Rescue”, In European Conference on Computer Vision, Springer, Cham, Jul. 2016, 16 pgs.
Gastal et al., “Shared Sampling for Real-Time Alpha Matting”, Computer Graphics Forum, EUROGRAPHICS 2010, vol. 29, Issue 2, May 2010, pp. 575-584.
Georgeiv et al., “Light Field Camera Design for Integral View Photography”, Adobe Systems Incorporated, Adobe Technical Report, 2003, 13 pgs.
Georgiev et al., “Light-Field Capture by Multiplexing in the Frequency Domain”, Adobe Systems Incorporated, Adobe Technical Report, 2003, 13 pgs.
Godard et al., “Unsupervised Monocular Depth Estimation with Left-Right Consistency”, In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2017, 14 pgs.
Goldman et al., “Video Object Annotation, Navigation, and Composition”, In Proceedings of UIST 2008, Oct. 19-22, 2008, Monterey CA, USA, pp. 3-12.
Goodfellow et al., “Generative Adversarial Nets, 2014. Generative adversarial nets”, In Advances in Neural Information Processing Systems (pp. 2672-2680).
Gortler et al., “The Lumigraph”, In Proceedings of SIGGRAPH 1996, published Aug. 1, 1996, pp. 43-54.
Gupta et al., “Perceptual Organization and Recognition of Indoor Scenes from RGB-D Images”, 2013 IEEE Conference on Computer Vision and Pattern Recognition, Jun. 23-28, 2013, Portland, OR, USA, pp. 564-571.
Hacohen et al., “Non-Rigid Dense Correspondence with Applications for Image Enhancement”, ACM Transactions on Graphics, vol. 30, No. 4, Aug. 7, 2011, 9 pgs.
Hamilton, “JPEG File Interchange Format, Version 1.02”, Sep. 1, 1992, 9 pgs.
Hardie, “A Fast Image Super-Algorithm Using an Adaptive Wiener Filter”, IEEE Transactions on Image Processing, Dec. 2007, published Nov. 19, 2007, vol. 16, No. 12, pp. 2953-2964.
Hasinoff et al., “Search-and-Replace Editing for Personal Photo Collections”, 2010 International Conference: Computational Photography (ICCP) Mar. 2010, pp. 1-8.
Hernandez et al., “Laser Scan Quality 3-D Face Modeling Using a Low-Cost Depth Camera”, 20th European Signal Processing Conference, Aug. 27-31, 2012, Bucharest, Romania, pp. 1995-1999.
Hernandez-Lopez et al., “Detecting objects using color and depth segmentation with Kinect sensor”, Procedia Technology, vol. 3, Jan. 1, 2012, pp. 196-204, XP055307680, ISSN: 2212-0173, DOI: 10.1016/j.protcy.2012.03.021.
Higo et al., “A Hand-held Photometric Stereo Camera for 3-D Modeling”, IEEE International Conference on Computer Vision, 2009, pp. 1234-1241.
Hirschmuller, “Accurate and Efficient Stereo Processing by Semi-Global Matching and Mutual Information”, IEEE Conference on Computer Vision and Pattern Recognition (CVPR), San Diego, CA, USA, Jun. 20-26, 2005, 8 pgs.
Hirschmuller et al., “Memory Efficient Semi-Global Matching, ISPRS Annals of the Photogrammetry”, Remote Sensing and Spatial Information Sciences, vol. 1-3, 2012, Xxii Isprs Congress, Aug. 25-Sep. 1, 2012, Melbourne, Australia, 6 pgs.
Holoeye Photonics AG, “Spatial Light Modulators”, Oct. 2, 2013, Brochure retrieved from https://web.archive.org/web/20131002061028/http://holoeye.com/wp-content/uploads/Spatial_Light_Modulators.pdf on Oct. 13, 2017, 4 pgs.
Holoeye Photonics AG, “Spatial Light Modulators”, Sep. 18, 2013, retrieved from https://web.archive.org/web/20130918113140/http://holoeye.com/spatial-light-modulators/ on Oct. 13, 2017, 4 pgs.
Holoeye Photonics Ag, “LC 2012 Spatial Light Modulator (transmissive)”, Sep. 18, 2013, retrieved from https://web.archive.org/web/20130918151716/http://holoeye.com/spatial-light-modulators/lc-2012-spatial-light-modulator/ on Oct. 20, 2017, 3 pgs.
Horisaki et al., “Superposition Imaging for Three-Dimensionally Space-Invariant Point Spread Functions”, Applied Physics Express, Oct. 13, 2011, vol. 4, pp. 112501-1-112501-3.
Horisaki et al., “Irregular Lens Arrangement Design to Improve Imaging Performance of Compound-Eye Imaging Systems”, Applied Physics Express, Jan. 29, 2010, vol. 3, pp. 022501-1-022501-3.
Horn et al., “LightShop: Interactive Light Field Manipulation and Rendering”, In Proceedings of I3D, Jan. 1, 2007, pp. 121-128.
Hossain et al., “Inexpensive Construction of a 3D Face Model from Stereo Images”, IEEE International Conference on Computer and Information Technology, Dec. 27-29, 2007, 6 pgs.
Hu et al., “A Quantitative Evaluation of Confidence Measures for Stereo Vision”, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 34, Issue 11, Nov. 2012, pp. 2121-2133.
Humenberger er al., “A Census-Based Stereo Vision Algorithm Using Modified Semi-Global Matching and Plane Fitting to Improve Matching Quality”, IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), IEEE, Jun. 13-18, 2010, San Francisco, CA, 8 pgs.
Isaksen et al., “Dynamically Reparameterized Light Fields”, In Proceedings of SIGGRAPH 2000, 2000, pp. 297-306.
Izadi et al., “KinectFusion: Real-time 3D Reconstruction and Interaction Using a Moving Depth Camera”, UIST'11, Oct. 16-19, 2011, Santa Barbara, CA, pp. 559-568.
Jackson et al., “Large Post 3D Face Reconstruction from a Single Image via Direct Volumetric CNN Regression”, arXiv: 1703.07834v2, Sep. 8, 2017, 9 pgs.
Janoch et al., “A category-level 3-D object dataset: Putting the Kinect to work”, 2011 IEEE International Conference on Computer Vision Workshops (ICCV Workshops), Nov. 6-13, 2011, Barcelona, Spain, pp. 1168-1174.
Jarabo et al., “Efficient Propagation of Light Field Edits”, In Proceedings of SIACG 2011, 2011, pp. 75-80.
Jiang et al., “Panoramic 3D Reconstruction Using Rotational Stereo Camera with Simple Epipolar Constraints”, 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'06), vol. 1, Jun. 17-22, 2006, New York, NY, USA, pp. 371-378.
Joshi, Color Calibration for Arrays of Inexpensive Image Sensors, Mitsubishi Electric Research Laboratories, Inc., TR2004-137, Dec. 2004, 6 pgs.
Joshi et al., “Synthetic Aperture Tracking: Tracking Through Occlusions”, I CCV IEEE 11th International Conference on Computer Vision; Publication [online]. Oct. 2007 [retrieved Jul. 28, 2014]. Retrieved from the Internet: <URL: http:l/ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4409032&isnumber=4408819>, pp. 1-8.
Jourabloo, “Large-Pose Face Alignment via CNN-Based Dense 3D Model Fitting”, I CCV IEEE 11th International Conference on Computer Vision; Publication [online]. Oct. 2007 [retrieved Jul. 28, 2014]. Retrieved from the Internet: <URL: http:l/ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4409032&isnumber=4408819>; pp. 1-8.
Kang et al., “Handling Occlusions in Dense Multi-view Stereo”, Computer Vision and Pattern Recognition, 2001, vol. 1, pp. 1-103-1-110.
Keeton, “Memory-Driven Computing”, Hewlett Packard Enterprise Company, Oct. 20, 2016, 45 pgs.
Kim, “Scene Reconstruction from a Light Field”, Master Thesis, Sep. 1, 2010 (Sep. 1, 2010), pp. 1-72.
Kim et al., “Scene reconstruction from high spatio-angular resolution light fields”, ACM Transactions on Graphics (TOG)—SIGGRAPH 2013 Conference Proceedings, vol. 32 Issue 4, Article 73, Jul. 21, 2013, 11 pages.
Kitamura et al., “Reconstruction of a high-resolution image on a compound-eye image-capturing system”, Applied Optics, Mar. 10, 2004, vol. 43, No. 8, pp. 1719-1727.
Kittler et al., “3D Assisted Face Recognition: A Survey of 3D Imaging, Modelling, and Recognition Approaches”, Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, Jul. 2005, 7 pgs.
Konolige, Kurt “Projected Texture Stereo”, 2010 IEEE International Conference on Robotics and Automation, May 3-7, 2010, pp. 148-155.
Kotsia et al., “Facial Expression Recognition in Image Sequences Using Geometric Deformation Features and Support Vector Machines”, IEEE Transactions on Image Processing, Jan. 2007, vol. 16, No. 1, pp. 172-187.
Krishnamurthy et al., “Compression and Transmission of Depth Maps for Image-Based Rendering”, Image Processing, 2001, pp. 828-831.
Kubota et al., “Reconstructing Dense Light Field From Array of Multifocus Images for Novel View Synthesis”, IEEE Transactions on Image Processing, vol. 16, No. 1, Jan. 2007, pp. 269-279.
Kutulakos et al., “Occluding Contour Detection Using Affine Invariants and Purposive Viewpoint Control”, Computer Vision and Pattern Recognition, Proceedings CVPR 94, Seattle, Washington, Jun. 21-23, 1994, 8 pgs.
Lai et al., “A Large-Scale Hierarchical Multi-View RGB-D Object Dataset”, Proceedings—IEEE International Conference on Robotics and Automation, Conference Date May 9-13, 2011, 8 pgs., DOI: 10.1109/ICRA.201135980382.
Lane et al., “A Survey of Mobile Phone Sensing”, IEEE Communications Magazine, vol. 48, Issue 9, Sep. 2010, pp. 140-150.
Lao et al., “3D template matching for pose invariant face recognition using 3D facial model built with isoluminance line based stereo vision”, Proceedings 15th International Conference on Pattern Recognition, Sep. 3-7, 2000, Barcelona, Spain, pp. 911-916.
Lee, “NFC Hacking: The Easy Way”, Defcon Hacking Conference, 2012, 24 pgs.
Lee et al., “Electroactive Polymer Actuator for Lens-Drive Unit in Auto-Focus Compact Camera Module”, ETRI Journal, vol. 31, No. 6, Dec. 2009, pp. 695-702.
Lee et al., “Nonlocal matting”, CVPR 2011, Jun. 20-25, 2011, pp. 2193-2200.
Lee et al., “Automatic Upright Adjustment of Photographs”, IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2012, pp. 877-884.
LensVector, “How LensVector Autofocus Works”, 2010, printed Nov. 2, 2012 from http://www.lensvector.com/overview.html, 1 pg.
Levin et al., “A Closed Form Solution to Natural Image Matting”, IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2006, vol. 1, pp. 61-68.
Levin et al., “Spectral Matting”, 2007 IEEE Conference on Computer Vision and Pattern Recognition, Jun. 17-22, 2007, Minneapolis, MN, USA, pp. 1-8.
Levoy, “Light Fields and Computational Imaging”, IEEE Computer Society, Sep. 1, 2006, vol. 39, Issue No. 8, pp. 46-55.
Levoy et al., “Light Field Rendering”, Proc. ADM SIGGRAPH '96, 1996, pp. 1-12.
Li et al., “A Hybrid Camera for Motion Deblurring and Depth Map Super-Resolution”, Jun. 23-28, 2008, IEEE Conference on Computer Vision and Pattern Recognition, 8 pgs. Retrieved from www.eecis.udel.edu/˜jye/lab_research/08/deblur-feng.pdf on Feb. 5, 2014.
Li et al., “Fusing Images with Different Focuses Using Support Vector Machines”, IEEE Transactions on Neural Networks, vol. 15, No. 6, Nov. 8, 2004, pp. 1555-1561.
Lim, “Optimized Projection Pattern Supplementing Stereo Systems”, 2009 IEEE International Conference on Robotics and Automation, May 12-17, 2009, pp. 2823-2829.
Liu et al., “Virtual View Reconstruction Using Temporal Information”, 2012 IEEE International Conference on Multimedia and Expo, 2012, pp. 115-120.
Lo et al., “Stereoscopic 3D Copy & Paste”, ACM Transactions on Graphics, vol. 29, No. 6, Article 147, Dec. 2010, pp. 147:1-147:10.
Ma et al., “Constant Time Weighted Median Filtering for Stereo Matching and Beyond”, ICCV '13 Proceedings of the 2013 IEEE International Conference on Computer Vision, IEEE Computer Society, Washington DC, USA, Dec. 1-8, 2013, 8 pgs.
Martinez et al., “Simple Telemedicine for Developing Regions: Camera Phones and Paper-Based Microfluidic Devices for Real-Time, Off-Site Diagnosis”, Analytical Chemistry (American Chemical Society), vol. 80, No. 10, May 15, 2008, pp. 3699-3707.
Mcguire et al., “Defocus video matting”, ACM Transactions on Graphics (TOG)—Proceedings of ACM SIGGRAPH 2005, vol. 24, Issue 3, Jul. 2005, pp. 567-576.
Medioni et al., “Face Modeling and Recognition in 3-D”, Proceedings of the IEEE International Workshop on Analysis and Modeling of Faces and Gestures, 2013, 2 pgs.
Merkle et al., “Adaptation and optimization of coding algorithms for mobile 3DTV”, Mobile3DTV Project No. 216503, Nov. 2008, 55 pgs.
Michael et al., “Real-time Stereo Vision: Optimizing Semi-Global Matching”, 2013 IEEE Intelligent Vehicles Symposium (IV), IEEE, Jun. 23-26, 2013, Australia, 6 pgs.
Milella et al., “3D reconstruction and classification of natural environments by an autonomous vehicle using multi-baseline stereo”, Intelligent Service Robotics, vol. 7, No. 2, Mar. 2, 2014, pp. 79-92.
Min et al., “Real-Time 3D Face Identification from a Depth Camera”, Proceedings of the IEEE International Conference on Pattern Recognition, Nov. 11-15, 2012, 4 pgs.
Mitra et al., “Light Field Denoising, Light Field Superresolution and Stereo Camera Based Refocussing using a GMM Light Field Patch Prior”, Computer Vision and Pattern Recognition Workshops (CVPRW), 2012 IEEE Computer Society Conference on Jun. 16-21, 2012, pp. 22-28.
Moreno-Noguer et al., “Active Refocusing of Images and Videos”, ACM Transactions on Graphics (TOG)—Proceedings of ACM SIGGRAPH 2007, vol. 26, Issue 3, Jul. 2007, 10 pgs.
Muehlebach, “Camera Auto Exposure Control for VSLAM Applications”, Studies on Mechatronics, Swiss Federal Institute of Technology Zurich, Autumn Term 2010 course, 67 pgs.
Nayar, “Computational Cameras: Redefining the Image”, IEEE Computer Society, Aug. 14, 2006, pp. 30-38.
Ng, “Digital Light Field Photography”, Thesis, Jul. 2006, 203 pgs.
Ng et al., “Super-Resolution Image Restoration from Blurred Low-Resolution Images”, Journal of Mathematical Imaging and Vision, 2005, vol. 23, pp. 367-378.
Ng et al., “Light Field Photography with a Hand-held Plenoptic Camera”, Stanford Tech Report CTSR 2005-02, Apr. 20, 2005, pp. 1-11.
Nguyen et al., “Image-Based Rendering with Depth Information Using the Propagation Algorithm”, Proceedings. (ICASSP '05). IEEE International Conference on Acoustics, Speech, and Signal Processing, 2005, vol. 5, Mar. 23-23, 2005, pp. II-589-II-592.
Nguyen et al., “Error Analysis for Image-Based Rendering with Depth Information”, IEEE Transactions on Image Processing, vol. 18, Issue 4, Apr. 2009, pp. 703-716.
Nishihara, H.K. “Prism: A Practical Real-Time Imaging Stereo Matcher”, Massachusetts Institute of Technology, A.I. Memo 780, May 1984, 32 pgs.
Nitta et al., “Image reconstruction for thin observation module by bound optics by using the iterative backprojection method”, Applied Optics, May 1, 2006, vol. 45, No. 13, pp. 2893-2900.
Nomura et al., “Scene Collages and Flexible Camera Arrays”, Proceedings of Eurographics Symposium on Rendering, Jun. 2007, 12 pgs.
Park et al., “Super-Resolution Image Reconstruction”, IEEE Signal Processing Magazine, May 2003, pp. 21-36.
Park et al., “Multispectral Imaging Using Multiplexed Illumination”, 2007 IEEE 11th International Conference on Computer Vision, Oct. 14-21, 2007, Rio de Janeiro, Brazil, pp. 1-8.
Park et al., “3D Face Reconstruction from Stereo Video”, First International Workshop on Video Processing for Security, Jun. 7-9, 2006, Quebec City, Canada, 2006, 8 pgs.
Parkkinen et al., “Characteristic Spectra of Munsell Colors”, Journal of the Optical Society of America A, vol. 6, Issue 2, Feb. 1989, pp. 318-322.
Perwass et al., “Single Lens 3D-Camera with Extended Depth-of-Field”, printed from www.raytrix.de, Jan. 22, 2012, 15 pgs.
Pham et al., “Robust Super-Resolution without Regularization”, Journal of Physics: Conference Series 124, Jul. 2008, pp. 1-19.
Philips 3D Solutions, “3D Interface Specifications, White Paper”, Feb. 15, 2008, 2005-2008 Philips Electronics Nederland B.V., Philips 3D Solutions retrieved from www.philips.com/3dsolutions, 29 pgs.
Polight, “Designing Imaging Products Using Reflowable Autofocus Lenses”, printed Nov. 2, 2012 from http://www.polight.no/tunable-polymer-autofocus-lens-html--11.html, 1 pg.
Pouydebasque et al., “Varifocal liquid lenses with integrated actuator, high focusing power and low operating voltage fabricated on 200 mm wafers”, Sensors and Actuators A: Physical, vol. 172, Issue 1, Dec. 2011, pp. 280-286.
Protter et al., “Generalizing the Nonlocal-Means to Super-Resolution Reconstruction”, IEEE Transactions on Image Processing, Dec. 2, 2008, vol. 18, No. 1, pp. 36-51.
Radtke et al., “Laser lithographic fabrication and characterization of a spherical artificial compound eye”, Optics Express, Mar. 19, 2007, vol. 15, No. 6, pp. 3067-3077.
Rajan et al., “Simultaneous Estimation of Super Resolved Scene and Depth Map from Low Resolution Defocused Observations”, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 25, No. 9, Sep. 8, 2003, pp. 1-16.
Rander et al., “Virtualized Reality: Constructing Time-Varying Virtual Worlds from Real World Events”, Proc. of IEEE Visualization '97, Phoenix, Arizona, Oct. 19-24, 1997, pp. 277-283, 552.
Ranjan et al., “HyperFace: A Deep Multi-Task Learning Framework for Face Detection, Landmark Localization, Pose Estimation, and Gender Recognition”, May 11, 2016 (May 11, 2016), pp. 1-16.
Rhemann et al., “Fast Cost-vol. Filtering for Visual Correspondence and Beyond”, IEEE Trans. Pattern Anal. Mach. Intell, 2013, vol. 35, No. 2, pp. 504-511.
Rhemann et al., “A perceptually motivated online benchmark for image matting”, 2009 IEEE Conference on Computer Vision and Pattern Recognition, Jun. 20-25, 2009, Miami, FL, USA, pp. 1826-1833.
Robert et al., “Dense Depth Map Reconstruction: A Minimization and Regularization Approach which Preserves Discontinuities”, European Conference on Computer Vision (ECCV), pp. 439-451, (1996).
Robertson et al., “Dynamic Range Improvement Through Multiple Exposures”, In Proc. of the Int. Conf. on Image Processing, 1999, 5 pgs.
Robertson et al., “Estimation-theoretic approach to dynamic range enhancement using multiple exposures”, Journal of Electronic Imaging, Apr. 2003, vol. 12, No. 2, pp. 219-228.
Roy et al., “Non-Uniform Hierarchical Pyramid Stereo for Large Images”, Computer and Robot Vision, 2002, pp. 208-215.
Rusinkiewicz et al., “Real-Time 3D Model Acquisition”, ACM Transactions on Graphics (TOG), vol. 21, No. 3, Jul. 2002, pp. 438-446.
Saatci et al., “Cascaded Classification of Gender and Facial Expression using Active Appearance Models”, IEEE, FGR'06, 2006, 6 pgs.
Sauer et al., “Parallel Computation of Sequential Pixel Updates in Statistical Tomographic Reconstruction”, ICIP 1995 Proceedings of the 1995 International Conference on Image Processing, Date of Conference: Oct. 23-26, 1995, pp. 93-96.
Scharstein et al., “High-Accuracy Stereo Depth Maps Using Structured Light”, IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR 2003), Jun. 2003, vol. 1, pp. 195-202.
Seitz et al., “Plenoptic Image Editing”, International Journal of Computer Vision 48, Conference Date Jan. 7, 1998, 29 pgs., DOI: 10.1109/ICCV.1998.710696 · Source: DBLP Conference: Computer Vision, Sixth International Conference.
Shechtman et al., “Increasing Space-Time Resolution in Video”, European Conference on Computer Vision, LNCS 2350, May 28-31, 2002, pp. 753-768.
Shotton et al., “Real-time human pose recognition in parts from single depth images”, CVPR 2011, Jun. 20-25, 2011, Colorado Springs, CO, USA, pp. 1297-1304.
Shum et al., “Pop-Up Light Field: An Interactive Image-Based Modeling and Rendering System”, Apr. 2004, ACM Transactions on Graphics, vol. 23, No. 2, pp. 143-162, Retrieved from http://131.107.65.14/en-us/um/people/jiansun/papers/PopupLightField_TOG.pdf on Feb. 5, 2014.
Shum et al., “A Review of Image-based Rendering Techniques”, Visual Communications and Image Processing 2000, May 2000, 12 pgs.
Sibbing et al., “Markerless reconstruction of dynamic facial expressions”, 2009 IEEE 12TH International Conference on Computer Vision Workshops, ICCV Workshop: Kyoto, Japan, Sep. 27-Oct. 4, 2009, Institute of Electrical and Electronics Engineers, Piscataway, NJ, Sep. 27, 2009 (Sep. 27, 2009), pp. 1778-1785.
Silberman et al., “Indoor segmentation and support inference from RGBD images”, ECCV'12 Proceedings of the 12th European conference on Computer Vision, vol. Part V, Oct. 7-13, 2012, Florence, Italy, pp. 746-760.
Stober, “Stanford researchers developing 3-D camera with 12,616 lenses”, Stanford Report, Mar. 19, 2008, Retrieved from: http://news.stanford.edu/news/2008/march19/camera-031908.html, 5 pgs.
Stollberg et al., “The Gabor superlens as an alternative wafer-level camera approach inspired by superposition compound eyes of nocturnal insects”, Optics Express, Aug. 31, 2009, vol. 17, No. 18, pp. 15747-15759.
Sun et al., “Image Super-Resolution Using Gradient Profile Prior”, 2008 IEEE Conference on Computer Vision and Pattern Recognition, Jun. 23-28, 2008, 8 pgs.; DOI: 10.1109/CVPR.2008.4587659.
Taguchi et al., “Rendering-Oriented Decoding for a Distributed Multiview Coding System Using a Coset Code”, Hindawi Publishing Corporation, EURASIP Journal on Image and Video Processing, vol. 2009, Article ID 251081, Online: Apr. 22, 2009, 12 pgs.
Takeda et al., “Super-resolution Without Explicit Subpixel Motion Estimation”, IEEE Transaction on Image Processing, Sep. 2009, vol. 18, No. 9, pp. 1958-1975.
Tallon et al., “Upsampling and Denoising of Depth Maps via Joint-Segmentation”, 20th European Signal Processing Conference, Aug. 27-31, 2012, 5 pgs.
Tanida et al., “Thin observation module by bound optics (TOMBO): concept and experimental verification”, Applied Optics, Apr. 10, 2001, vol. 40, No. 11, pp. 1806-1813.
Tanida et al., “Color imaging with an integrated compound imaging system”, Optics Express, Sep. 8, 2003, vol. 11, No. 18, pp. 2109-2117.
Tao et al., “Depth from Combining Defocus and Correspondence Using Light-Field Cameras”, ICCV '13 Proceedings of the 2013 IEEE International Conference on Computer Vision, Dec. 1, 2013, pp. 673-680.
Taylor, “Virtual camera movement: The way of the future?”, American Cinematographer, vol. 77, No. 9, Sep. 1996, pp. 93-100.
Tseng et al., “Automatic 3-D depth recovery from a single urban-scene image”, 2012 Visual Communications and Image Processing, Nov. 27-30, 2012, San Diego, CA, USA, pp. 1-6.
Uchida et al., 3D Face Recognition Using Passive Stereo Vision, IEEE International Conference on Image Processing 2005, Sep. 14, 2005, 4 pgs.
Vaish et al., “Reconstructing Occluded Surfaces Using Synthetic Apertures: Stereo, Focus and Robust Measures”, 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'06), vol. 2, Jun. 17-22, 2006, pp. 2331-2338.
Vaish et al., “Using Plane + Parallax for Calibrating Dense Camera Arrays”, IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2004, 8 pgs.
Vaish et al., “Synthetic Aperture Focusing Using a Shear-Warp Factorization of the Viewing Transform”, IEEE Workshop on A3DISS, CVPR, 2005, 8 pgs.
Van Der Wal et al., “The Acadia Vision Processor”, Proceedings Fifth IEEE International Workshop on Computer Architectures for Machine Perception, Sep. 13, 2000, Padova, Italy, pp. 31-40.
Veilleux, “CCD Gain Lab: The Theory”, University of Maryland, College Park—Observational Astronomy (ASTR 310), Oct. 19, 2006, pp. 1-5 (online], [retrieved on May 13, 2014]. Retrieved from the Internet <URL: http://www.astro.umd.edu/˜veilleux/ASTR310/fall06/ccd_theory.pdf, 5 pgs.
Venkataraman et al., “PiCam: An Ultra-Thin High Performance Monolithic Camera Array”, ACM Transactions on Graphics (TOG), ACM, US, vol. 32, No. 6, 1 Nov. 1, 2013, pp. 1-13.
Vetro et al., “Coding Approaches for End-To-End 3D TV Systems”, Mitsubishi Electric Research Laboratories, Inc., TR2004-137, Dec. 2004, 6 pgs.
Viola et al., “Robust Real-time Object Detection”, Cambridge Research Laboratory, Technical Report Series, Compaq, CRL 2001/01, Feb. 2001, Printed from: http://www.hpl.hp.com/techreports/Compaq-DEC/CRL-2001-1.pdf, 30 pgs.
Vuong et al., “A New Auto Exposure and Auto White-Balance Algorithm to Detect High Dynamic Range Conditions Using CMOS Technology”, Proceedings of the World Congress on Engineering and Computer Science 2008, WCECS 2008, Oct. 22-24, 2008, 5 pgs.
Wang, “Calculation of Image Position, Size and Orientation Using First Order Properties”, Dec. 29, 2010, OPTI521 Tutorial, 10 pgs.
Wang et al., “Soft scissors: an interactive tool for realtime high quality matting”, ACM Transactions on Graphics (TOG)—Proceedings of ACM SIGGRAPH 2007, vol. 26, Issue 3, Article 9, Jul. 2007, 6 pg., published Aug. 5, 2007.
Wang et al., “Automatic Natural Video Matting with Depth”, 15th Pacific Conference on Computer Graphics and Applications, PG '07, Oct. 29-Nov. 2, 2007, Maui, HI, USA, pp. 469-472.
Wang et al., “Image and Video Matting: A Survey”, Foundations and Trends, Computer Graphics and Vision, vol. 3, No. 2, 2007, pp. 91-175.
Wang et al., “Facial Feature Point Detection: A Comprehensive Survey”, arXiv: 1410.1037v1, Oct. 4, 2014, 32 pgs.
Wetzstein et al., “Computational Plenoptic Imaging”, Computer Graphics Forum, 2011, vol. 30, No. 8, pp. 2397-2426.
Wheeler et al., “Super-Resolution Image Synthesis Using Projections Onto Convex Sets in the Frequency Domain”, Proc. SPIE, Mar. 11, 2005, vol. 5674, 12 pgs.
Widanagamaachchi et al., “3D Face Recognition from 2D Images: A Survey”, Proceedings of the International Conference on Digital Image Computing: Techniques and Applications, Dec. 1-3, 2008, 7 pgs.
Wieringa et al., “Remote Non-invasive Stereoscopic Imaging of Blood Vessels: First In-vivo Results of a New Multispectral Contrast Enhancement Technology”, Annals of Biomedical Engineering, vol. 34, No. 12, Dec. 2006, pp. 1870-1878, Published online Oct. 12, 2006.
Wikipedia, “Polarizing Filter (Photography)”, retrieved from http://en.wikipedia.org/wiki/Polarizing_filter_(photography) on Dec. 12, 2012, last modified on Sep. 26, 2012, 5 pgs.
Wilburn, “High Performance Imaging Using Arrays of Inexpensive Cameras”, Thesis of Bennett Wilburn, Dec. 2004, 128 pgs.
Wilburn et al., “High Performance Imaging Using Large Camera Arrays”, ACM Transactions on Graphics, Jul. 2005, vol. 24, No. 3, pp. 1-12.
Wilburn et al., “High-Speed Videography Using a Dense Camera Array”, Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2004. CVPR 2004., vol. 2, Jun. 27-Jul. 2, 2004, pp. 294-301.
Wilburn et al., “The Light Field Video Camera”, Proceedings of Media Processors 2002, SPIE Electronic Imaging, 2002, 8 pgs.
Wippermann et al., “Design and fabrication of a chirped array of refractive ellipsoidal micro-lenses for an apposition eye camera objective”, Proceedings of SPIE, Optical Design and Engineering II, Oct. 15, 2005, pp. 59622C-1-59622C-11.
Wu et al., “A virtual view synthesis algorithm based on image inpainting”, 2012 Third International Conference on Networking and Distributed Computing, Hangzhou, China, Oct. 21-24, 2012, pp. 153-156.
Xu, “Real-Time Realistic Rendering and High Dynamic Range Image Display and Compression”, Dissertation, School of Computer Science in the College of Engineering and Computer Science at the University of Central Florida, Orlando, Florida, Fall Term 2005, 192 pgs.
Yang et al., “Superresolution Using Preconditioned Conjugate Gradient Method”, Proceedings of SPIE—The International Society for Optical Engineering, Jul. 2002, 8 pgs.
Yang et al., “A Real-Time Distributed Light Field Camera”, Eurographics Workshop on Rendering (2002), published Jul. 26, 2002, pp. 1-10.
Yang et al., Model-based Head Pose Tracking with Stereovision, Microsoft Research, Technical Report, MSR-TR-2001-102, Oct. 2001, 12 pgs.
Yokochi et al., “Extrinsic Camera Parameter Estimation Based-on Feature Tracking and GPS Data”, 2006, Nara Institute of Science and Technology, Graduate School of Information Science, LNCS 3851, pp. 369-378.
Zbontar et al., Computing the Stereo Matching Cost with a Convolutional Neural Network, CVPR, 2015, pp. 1592-1599.
Zhang et al., “A Self-Reconfigurable Camera Array”, Eurographics Symposium on Rendering, published Aug. 8, 2004, 12 pgs.
Zhang et al., “Depth estimation, spatially variant image registration, and super-resolution using a multi-lenslet camera”, proceedings of SPIE, vol. 7705, Apr. 23, 2010, pp. 770505-770505-8, XP055113797 ISSN: 0277-786X, DOI: 10.1117/12.852171.
Zhang et al., “Spacetime Faces: High Resolution Capture for Modeling and Animation”, ACM Transactions on Graphics, 2004, 11pgs.
Zheng et al., “Balloon Motion Estimation Using Two Frames”, Proceedings of the Asilomar Conference on Signals, Systems and Computers, IEEE, Comp. Soc. Press, US, vol. 2 of 2, Nov. 4, 1991, pp. 1057-1061.
Zhu et al., “Fusion of Time-of-Flight Depth and Stereo for High Accuracy Depth Maps”, 2008 IEEE Conference on Computer Vision and Pattern Recognition, Jun. 23-28, 2008, Anchorage, AK, USA, pp. 1-8.
Zomet et al., “Robust Super-Resolution”, IEEE, 2001, pp. 1-6.
“File Formats Version 6”, Alias Systems, 2004, 40 pgs.
“Light fields and computational photography”, Stanford Computer Graphics Laboratory, Retrieved from: http://graphics.stanford.edu/projects/lightfield/, Earliest publication online: Feb. 10, 1997, 3 pgs.
“Exchangeable image file format for digital still cameras: Exif Version 2.2”_, Japan Electronics and Information Technology Industries Association, Prepared by Technical Standardization Committee on AV & IT Storage Systems and Equipment, JEITA CP-3451, Apr. 2002, Retrieved from: http://www.exif.org/Exif2-2.PDF, 154 pgs.
Alper, Mehmet Akif, et al. “Optical Flow Based Pose Estimation.” Proceedings of the 2018 2nd International Conference on Cloud and Big Data Computing. 2018, 4 pages.
An, Gwon Hwan, et al. “Charuco Board-Based Omnidirectional Camera Calibration Method.” Electronics 7.12 (2018): 421, 15 pages.
Atkinson, Gary A and Edwin R Hancock. Recovery of surface orientation from diffuse polarization. IEEE transactions on image processing, 15(6):1653-1664, 2006.
Avram, Oliver et al., “Trajectory Planning for Reconfigurable Industrial Robots Designed to Operate in a High Precision Manufacturing Industry,” ScienceDirect, 2016, pp. 461-466.
Bukschat, Yannick, and Marcus Vetter. “EfficientPose—An efficient, accurate and scalable end-to-end 6D multi object pose estimation approach.” arXiv preprint arXiv:2011.04307 (2020), 14 pages.
Campbell, Dylan, Liu, and Stephen Gould. “Solving the Blind Perspective-n-Point Problem End-To-End With Robust Differentiable Geometric Optimization.” European Conference on Computer Vision. Springer, Cham, 2020, pp. 1-18.
Dosovitskiy, Alexey, et al. “FlowNet: Learning optical flow with convolutional networks.” Proceedings of the IEEE international conference on computer vision. 2015, pp. 2758-2766.
Drost, Bertram, et al. “Model globally, match locally: Efficient and robust 3D object recognition.” 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. IEEE, 2010, 8 pages.
Förster, F et al., “Manufacturing of textile preforms with an intelligent draping and gripping system,” ScienceDirect, Procedia CIRP 66 (2017), pp. 39-44.
Garrido-Jurado, Sergio, et al. “Automatic generation and detection of highly reliable fiducial markers under occlusion.” Pattern Recognition 47.6 (2014): 390-402.
He, Kaiming, et al. “Mask R-CNN.” Proceedings of the IEEE International Conference on Computer Vision. 2017, pp. 2961-2969.
He, Kaiming, et al. “Deep Residual Learning for Image Recognition.” In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 770-778, 2016.
Higashimori, Mitsuru et al., “Design of the 100G Capturing Robot Based on Dynamic Preshaping,” The International Journal of Robotics Research, vol. 24, No. 9, Sep. 2005, pp. 743-753.
Hinterstoisser, Stefan, et al. “Model based training, detection and pose estimation of texture-less 3d objects in heavily cluttered scenes.” Asian conference on computer vision. Springer, Berlin, Heidelberg, 2012, 14 pages.
Horn, Berthold KP, and Brian G. Schunck. “Determining optical flow.” Artificial intelligence Laboratory Massachusetts Institute of Technology, A.1. Memo No. 572, Apr. 1980, 28 pages.
Howard, Andrew G., et al. “Mobilenets: Efficient Convolutional Neural Networks for Mobile Vision Applications.” arXiv preprint arXiv: 1704.04861 (2017), 9 pages.
Howard, Andrew, et al. “Searching for MobileNetV3.” Proceedings of the IEEE International Conference on Computer Vision. 2019, 11 pages.
Ilg, Eddy, et al. “FlowNet 2.0: Evolution of optical flow estimation with deep networks.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2017, pp. 2462-2470.
Krizhevsky, Alex, Ilya Sutskever, and Geoffrey E. Hinton. “ImageNet classification with deep convolutional neural networks.” Advances in neural information processing systems. 2012, 9 pages.
Labbé, Yann, et al. “CosyPose: Consistent multi-view multi-object 6D pose estimation.” European Conference on Computer Vision. Springer, Cham, 2020, 41 pages.
Lenz, Ian et al., “Deep Learning for Detecting Robotic Grasps,” The International Journal of Robotics Research 34.4-5 (2015), 8 pages.
Lepetit, Vincent, Francesc Moreno-Noguer, and Pascal Fua. “EPnP: An accurate O(n) solution to the PnP problem.” International Journal of Computer Vision 81.2 (2009), pp. 1-13.
Li, Yi, et al. “DeepIM: Deep iterative matching for 6d pose estimation.” Proceedings of the European Conference on Computer Vision (ECCV). 2018, pp. 1-16.
Liu, Qihao, et al. “Nothing But Geometric Constraints: A Model-Free Method for Articulated Object Pose Estimation.” arXiv preprint arXiv:2012.00088 (2020), pp. 1-10.
Mahler, Jeffrey et al., “Dex-Net 2.0: Deep Learning to Plan Robust Grasps with Synthetic Point Clouds and Analytic Grasp Metrics,” arXiv preprint arXiv:1703.09312 (2017), 12 pages.
Mo, An et al., “A Universal Gripper Base on Pivoted Pin Array with Chasing Tip” 11th International Conference, ICIRA 2018, 13 pages.
Mo, An et al., “A novel universal gripper based on meshed pin array,” International Journal of Advanced Robotic Systems, Mar.-Apr. 2019; 1-12.
Möller, Tomas, and Ben Trumbore. “Fast, minimum storage ray/triangle intersection.” Journal of graphics tools 2.1 (1997): 7 pages.
Montserrat, Daniel Mas, et al. “Multi-view matching network for 6d pose estimation.” arXiv preprint arXiv: 1911.12330 (2019), pp. 1-4.
Nakagaki, Ken et al., “Materiable: Rendering Dynamic Material Properties in Response to Direct Physical Touch with Shape Changing Interfaces,” Embodied Interaction, 2016, pp. 2764-2772.
Pauwels, Karl, et al. “Real-time model-based rigid object pose estimation and tracking combining dense and sparse visual cues.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2013, pp. 2347-2354.
Sandler, Mark, et al. “MobileNetV2: Inverted residuals and linear bottlenecks.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018, pp. 4510-4520.
Saxena, Ashutosh et al., “Robotic Grasping of Novel Objects using Vision,” The International Journal of Robotics Research 27.2 (2008), 15 pages.
Shao, Jianzhun, et al. “PFRL: Pose-Free Reinforcement Learning for 6D Pose Estimation.” Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020, pp. 11454-11463.
Shintake, Jun et al., “Soft Robotic Grippers,” Advanced Materials, 2018, 30, 1707035, 33 pages.
Simonyan, Karen, and Andrew Zisserman. “Very Deep Convolutional Networks for Large-Scale Image Recognition.” arXiv preprint arXiv: 1409.1556 (2014), 14 pages.
Song, Chen, Jiaru Song, and Qixing Huang. “Hybridpose: 6d object pose estimation under hybrid representations.” Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2020, pp. 431-440.
Trabelsi, Ameni, et al. “A Pose Proposal and Refinement Network for Better 6D Object Pose Estimation.” Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision. 2021, pp. 2382-2391.
Wang, Jingdong, et al. “Deep high-resolution representation learning for visual recognition.” IEEE transactions on pattern analysis and machine intelligence (2020), pp. 1-23.
Xiang, Yu, et al. “PoseCNN: A convolutional neural network for 6d object pose estimation in cluttered scenes.” arXiv preprint arXiv:1711.00199 (2017), 10 pages.
Xu, Haofei, and Juyong Zhang. “AANet: Adaptive aggregation network for efficient stereo matching.” Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020, pp. 1959-1968.
Ye, Shuang, et al. “Iterative optimization for frame-by-frame object pose tracking.” Journal of Visual Communication and Image Representation 44 (2017): 32 pages.
Yuan, Honglin, et al. “SHREC 2020 track: 6D object pose estimation.” arXiv preprint arXiv:2010.09355 (2020), 8 pages.
Zakharov, Sergey, Ivan Shugurov, and Slobodan Ilic. “DPOD: 6d pose object detector and refiner.” Proceedings of the IEEE/CVF International Conference on Computer Vision. 2019, pp. 1941-1950.
Zhao, Wanqing, et al. “Learning deep network for detecting 3D object keypoints and 6D poses.” Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2020, pp. 14134-14142.
International Preliminary Report on Patentability in International Appln. No. PCT/US2022/034532, dated Jan. 4, 2024, 14 pages.
Related Publications (1)
Number Date Country
20220405506 A1 Dec 2022 US