IPAnalysis/IPGZ.h File Reference

#include "pstream.h"
#include <iostream>
#include <fstream>
#include <tiffio.h>
#include <vector>
#include <math.h>
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include "PixelArray.h"
#include "ParticleArray.h"

Namespaces

namespace  IPGZ

Defines

#define IP_COMPRESS   0
 Library to proide routines for input/output of TIFF images of colloidal particles and determination/tracking of colloidal particles.
#define IP_NONE   1
#define IP_DOT   0
#define IP_PLUS   1
#define IP_RED   0
#define IP_BLUE   1
#define IP_GREEN   2
#define IP_GRAY   3

Functions

void IPGZ::readTiff2Float2D (char *inFilename, PixelArray2D< float > *data, int channel)
 Method to read a TIFF file into an instance of the PixelArray2D class.
void IPGZ::readTiff2Float3D (char *inFilenamePattern, int min, int max, PixelArray3D< float > *data, int channel)
 Method to read a series of TIFF files into an instance of the PixelArray3D class.
void IPGZ::readTiff2Uint32 (char *inFilename, PixelArray2D< uint32 > *data)
 General routine to read a TIFF image as RGBA data into unsigned integer PixelArray2D. This is primarily called by other functions (readTiff2Float3D(), readTiff2Float2D()) and will not typically be called directly.
void IPGZ::readTiff2Uint32 (char *inFilename, uint32 *raster, uint32 width, uint32 height)
 General routine to read a TIFF image as RGBA data into unsigned integer array. This is primarily called by other functions and will not typically be called directly.
void IPGZ::writeFloat2Tiff2D (char *outFilename, PixelArray2D< float > *data, int R, int G, int B, int compress)
 Routine to write floating point information stored in the PixelArray2D class to a TIFF file.
void IPGZ::writeFloat2Tiff2D (char *outFilename, PixelArray2D< float > *data1, int R1, int G1, int B1, PixelArray2D< float > *data2, int R2, int G2, int B2, int compress)
 Routine to merge floating point information stored in two instances of the PixelArray2D class and write to a TIFF file.
void IPGZ::writeOverlay2Tiff (char *inFilename, char *outFilename, PixelArray2D< bool > *data, int R, int G, int B, int compress, int outputStyle)
 Routine to read in a TIFF file and selectively overwrite certain information corresponding to particle positions and then write to a tiff file.
void IPGZ::writeOverlay2Tiff3D (char *inFilenamePattern, int min, int max, char *outFilenamePattern, PixelArray3D< bool > *data, int R, int G, int B, int compress, int outputStyle)
 Routine to read in a series of TIFF images and selectively overwrite certain information corresponding to particle positions and then write out corresponding tiff file.
void IPGZ::writeIntensity2Tiff (char *outFilename, PixelArray2D< bool > *data, int R, int G, int B, int compress, int outputStyle)
 Routine to write a TIFF file using intensity data to selectively overwrite certain pixels.
void IPGZ::minimumFilter2D (PixelArray2D< float > *inData, PixelArray2D< float > *outData, float minimumThreshold)
 Routine to remove background noise in 2D.
void IPGZ::minimumFilter3D (PixelArray3D< float > *inData, PixelArray3D< float > *outData, float minimumThreshold)
 Routine to remove background noise in 3D.
void IPGZ::normalize2D (PixelArray2D< float > *inData, PixelArray2D< float > *outData)
 Routine to normalize intensity by maximum value in 2D.
void IPGZ::normalize3D (PixelArray3D< float > *inData, PixelArray3D< float > *outData)
 Routine to normalize intensity by maximum value in 3D.
void IPGZ::invert2D (PixelArray2D< float > *inData, PixelArray2D< float > *outData)
 Routine to invert intensity in 2D.
void IPGZ::invert3D (PixelArray3D< float > *inData, PixelArray3D< float > *outData)
 Routine to invert intensity in 3D.
void IPGZ::gaussianMask2D (PixelArray2D< float > *rawData, PixelArray2D< float > *filteredData, int filterWidth, int filterHeight)
 Routine to apply a gaussian mask in 2D.
void IPGZ::gaussianMask2D (PixelArray2D< float > *rawData, PixelArray2D< float > *filteredData, int filterWidth, int filterHeight, float minimumThreshold)
 Routine to apply a gaussian mask in 2D with minimum threshold coarse-graining.
void IPGZ::gaussianMask3D (PixelArray3D< float > *rawData, PixelArray3D< float > *filteredData, int filterWidth, int filterHeight, int filterDepth)
 Routine to apply a gaussian mask in 3D.
void IPGZ::gaussianMask3D (PixelArray3D< float > *rawData, PixelArray3D< float > *filteredData, int filterWidth, int filterHeight, int filterDepth, float minimumThreshold)
 Routine to apply a gaussian mask in 3D with minimum threshold coarse-graining.
