Robotic Microtool Control in an Intelligent Automated In Vitro Fertilization and Intracytoplasmic Sperm Injection Platform
US-2024426856-A1 · Dec 26, 2024 · US
US9269003B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9269003-B2 |
| Application number | US-201414225157-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 25, 2014 |
| Priority date | Apr 30, 2013 |
| Publication date | Feb 23, 2016 |
| Grant date | Feb 23, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Disclosed embodiments pertain to apparatus, systems, and methods for mixed reality. In some embodiments, a camera pose relative to a tracked object in a live image may be determined and used to render synthetic images from keyframes in a 3D model without the tracked object. Optical flow magnitudes for pixels in a first mask region relative to a subset of the synthetic images may be determined and the optical flow magnitudes may be used to determine pixels in each of the subset of synthetic images that correspond to pixels in the first mask. For each pixel in the first mask, a corresponding replacement pixel may be determined as a function of pixels in the subset of synthetic images that correspond to the corresponding pixel in the first mask.
Opening claim text (preview).
What is claimed is: 1. A processor-implemented method comprising: obtaining a plurality of live images, the plurality of live images comprising a tracked object; determining, for a live image in the plurality of live images, a camera pose relative to the tracked object, wherein the camera pose is determined using Simultaneous Localization and Mapping (SLAM) based techniques; rendering, based on the camera pose, a plurality of synthetic images without the tracked object, each synthetic image obtained from a distinct keyframe in a 3D model; comparing the live image and at least one of the plurality of synthetic images to determine a first mask region associated with the tracked object; computing optical flow magnitudes for a plurality of pixels in the first mask region associated with the tracked object relative to a subset of synthetic images in the plurality of synthetic images; determining, for each of the plurality of pixels in a first mask corresponding to the first mask region, a corresponding pixel in each synthetic image of the subset of synthetic images based, in part, on the optical flow magnitude; and determining replacement pixels for the plurality of pixels in the first mask, each replacement pixel corresponding to a distinct pixel in the first mask, wherein each replacement pixel is determined as a function of the corresponding pixels in the subset of synthetic images that correspond to the pixel in the first mask. 2. The method of claim 1 , further comprising rendering a diminished reality image, the diminished reality image obtained based, at least in part, on the replacement pixels. 3. The method of claim 2 , further comprising: rendering a virtual object in the first mask region, the virtual object being rendered based on the current camera pose. 4. The method of claim 3 , wherein rendering the virtual object in the first mask region comprises: rendering a virtual representation of at least one known real object in the live image, into a virtual z-buffer, the real object at least partially in the first mask; resolving occlusions between the at least one known real object and the virtual object in the virtual z-buffer; and warping the virtual z-buffer to match the image, the warping based, in part, on an optical flow between the virtual representation of the at least one known real object and the at least one real object in the image. 5. The method of claim 1 , wherein determining the corresponding pixel in each synthetic image of the subset of synthetic images comprises: obtaining, for each of the plurality of pixels in the first mask, a displacement correction and an intensity correction based, in part, on the optical flow magnitude. 6. The method of claim 1 , wherein: each replacement pixel is determined as a weighted average of corresponding pixels in the subset of synthetic images, wherein a weight associated with a corresponding pixel in a synthetic image in the subset of synthetic images, is based, in part, on the optical flow magnitude for the corresponding pixel, and an angular displacement between the live image and the synthetic image associated with the corresponding pixel. 7. The method of claim 6 , wherein the first mask (M′) region comprises a second mask region (M) around the tracked object and wherein the optical flow magnitude for each replacement pixel in M is determined by scattered data interpolation from a boundary of M′-M. 8. The method of claim 1 , wherein the plurality of synthetic images and the subset of the plurality of synthetic images each comprise three synthetic images. 9. A Mobile Station (MS) comprising: a camera configured to capture a plurality of live images comprising a tracked object, a memory, the memory to store a 3D model comprising a plurality of keyframes, and a processor coupled to the camera and the memory, wherein the processor is configured to: determine, for a live image in the plurality of live images, a camera pose relative to the tracked object, wherein the camera pose is determined using Simultaneous Localization and Mapping (SLAM) based techniques; render, based on the camera pose, a plurality of synthetic images without the tracked object, each synthetic image obtained from a distinct keyframe; compare the live image and at least one of the plurality of synthetic images to determine a first mask region associated with the tracked object; compute optical flow magnitudes for a plurality of pixels in the first mask region associated with the tracked object relative to a subset of synthetic images in the plurality of synthetic images; determine, for each of the plurality of pixels in a first mask corresponding to the first mask region, a corresponding pixel in each synthetic image of the subset of synthetic images based, in part, on the optical flow magnitude; and determine replacement pixels for the plurality of pixels in the first mask, each replacement pixel corresponding to a distinct pixel in the first mask, wherein each replacement pixel is determined as a function of the corresponding pixels in the subset of synthetic images that correspond to the pixel in the first mask. 10. The MS of claim 9 , wherein the processor is further configured to: render a diminished reality image, the diminished reality image obtained based, at least in part, on the replacement pixels. 11. The MS of claim 10 , wherein the processor is further configured to: render a virtual object in the first mask region, the virtual object being rendered based on the current camera pose. 12. The MS of claim 11 , wherein to render the virtual object in the first mask region, the processor is configured to: render a virtual representation of at least one known real object in the live image, into a virtual z-buffer, the real object at least partially in the first mask; resolve occlusions between the at least one known real object and the virtual object in the virtual z-buffer; and warp the virtual z-buffer to match the image, the warping based, in part, on an optical flow between the virtual representation of the at least one known real object and the at least one real object in the image. 13. The MS of claim 9 , wherein to determine the corresponding pixel in each synthetic image of the subset of synthetic images, the processor is configured to: obtain, for each of the plurality of pixels in the first mask, a displacement correction and an intensity correction based, in part, on the optical flow magnitude. 14. The MS of claim 9 , wherein: each replacement pixel is determined as a weighted average of corresponding pixels in the subset of synthetic images, wherein a weight associated with a corresponding pixel in a synthetic image in the subset of synthetic images, is based, in part, on the optical flow magnitude for the corresponding pixel, and an angular displacement between the live image and the synthetic image associated with the corresponding pixel. 15. The MS of claim 14 , wherein: the first mask (M′) region comprises a second mask region (M) around the tracked object and wherein the optical flow magnitude for each replacement pixel in M is determined by scattered data interpolation from a boundary of M′-M. 16. The MS of claim 9 , wherein the plurality of synthetic images and the subset of the plurality of synthetic images each comprise three synthetic images. 17. An apparatus comprising: imaging means, the imaging means to capture a plurality of live images comprising a tracked object, storage means, the storage means to store a 3D model comprising a plurality of keyframes, and processing me
Analysis of motion (motion estimation for coding, decoding, compressing or decompressing digital video signals H04N19/43, H04N19/51) · CPC title
Physics · mapped topic
Mixed reality (object pose determination, tracking or camera calibration for mixed reality G06T7/00) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.