Patent ID: 7961958

Claim:
A method for rendering a binary volume in a graphics processing unit (GPU), comprising: receiving gray volume data; deriving a binary volume from the gray volume data; storing every eight adjacent bits of the binary volume along an x-axis in a separate byte of a GPU's memory to form a compact representation of the binary volume; generating a two-dimensional decoding table of the compact representation of the binary volume; and rendering the compact representation of the binary volume, wherein the rendering comprises: extracting a byte including a bit of interest from the compact representation of the binary volume; computing a bit coordinate indicating a location of the bit of interest; using the bit coordinate and its corresponding byte as lookup values in the decoding table to extract a decoded value of the bit of interest; fetching an interpolated data value of the bit of interest from the gray volume data by using original texture coordinates of the bit of interest and assigning color and opacity values to the interpolated data value; multiplying the decoded value of the bit of interest by the interpolated data value to form a resultant value; and blending the resultant value into the GPU's frame buffer, and wherein computing a bit coordinate indicating a location of the bit of interest comprises: multiplying original texture coordinates of a voxel of the gray volume data associated with the bit of interest on the x-axis by a factor that is computed by taking a fractional part of a number of voxels along the x-axis from where the bit of interest was extracted and dividing it by eight.