|
Grangeat-based 2D/3D image registration
|
A 3D texture stored for access by the CPU, structured for storing an even distribution of values over the surface of S^2, according to the HEALPix mapping. ToDo: citation here. More...
#include <SinogramHEALPix.h>
Public Types | |
| using | Base = texture_t |
| using | IntType = typename Base::IntType |
| using | FloatType = typename Base::FloatType |
| using | SizeType = typename Base::SizeType |
| using | VectorType = typename Base::VectorType |
| using | AddressModeType = typename Base::AddressModeType |
Public Member Functions | |
| SinogramHEALPix ()=default | |
| SinogramHEALPix (Base texture) | |
| Construct the texture with data. | |
| SinogramHEALPix (const SinogramHEALPix &)=default | |
| SinogramHEALPix & | operator= (const SinogramHEALPix &)=default |
| SinogramHEALPix (SinogramHEALPix &&)=default | |
| SinogramHEALPix & | operator= (SinogramHEALPix &&)=default |
| __host__ __device__ float | Sample (const VectorType &rThetaPhi) const |
Static Public Member Functions | |
| static SinogramHEALPix | FromTensor (const at::Tensor &tensor, FloatType rSpacing) |
| static SinogramHEALPix | FromCUDAHandle (int64_t textureHandle, const Vec< int64_t, 3 > &sizeUVR, FloatType rSpacing) |
A 3D texture stored for access by the CPU, structured for storing an even distribution of values over the surface of S^2, according to the HEALPix mapping. ToDo: citation here.
| texture_t |
Texture sampling is done using spherical coordinates $(r, \theta, \phi)$, but only the first dimension $r$ actually corresponds to the texture coordinate in the volume data. Across two dimensions the values are stored according to a rectangular tesselation of the HEALPix spherical projection.
This object does not own the data it provides access to, it just holds a pointer to it
Both copy and move-constructable.
| using reg23::SinogramHEALPix< texture_t >::AddressModeType = typename Base::AddressModeType |
| using reg23::SinogramHEALPix< texture_t >::Base = texture_t |
| using reg23::SinogramHEALPix< texture_t >::FloatType = typename Base::FloatType |
| using reg23::SinogramHEALPix< texture_t >::IntType = typename Base::IntType |
| using reg23::SinogramHEALPix< texture_t >::SizeType = typename Base::SizeType |
| using reg23::SinogramHEALPix< texture_t >::VectorType = typename Base::VectorType |
|
default |
|
inlineexplicit |
Construct the texture with data.
| texture |
|
default |
|
default |
|
inlinestatic |
| textureHandle | |
| sizeUVR | |
| rSpacing | The spacing between each HEALPix sphere |
|
inlinestatic |
| tensor | A 3D tensor of torch.float32s |
| rSpacing | The spacing between each HEALPix sphere |
|
default |
|
default |
|
inline |
| rThetaPhi | The location at which to sample in spherical coordinates |