Editing VOL

From BRL-CAD

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 3: Line 3:
 
Information about the creation of a VOL primitive using '''in''' is available in the [[BRL-CAD Primitives#vol | list of primitives]].
 
Information about the creation of a VOL primitive using '''in''' is available in the [[BRL-CAD Primitives#vol | list of primitives]].
  
==Inserting volumetric data of a CT scan in MGED ==
+
==Inserting volume data of a CT scan in MGED ==
  
Stanford hosts an [http://graphics.stanford.edu/data/voldata/ archive of volumetric data] for testing purposes.
+
Stanford hosts an [http://graphics.stanford.edu/data/voldata/ archive of volume data] for testing purposes.
  
 
For this example, let's use the first set of data: "CT study of a cadaver head". It contains 113 files of two-dimensional data with a resolution of 256x256. Each file represents one slice, so we'll need to concatenate them into one file to be able to import it into MGED. In addition, the data is in the form of 16-bit unsigned integers, so we'll need to use '''cv''' to convert it into unsigned chars.
 
For this example, let's use the first set of data: "CT study of a cadaver head". It contains 113 files of two-dimensional data with a resolution of 256x256. Each file represents one slice, so we'll need to concatenate them into one file to be able to import it into MGED. In addition, the data is in the form of 16-bit unsigned integers, so we'll need to use '''cv''' to convert it into unsigned chars.
Line 20: Line 20:
  
 
  $ cat $(ls -v scanslices/*) > scandata16
 
  $ cat $(ls -v scanslices/*) > scandata16
 
Or, if '''ls''' doesn't support the '''-v''' flag:
 
 
$ cat $(for file in scanslices(CThead.{1..113}; do echo $file; done) > scandata16
 
  
 
Convert ''scandata16'' from 16-bit little-endian unsigned integers to big-endian unsigned chars using '''cv''' and write the data to ''scandata8'':
 
Convert ''scandata16'' from 16-bit little-endian unsigned integers to big-endian unsigned chars using '''cv''' and write the data to ''scandata8'':
Line 31: Line 27:
 
=== Importing into MGED ===
 
=== Importing into MGED ===
  
The data in ''scandata8'' should now be ready to be imported into MGED:
+
The data in ''scandata8'' should now be ready to be imported into MGED.
  
 
  mged> in
 
  mged> in
Line 40: Line 36:
 
  Enter lower threshold value: 8 255
 
  Enter lower threshold value: 8 255
 
  Enter X, Y, Z dimensions of a cell: 1 1 1
 
  Enter X, Y, Z dimensions of a cell: 1 1 1
 +
 +
ERROR: bad pointer 0x1cd74f0: s/b rt_ebm_internal(xf901b231), was rt_vol_internal(x987ba1d0), file /home/jordi/Escriptori/brlcad-7.24.2/src/librt/primitives/vol/vol.c, line 760
 +
 +
Whoops. I must have done something wrong.

Please note that all contributions to BRL-CAD may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see BRL-CAD:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)
Retrieved from "https://brlcad.org/wiki/VOL"