Face augmentation in video
US-12165275-B2 · Dec 10, 2024 · US
US10134169B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10134169-B2 |
| Application number | US-85560210-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 12, 2010 |
| Priority date | Sep 11, 2009 |
| Publication date | Nov 20, 2018 |
| Grant date | Nov 20, 2018 |
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.
One embodiment of the present invention sets forth a method for accessing texture objects stored within a texture memory. The method comprises the steps of receiving a texture bind request from an application program, wherein the texture bind request includes an object identifier that identifies a first texture object stored in the texture memory and an image identifier that identifies a first image unit, binding the first texture object to the first image unit based on the texture bind request, receiving, within a shader engine, a first shading program command from the application program for performing a first memory access operation on the first texture object, wherein the memory access operation is a store operation or atomic operation to an arbitrary location in the image, and performing, within the shader engine, the first memory access operation on the first texture object via the first image unit.
Opening claim text (preview).
We claim: 1. A non-transitory computer-readable storage medium including instructions that, when executed by a processor, perform the steps of: receiving a texture bind request from an application program, wherein the texture bind request includes an object identifier that identifies a first texture object stored in the texture memory and an image identifier that identifies a first image unit; binding the first texture object to the first image unit based on the texture bind request; receiving, within a shader engine, a first shading program command from the application program for performing a first memory access operation on the first texture object, wherein the first shading program command includes an image uniform variable that references the first image unit and has a first texture dimensionality, and wherein the memory access operation is a store operation or an atomic operation to an arbitrary location in the first image unit; and performing, within the shader engine, the first memory access operation on a texel included within the first texture object via the first image unit, wherein a format of coordinates of the texel is determined based on the first texture dimensionality. 2. The non-transitory computer-readable storage medium of claim 1 , wherein the first texture object is a multi-layer texture object, and the texture bind request identifies one or more layers of the first texture object that are to be bound to the first image unit, wherein each layer corresponds to a different level of detail of the first texture object. 3. The non-transitory computer-readable storage medium of claim 1 , wherein the texture bind request specifies one or more types of memory access operations that can be performed on the first texture object via the first image unit. 4. The non-transitory computer-readable storage medium of claim 3 , wherein the step of performing the first memory access operation comprises determining that the first memory access operation is associated with one of the one or more types of memory access operations that can be performed on the first texture object. 5. The non-transitory computer-readable storage medium of claim 1 , wherein the first memory access operation identifies a first portion of the first texture object. 6. The non-transitory computer-readable storage medium of claim 5 , wherein the first memory access operation is a texture read operation, and the step of performing the first memory access operation comprises retrieving texture data from the first portion of the first texture object. 7. The non-transitory computer-readable storage medium of claim 5 , wherein the first memory access operation is a texture write operation, and the step of performing the first memory access operation comprises writing texture data to the first portion of the first texture object. 8. The non-transitory computer-readable storage medium of claim 7 , wherein the step of writing the texture data to the first portion comprises formatting the texture data according to a format specified by the texture bind request. 9. The non-transitory computer-readable storage medium of claim 5 , wherein the first memory access operation is a texture atomic operation, and the step of performing the first memory access operation comprises: loading texture data stored in the first portion of the texture object; performing an arithmetic operation on the texture data; writing the result of the arithmetic operation to the first portion of the first texture object; and returning the texture data to the shader engine. 10. The non-transitory computer-readable storage medium of claim 5 , wherein the first portion of the texture object is identified by a set of integer coordinates. 11. The non-transitory computer-readable storage medium of claim 1 , wherein the shader engine is any shader engine included within a graphics processing pipeline. 12. The non-transitory computer-readable storage medium of claim 1 , wherein the first image unit is selected according to a value computed by a second shading program command. 13. A method for accessing texture objects stored within a texture memory, the method comprising: receiving a texture bind request from an application program, wherein the texture bind request includes an object identifier that identifies a first texture object stored in the texture memory and an image identifier that identifies a first image unit; binding the first texture object to the first image unit based on the texture bind request; receiving, within a shader engine, a first shading program command from the application program for performing a first memory access operation on the first texture object, wherein the first shading program command includes an image uniform variable that references the first image unit and has a first texture dimensionality, and wherein the memory access operation is a store operation or an atomic operation to an arbitrary location in the first image unit; and performing, within the shader engine, the first memory access operation on a texel included within the first texture object via the first image unit, wherein a format of coordinates of the texel is determined based on the first texture dimensionality. 14. The method of claim 13 , wherein the first texture object is a multi-layer texture object, and the texture bind request identifies one or more layers of the first texture object that are to be bound to the first image unit, wherein each layer corresponds to a different level of detail of the first texture object. 15. The method of claim 13 , wherein the texture bind request specifies one or more types of memory access operations that can be performed on the first texture object via the first image unit. 16. The method of claim 13 , wherein the first memory access operation identifies a first portion of the first texture object. 17. The method of claim 16 , wherein the first memory access operation is a texture read operation, and the step of performing the first memory access operation comprises retrieving texture data from the first portion of the first texture object. 18. The method of claim 16 , wherein the first memory access operation is a texture write operation, and the step of performing the first memory access operation comprises writing texture data to the first portion of the first texture object. 19. The method of claim 18 , wherein the step of writing the texture data to the first portion comprises formatting the texture data according to a format specified by the texture bind request. 20. The method of claim 16 , wherein the first memory access operation is a texture atomic operation, and the step of performing the first memory access operation comprises: loading texture data stored in the first portion of the texture object; performing an arithmetic operation on the texture data; writing the result of the arithmetic operation to the first portion of the first texture object; and returning the texture data to the shader engine. 21. The method of claim 13 , wherein the shader engine is any shader engine included within a graphics processing pipeline. 22. A computer system, comprising: a memory; and a processor configured to: receive a texture bind request from an application program, wherein the texture bind request includes an object identifier that identifies a first texture object stored in the texture memory and an image identifier that identifies a first image unit; bind the first texture object to the fi
based on arbitration (arbitration in handling access to a common bus or bus system G06F13/36) · CPC title
General purpose rendering architectures · CPC title
Shading · CPC title
Graphics controllers · CPC title
Processor architectures; Processor configuration, e.g. pipelining · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.