This Grid Slicer Demo allows users to extract 2D slices, at arbitrary inclinations, from a 3D gridded 1.6GB sample derived from the male data set of the Visible Human Project of the US National Library of Medicine. Briefly, this male cadaver was frozen in a blue gelatin solution, and then cryosectioned into 1871 parallel slices at 1mm intervals, each of which provided a high resolution colored image. (Note that there are three gaps in the data where the cadaver was cut with a saw into sections that would fit in the milling device for cryosectioning.) We subsampled this data set to form a 1.6GB solid image, since, while 1-2 GB is a typical size for 3D gridded data samples in various applications (e.g., geophysical prospecting for oil, gas, or minerals), efficient manipulation within a DBMS requires the type of technology demonstrated here. This demo allows users to extract from the database just the requested portion (an arbitrarily inclined slice) of the complete 1.6GB data set.
The Java applet (when fully initialized) has the following components aligned from top to bottom along the left hand side: slice orientation legend, wire and bead view, interpolate check box, hide blue check box, Fetch button, and Reset beads button.
The wire and bead view has a point-cloud depiction of the Visible Human's surface, surrounded by a 3D wireframe box. Positioned on the wires are three black beads that determine the orientation of a cutting plane that slices through the box. By dragging the beads to new locations, a new cutting plane can be defined. (Please note that beads can be dragged from wire to wire.) The red line indicates where the top edge of the extracted image will be sampled from, the green line the bottom edge, the blue line the right edge, and the gray line the left edge. Careful manipulation of the beads allows the production of an image that is right side up, upside down, on its side, or flipped across either axis. Three sliders are provided to re-orient the view of the wireframe box.
The interpolate check box enables bilinear interpolation when a grid is next extracted. It reduces the effects of aliasing at the cost of slightly greater extraction times. The hide blue check box removes the variegated blue background from the next extraction. Pressing the Fetch button causes the applet to send a request to the BCS server and display the results of that request as a raster image. Pressing the Reset beads button resets the beads to their original positions.
Note: it is possible to define cutting planes that don't have square corners or that extend outside the wire frame box. Such planes tend to produce images that are skewed and/or contain areas that are mostly black.
The Grid DataBlade - A Database Extension for Manipulating Gridded Data
Read more about the Grid DataBlade