2016-06-01 12 views
1

В настоящее время у меня есть данные изображения CT человеческой головы. Он содержит 256 фрагментов в плоскости YZ, 256 фрагментов в плоскости XZ и 144 среза в плоскости XY.Как читать файл Structured_Points .vtk

Я планирую использовать OpenGL-ES 3.0 на Android для построения точек одного фрагмента на плоскости XY. Проблема в том, что я не уверен, как загрузить данные ASCII ниже в массивы и буферы. Я включил небольшой фрагмент файла.

# vtk DataFile Version 4.0 
vtk output 
ASCII 
DATASET STRUCTURED_POINTS 
DIMENSIONS 256 256 144 
SPACING 1 1 1 
ORIGIN 0 0 0 
POINT_DATA 9437184 
SCALARS ImageFile unsigned_short 
LOOKUP_TABLE default 
0 0 0 0 0 0 0 0 0 
0 0 0 0 0 0 0 0 0 
0 0 0 0 0 0 0 0 0 
0 0 0 0 0 0 0 0 0 

Как я могу понять данные, приведенные в таблице поиска?

EDIT: Я понимаю, как просматривать данные в таких программах, как Paraview. Я хотел бы понять, что данные на самом деле говорят мне, поэтому я могу создать собственный парсер и использовать OpenGL-ES для рисования 2D-фрагментов.

ответ

1

Вы пытались загрузить данные в VTK с помощью vtkDataReader? Насколько я понимаю, поскольку данные Structured Points являются подклассом vtkImageData, вы должны сделать что-то так же просто, как использовать vtk в Python.

import vtk 
from vtk.util import numpy_support 

path = 'path_to_file.vtk' 

reader = vtk.vtkDataReader() 
reader.SetFileName(path) 

img = vtk.vtkImageData() 
array = numpy_support.vtk_to_numpy(img) 

#z_plane of choice 
z = 10 
plane = array[:,:,10] 

похож код также будет работать, если он находится в C++ я просто с помощью GetScalarPointer или GetScalarComponentAsDouble функции и циклов по плоскости выбора данных вы знаете размеры от GetDimensions() и строительства vtkImageData или с помощью vtkImageReslice функции и передачи преобразований approriate

+0

Я понимаю, как просматривать данные, используя программное обеспечение, такое как Paraview. Моя проблема в том, что я хотел бы создать собственный парсер в Java. Я хочу прочитать каждый номер и сохранить его в массивах, а затем нарисую фрагменты с помощью OpenGL-ES. Проблема в том, что я не понимаю, что говорят мне структурированные моменты. – brohan322

+0

http://www.cacr.caltech.edu/~slombey/asci/vtk/vtk_formats.simple.html –