Woolz Image Processing Version 1.4.0
Wlz3DProjection.c File Reference

Generates the projection or back-projection of a domain object from 3D to 2D and visa versa. More...

Defines

#define WLZ_FAST_CODE

Functions

WlzObjectWlzGetProjectionFromObject (WlzObject *obj, WlzThreeDViewStruct *viewStr, Wlz3DProjectionIntFn intFunc, void *intFuncData, WlzErrorNum *dstErr)
 Use the view transform to define a projection from 3D to 2D. Currently only the domain is projected as an opaque shadow. This is old code temporarily kept for compatibility.
WlzObjectWlzProjectObjToPlane (WlzObject *obj, WlzThreeDViewStruct *vStr, WlzProjectIntMode intMod, WlzUByte denDom, WlzUByte *denVal, WlzErrorNum *dstErr)
 Use the view transform to define a projection from 3D to 2D and then project the object onto this plane. The object supplied to this function must be a 3D spatial domain object (WLZ_3D_DOMAINOBJ) with either no values or for integration WLZ_GREY_UBYTE values. Integration will assign each output pixel the sum of all input voxels mapped via either the domain density or the voxel density. The integration is controled by the integrate parameter with valid values: WLZ_PROJECT_INT_MODE_NONE - a "shadow domain" without values is computed, WLZ_PROJECT_INT_MODE_DOMAIN - the voxels of the domain are integrated using

\[ p = \frac{1}{255} n d \]

WLZ_PROJECT_INT_MODE_VALUES - the voxel values are integrated using

\[ p = \frac{1}{255} \sum{l\left[v\right]}. \]

Where $p$ is the projected image value, $n$ is the number of voxels projected for $p$, $d$ is the density of domain voxels, $l$ is the voxel value density look up table and $v$ is a voxel value.


Detailed Description

Generates the projection or back-projection of a domain object from 3D to 2D and visa versa.

Author:
Bill Hill, Richard Baldock
Date:
June 2012
Version:
Id:
2bfd1d2cf848cb72148eef99a4131dd1ffd3e3cc
Address: MRC Human Genetics Unit, MRC Institute of Genetics and Molecular Medicine, University of Edinburgh, Western General Hospital, Edinburgh, EH4 2XU, UK.
Copyright (C), [2012], The University Court of the University of Edinburgh, Old College, Edinburgh, UK.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.


Define Documentation

#define WLZ_FAST_CODE