Changeset 1442 for trunk/psLib/src/image/psImageManip.h
- Timestamp:
- Aug 9, 2004, 3:05:53 PM (22 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/image/psImageManip.h (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/image/psImageManip.h
r1441 r1442 11 11 * @author Ross Harman, MHPCC 12 12 * 13 * @version $Revision: 1.1 0$ $Name: not supported by cvs2svn $14 * @date $Date: 2004-08- 09 23:40:55$13 * @version $Revision: 1.11 $ $Name: not supported by cvs2svn $ 14 * @date $Date: 2004-08-10 01:05:53 $ 15 15 * 16 16 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 32 32 * @return int The number of clipped pixels 33 33 */ 34 int psImageClip(psImage* input, ///< the image to clip 35 psF64 min, ///< the minimum image value allowed 36 psF64 vmin, ///< the value pixels < min are set to 37 psF64 max, ///< the maximum image value allowed 38 psF64 vmax ///< the value pixels > max are set to 39 ); 34 int psImageClip( 35 psImage* input, ///< the image to clip 36 psF64 min, ///< the minimum image value allowed 37 psF64 vmin, ///< the value pixels < min are set to 38 psF64 max, ///< the maximum image value allowed 39 psF64 vmax ///< the value pixels > max are set to 40 ); 40 41 41 42 /** Clip image values outside of a specified complex region … … 48 49 * @return int The number of clipped pixels 49 50 */ 50 int psImageClipComplexRegion(psImage* input, ///< the image to clip 51 psC64 min, ///< the minimum image value allowed 52 psC64 vmin, ///< the value pixels < min are set to 53 psC64 max, ///< the maximum image value allowed 54 psC64 vmax ///< the value pixels > max are set to 55 ); 51 int psImageClipComplexRegion( 52 psImage* input, ///< the image to clip 53 psC64 min, ///< the minimum image value allowed 54 psC64 vmin, ///< the value pixels < min are set to 55 psC64 max, ///< the maximum image value allowed 56 psC64 vmax ///< the value pixels > max are set to 57 ); 56 58 57 59 /** Clip NaN image pixels to given value. … … 62 64 * @return int The number of clipped pixels 63 65 */ 64 int psImageClipNaN(psImage* input, ///< the image to clip 65 psF64 value ///< the value to set all NaN/Inf values to 66 ); 66 int psImageClipNaN( 67 psImage* input, ///< the image to clip 68 psF64 value ///< the value to set all NaN/Inf values to 69 ); 67 70 68 71 /** Overlay subregion of image with another image … … 77 80 * @return int 0 if success, non-zero if failed. 78 81 */ 79 int psImageOverlaySection(psImage* image, ///< target image 80 const psImage* overlay, ///< the overlay image 81 int col0, ///< the column to start overlay 82 int row0, ///< the row to start overlay 83 const char *op ///< the operation to perform for overlay 84 ); 82 int psImageOverlaySection( 83 psImage* image, ///< target image 84 const psImage* overlay, ///< the overlay image 85 int col0, ///< the column to start overlay 86 int row0, ///< the row to start overlay 87 const char *op ///< the operation to perform for overlay 88 ); 85 89 86 90 /** Rebin image to new scale. … … 94 98 * @return psImage new image formed by rebinning input image. 95 99 */ 96 psImage* psImageRebin(psImage* out, ///< an psImage to recycle. If NULL, a new image is created 97 const psImage* in, ///< input image 98 unsigned int scale, ///< the scale to rebin for each dimension 99 const psStats* stats ///< the statistic to perform when rebinning. Only one 100 // method should be set. 101 ); 100 psImage* psImageRebin( 101 psImage* out, ///< an psImage to recycle. If NULL, a new image is created 102 const psImage* in, ///< input image 103 unsigned int scale, ///< the scale to rebin for each dimension 104 const psStats* stats 105 ///< the statistic to perform when rebinning. Only one method should be set. 106 ); 102 107 103 psImage* psImageResample(psImage* out, ///< an psImage to recycle. If NULL, a new image is created 104 const psImage* in, ///< input image 105 int scale, psImageInterpolateMode mode); 108 /** Resample image to new scale. 109 * 110 * A new image is constructed in which the dimensions are increased by a 111 * factor of scale. The scale, always a positive number, is equal in each 112 * dimension. The output image is generated from all input image pixels. 113 * Each pixel in the output image is derived by interpolating between 114 * neighboring pixels using the specified interpolation method (mode). 115 * 116 * @return psImage* resampled image result 117 */ 118 psImage* psImageResample( 119 psImage* out, ///< an psImage to recycle. If NULL, a new image is created 120 const psImage* in, ///< input image 121 int scale, ///< resample scaling factor 122 psImageInterpolateMode mode ///< the interpolation mode used in resampling 123 ); 106 124 107 psImage* psImageRotate(psImage* out, ///< an psImage to recycle. If NULL, a new image is created 108 const psImage* in, ///< input image 109 float angle, float unexposedValue, psImageInterpolateMode mode); 125 /** Rotate the input image by given angle, specified in degrees. 126 * 127 * The output image must contain all of the pixels from the input image in 128 * their new frame. Pixels in the output image which do not map to input 129 * pixels should be set to exposed. The center of rotation is always the 130 * center pixel of the image. The rotation is specified in the sense that a 131 * positive angle is an anti-clockwise rotation. This function must be 132 * defined for the following types: psU8, psU16, psS8, psS16, psF32, psF64, 133 * psC32, psC64. 134 * 135 * @return psImage* the rotated image result. 136 */ 137 psImage* psImageRotate( 138 psImage* out, ///< an psImage to recycle. If NULL, a new image is created 139 const psImage* in, ///< input image 140 float angle, ///< the rotation angle in degrees. 141 float unexposedValue, ///< the output image pixel values for non-imagery areas 142 psImageInterpolateMode mode ///< the interpolation mode used 143 ); 110 144 111 psImage* psImageShift(psImage* out, ///< an psImage to recycle. If NULL, a new image is created 112 const psImage* in, ///< input image 113 float dx, float dy, float unexposedValue, psImageInterpolateMode mode); 145 /** Shift image by an arbitrary number of pixels (dx,dy) in either direction. 146 * 147 * If the shift values are fractional, the output pixel values should 148 * interpolate between the input pixel values. The output image has the same 149 * dimensions as the input image. Pixels which fall off the edge of the 150 * output image are lost. Newly exposed pixels are set to the value given by 151 * exposed. This function must be defined for the following types: psU8, 152 * psU16, psS8, psS16, psF32, psF64, psC32, psC64. 153 * 154 * @return psImage* the shifted image result. 155 */ 156 psImage* psImageShift( 157 psImage* out, ///< an psImage to recycle. If NULL, a new image is created 158 const psImage* in, ///< input image 159 float dx, ///< the shift in x direction. 160 float dy, ///< the shift in y direction. 161 float unexposedValue, ///< the output image pixel values for non-imagery areas 162 psImageInterpolateMode mode ///< the interpolation mode to use 163 ); 114 164 115 165 /** Roll image by an integer number of pixels in either direction. … … 121 171 * @return psImage* the rolled version of the input image. 122 172 */ 123 psImage* psImageRoll(psImage* out, ///< an psImage to recycle. If NULL, a new image is created 124 const psImage* in, ///< input image 125 int dx, ///< number of pixels to roll in the x-dimension 126 int dy ///< number of pixels to roll in the y-dimension 127 ); 173 psImage* psImageRoll( 174 psImage* out, ///< an psImage to recycle. If NULL, a new image is created 175 const psImage* in, ///< input image 176 int dx, ///< number of pixels to roll in the x-dimension 177 int dy ///< number of pixels to roll in the y-dimension 178 ); 128 179 129 180 #endif
Note:
See TracChangeset
for help on using the changeset viewer.
