[vtkusers] Ideas for supporting categorical data

TJ Corona tj.corona at kitware.com
Fri Feb 24 12:57:31 EST 2017

Hi all,

I would like the VTK community’s feedback on how to provide better support for categorical data. As I understand it, the primary difference between ordinal and categorical data is how it should be interpolated. Currently, the interpolation scheme for active attributes (scalars, vectors, etc.) can be one of two methods: weighted interpolation (well-suited to ordinal data and inappropriate for categorical data) and nearest neighbor interpolation (applicable in both situations, but less accurate for ordinal data). The choice of interpolation method is accessible within a filter, but exposing this choice to the user who is constructing a pipeline is awkward at best and impossible in many cases (the user must access the output data object of a filter after the object is created but before the filter has executed and set the data attribute’s copy flag to the opaque value “2”; if a filter is internally composed of additional filters, this technique fails). 

One possibility to more natively support categorical data would be to assign a data array’s interpolation scheme to the data array itself, either at either run time or compile time. This approach would move the responsibility determining a data array’s data type from the filter to the data array itself; a filter would no longer need to imply the context of its input data. Since the technique of interpolation is currently handled by the data array and the data object’s data set attributes, this change would likely have an impact on the API of vtkAbstractArray and vtkDataSetAttributes, but should have no impact on the API of the filters themselves. This is just one suggestion, and I am eager to hear what everyone thinks. 


Thomas J. Corona, Ph.D.
Kitware, Inc.
R&D Engineer
21 Corporate Drive
Clifton Park, NY 12065-8662
Phone: 518-881-4443

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtkusers/attachments/20170224/e6d62e9e/attachment.html>

More information about the vtkusers mailing list