void IPGZ::gaussianMask3Dparallel (PixelArray3D< float > *rawData, PixelArray3D< float > *filteredData, int filterWidth, int filterHeight, int filterDepth, int numThreads)
 Routine to apply a gaussian mask in 3D with support for multiple processors.
void IPGZ::gaussianMask3Dparallel (PixelArray3D< float > *rawData, PixelArray3D< float > *filteredData, int filterWidth, int filterHeight, int filterDepth, float minimumThreshold, int numThreads)
 Routine to apply a gaussian mask in 3D with minimum threshold coarse-graining and support for multiple processors.
void IPGZ::gaussianMask3DStartFinish (PixelArray3D< float > *rawData, PixelArray3D< float > *filteredData, int filterWidth, int filterHeight, int filterDepth, float minimumThreshold, int start, int finish)
 Routine to apply a gaussian mask in 3D with minimum threshold coarse-graining.
void IPGZ::gaussianMask3DStartFinish (PixelArray3D< float > *rawData, PixelArray3D< float > *filteredData, int filterWidth, int filterHeight, int filterDepth, int start, int finish)
 Routine to apply a gaussian mask in 3D.
void * IPGZ::launchThreadGaussianMaskMin3D (void *data)
 Method lauched when creating new threads for the gaussian mask calculation with minimum threshold coarse-graining.
void * IPGZ::launchThreadGaussianMask3D (void *data)
 Method lauched when creating new threads for the gaussian mask calculation.
void IPGZ::localMaximum2D (PixelArray2D< float > *intensityData, PixelArray2D< bool > *isMaxData, ParticleArray< float > *positionData, int filterWidth, int filterHeight, float minimumThreshold)
 Identifies the local maximum in 2D.
void IPGZ::localMaximum3D (PixelArray3D< float > *intensityData, PixelArray3D< bool > *isMaxData, ParticleArray< float > *positionData, int filterWidth, int filterHeight, int filterDepth, float minimumThreshold)
 Identifies the local maximum in 3D.
void IPGZ::eliminateNeighbors3D (PixelArray3D< bool > *inIsMaxData, PixelArray3D< bool > *outIsMaxData, ParticleArray< float > *inPosition, ParticleArray< float > *outPosition, int filterWidth, int filterHeight, int filterDepth)
 Eliminates any local maximum points that are too close together in 3D.
void IPGZ::eliminateNeighbors2D (PixelArray2D< bool > *inIsMaxData, PixelArray2D< bool > *outIsMaxData, ParticleArray< float > *inPosition, ParticleArray< float > *outPosition, int filterWidth, int filterHeight)
 Eliminates any local maximum points that are too close together in 2D.
void IPGZ::findParticles3D (PixelArray3D< float > *intensityData, PixelArray3D< bool > *isMaxData, ParticleArray< float > *positionData, int filterWidth, int filterHeight, int filterDepth, float minimumThreshold)
 Routine to identify particles in 3D; first calls the localMaximum3D() routine followed by eliminateNeighbors3D() routine and calculateCentroid3D().
void IPGZ::findParticles2D (PixelArray2D< float > *intensityData, PixelArray2D< bool > *isMaxData, ParticleArray< float > *positionData, int filterWidth, int filterHeight, float minimumThreshold)
 Routine to identify particles in 2D; first calls the localMaximum2D() routine followed by eliminateNeighbors2D() routine and calculateCentroid2D().
void IPGZ::calculateCentroid3D (PixelArray3D< float > *intensityData, ParticleArray< float > *positionData, int filterWidth, int filterHeight, int filterDepth)
 Routine to calculate the centroid of a particle in 3D.
void IPGZ::calculateCentroid2D (PixelArray2D< float > *intensityData, ParticleArray< float > *positionData, int filterWidth, int filterHeight)
 Routine to calculate the centroid of a particle in 2D.
void IPGZ::realPosition (ParticleArray< float > *positionData, ParticleArray< float > *realPositionData, float scaleWidth, float scaleHeight, float scaleDepth)
 Routine to calculate the real position of a particle based on the centroid data. This routine is indentical for 2D and 3D.


Define Documentation

#define IP_BLUE   1

#define IP_COMPRESS   0

Library to proide routines for input/output of TIFF images of colloidal particles and determination/tracking of colloidal particles.

IPGZ library

IPGZ.h IPGZ

Created by Chris Iacovella on 8/3/07. Copyright 2007 GlotzerLab. All rights reserved.

#define IP_DOT   0

#define IP_GRAY   3

#define IP_GREEN   2

#define IP_NONE   1

#define IP_PLUS   1

#define IP_RED   0


Generated on Mon Aug 27 13:39:31 2007 for IPAnalysis by  doxygen 1.5.3