Changeset 6455
- Timestamp:
- Feb 21, 2006, 2:02:00 PM (20 years ago)
- Location:
- trunk/doc/pslib
- Files:
-
- 2 edited
-
ChangeLogSDRS.tex (modified) (3 diffs)
-
psLibSDRS.tex (modified) (20 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/doc/pslib/ChangeLogSDRS.tex
r6434 r6455 1 %%% $Id: ChangeLogSDRS.tex,v 1.19 4 2006-02-16 18:57:51eugene Exp $1 %%% $Id: ChangeLogSDRS.tex,v 1.195 2006-02-22 00:02:00 eugene Exp $ 2 2 3 3 \subsection{Changes from version 00 to version 01} … … 834 834 \end{itemize} 835 835 836 \subsection{Changes from Revistion 18 (06 Dec 2005) to Revision 19 ()} 837 \begin{itemize} 838 \item change \code{psPolynomial?DAlloc()} to have \code{type} as the last 839 parameter. 836 \subsection{Changes from Revistion 18 (06 Dec 2005) to Revision 19 (21 Feb 2006)} 837 \begin{itemize} 840 838 \item minor \code{typedef} fixes 841 839 \item sync \code{psImage}'s definition with the implementation in psLib … … 854 852 \item \code{psArrayAlloc} and \code{psArrayRealloc} to initialise values 855 853 \item add \code{*out} param to \code{psFitsReadHeaderSet()} 856 \item sync \code{psElemType}, \code{psDataType}, & \code{psFitsType} with the implementation in pslib854 \item sync \code{psElemType}, \code{psDataType}, \& \code{psFitsType} with the implementation in pslib 857 855 \item reorder \code{psPrecessMethod} to match the implementation in pslib 858 \item reorder \code{psPolynomialXDAlloc()} functions params to have \code{type} first859 \end{itemize} 856 \item set \code{psPolynomial?DAlloc()} functions params to have \code{type} first 857 \end{itemize} -
trunk/doc/pslib/psLibSDRS.tex
r6434 r6455 1 %%% $Id: psLibSDRS.tex,v 1.38 3 2006-02-16 18:57:51eugene Exp $1 %%% $Id: psLibSDRS.tex,v 1.384 2006-02-22 00:02:00 eugene Exp $ 2 2 \documentclass[panstarrs,spec]{panstarrs} 3 3 … … 11 11 \project{Pan-STARRS Image Processing Pipeline} 12 12 \organization{Institute for Astronomy} 13 \version{1 8}13 \version{19} 14 14 \docnumber{PSDC-430-007} 15 15 … … 2987 2987 abbreviate \code{STRING}; valid time types are \code{UTC,UT1,TAI,TT}. 2988 2988 2989 \tbd{May, in the future, require more types, including U8,S16,C64, 2990 which will also necessitate updating the definition of psMetadata.} 2989 \tbd{May, in the future, require more types, including U8,S16,C64.} 2991 2990 2992 2991 The value shall follow the type: strings may consist of multiple words, and … … 3252 3251 double psLookupTableInterpolate(const psLookupTable *table, double index, 3253 3252 long column); 3254 psVector *psLookupTableInterpolateAll(const psLookupTable *table, 3255 double index, psVector *stats); 3253 psVector *psLookupTableInterpolateAll(const psLookupTable *table, double index); 3256 3254 \end{prototype} 3257 3255 Both functions shall interpolate the \code{table} at the provided … … 3261 3259 and returned as a \code{psVector}, the type of which shall be 3262 3260 \code{PS_TYPE_F64}. 3263 3264 \tbd{What's the stats for???}3265 3261 3266 3262 If the \code{index} is beyond the range of the \code{table}, … … 5095 5091 \subsubsection{Image Structure Manipulation} 5096 5092 5097 \tbd{clarify that subset and trim regions are in the *parent* coords}5098 5099 5093 \begin{prototype} 5100 5094 psImage *psImageSubset(psImage *image, psRegion region); … … 5107 5101 extent of the desired subraster. Note that the row and column of this 5108 5102 ``upper right-hand corner'' are \textit{NOT} included in the region. 5109 In the event that \code{x1} or \code{y1} are negative, they shall be 5110 interpreted as being relative to the size of the parent image in that 5111 dimension. If the input image is a subimage, the region coordinates 5112 refer to the \em{parent} pixel coordinates. The entire subraster must 5113 be contained within the raster of the parent image. Note that the 5114 \code{refCounter} for the parent should be incremented. This function 5115 must be defined for the following types: \code{psU8}, \code{psU16}, 5116 \code{psS8}, \code{psS16}, \code{psF32}, \code{psF64}, \code{psC32}, 5117 \code{psC64}. \tbd{allow this function to saturate on the edges like 5118 psRegionForImage?} 5103 Note that, if the \code{image} is itself a subimage, then the 5104 \code{region} coordinates correspond to coordinates of the parent 5105 image of \code{image}. The only exception to this is in the event 5106 that \code{x1} or \code{y1} are non-positive, in which case they shall 5107 be interpreted as being relative to the upper-bounds of \code{image} 5108 in that dimension. The entire resulting subraster will be contained 5109 within the raster of the input image; if the requested bounds of 5110 region fall beyond the bounds of the input image, they should saturate 5111 on the input image region (in analogy with the behavior of 5112 \code{psRegionForImage}). Note that the \code{refCounter} for the 5113 parent should be incremented. This function must be defined for the 5114 following types: \code{psU8}, \code{psU16}, \code{psS8}, \code{psS16}, 5115 \code{psF32}, \code{psF64}, \code{psC32}, \code{psC64}. 5119 5116 5120 5117 \begin{prototype} … … 5138 5135 corner, \code{region.x1,region.y1}. Note that the row and column of 5139 5136 the ``upper right-hand corner'' are \textit{NOT} included in the 5140 region. In the event that \code{region.x1} or \code{region.y1} are 5141 negative, they shall be interpreted as being relative to the size of 5142 the parent image in that dimension. \tbd{how is region interpreted if 5143 image is a subimage?} 5137 region. Note that, if the \code{image} is itself a subimage, then the 5138 \code{region} coordinates correspond to coordinates of the parent 5139 image of \code{image}. However, in the event that \code{region.x1} or 5140 \code{region.y1} are negative, they shall be interpreted as being 5141 relative to the upper bounds of the input image in that dimension. 5144 5142 5145 5143 The function shall generate an error if the specified region is … … 5149 5147 5150 5148 \subsubsection{Image Pixel Extractions} 5151 5152 \tbd{clarify that subset and trim regions are in the *parent* coords}5153 5149 5154 5150 \begin{datatype} … … 5172 5168 These two functions extract a single complete \code{row} or 5173 5169 \code{column} from the \code{image} and return it to the provided 5174 \code{vector}, allocating it if it is \code{NULL}. These are provided 5175 as fast, simple implementations of data extraction. For more 5176 sophisticated operations, the following two functions should be used. 5170 \code{vector}, allocating it if it is \code{NULL}. If the input image 5171 is a subimage, the \code{row} and \code{column} arguments refer to 5172 parent coordinates. These are provided as fast, simple 5173 implementations of data extraction. For more sophisticated 5174 operations, the following two functions should be used. 5177 5175 5178 5176 \begin{prototype} … … 5186 5184 const psStats *stats); 5187 5185 \end{prototype} 5188 Extract pixels from rectilinear region to a vector (array of floats).5189 The output vector contains either \code{region.x1-region.x0} or 5190 \code{region.y1-region.y0} elements, based on the value of the5186 Extract pixels from a rectilinear region to a vector (array of 5187 floats). The output vector contains either \code{region.x1-region.x0} 5188 or \code{region.y1-region.y0} elements, based on the value of the 5191 5189 direction: e.g., if \code{direction} is \code{PS_CUT_X_POS}, there are 5192 5190 \code{region.x1-region.x0} elements. The region to be ``sliced'' is … … 5196 5194 the region. In the event that \code{region.x1} or \code{region.y1} 5197 5195 are negative, they shall be interpreted as being relative to the size 5198 of the parent image in that dimension. \tbd{how is region interpreted5199 if input is a subimage?} 5196 of the input image in that dimension. If the input image is a 5197 subimage, the \code{region} argument refers to parent coordinates. 5200 5198 5201 5199 The input region is collapsed in the direction perpendicular to that … … 5226 5224 \code{(region.x1,region.y1)}, on the image to a vector of the same 5227 5225 data type. The line segment is sampled \code{nSamples} times, hence 5228 the output vector contains \code{nSamples} elements. The 5226 the output vector contains \code{nSamples} elements. If the input image is a 5227 subimage, the \code{region} argument refers to parent coordinates. The 5229 5228 interpolation method used to derive the output vector value at each 5230 5229 sample along the line segment is specified by \code{mode}. If the … … 5232 5231 corresponding mask value is \code{maskVal} are not included in the 5233 5232 interpolation. This function must be defined for the following types: 5234 \code{psS8}, \code{psU16}, \code{psF32}, \code{psF64}. \tbd{how is 5235 region interpreted if input is a subimage?} 5233 \code{psS8}, \code{psU16}, \code{psF32}, \code{psF64}. 5236 5234 5237 5235 \begin{prototype} … … 5249 5247 which land within one of a sequence of radii. The radii are centered 5250 5248 on the image pixel coordinate \code{x,y}, and are defined by the 5251 sequence of values in the vector \code{radii}. The specific algorithm 5252 which must be used is described in the PSLib ADD (PSDC-430-006). The 5253 statistic used to derive the output vector value is specified by 5254 \code{stats}. Only one of the statistics choices may be specified, 5255 otherwise the function must return an error. If \code{mask} is 5256 non-\code{NULL}, pixels for which the corresponding \code{mask} pixel 5257 matches \code{maskVal} are excluded from operations. This function 5258 must be defined for the following types: \code{psS8}, \code{psU16}, 5259 \code{psF32}, \code{psF64}. 5249 sequence of values in the vector \code{radii}. If the input image is 5250 a subimage, the \code{x,y} arguments refer to parent coordinates. The 5251 specific algorithm which must be used is described in the PSLib ADD 5252 (PSDC-430-006). The statistic used to derive the output vector value 5253 is specified by \code{stats}. Only one of the statistics choices may 5254 be specified, otherwise the function must return an error. If 5255 \code{mask} is non-\code{NULL}, pixels for which the corresponding 5256 \code{mask} pixel matches \code{maskVal} are excluded from operations. 5257 This function must be defined for the following types: \code{psS8}, 5258 \code{psU16}, \code{psF32}, \code{psF64}. 5260 5259 5261 5260 \subsubsection{Image Geometry Manipulation} … … 5375 5374 \code{region} (size \code{region.x1 - region.x0} by \code{region.y1 - 5376 5375 region.y0}, with \code{out->x0 = region.x0} and \code{out->y0 = 5377 region.y0}). \tbd{is this subimage-safe} 5376 region.y0}). If the input image is itself a subimage, then the region 5377 refers to the parent image coordinates. 5378 5378 5379 5379 If the \code{inputMask} is non-\code{NULL}, those pixels in the … … 5569 5569 region.y0}. In the event that either of \code{pixels} or 5570 5570 \code{region} are \code{NULL}, the function shall generate an error 5571 and return \code{NULL}. \tbd{is this subimage-safe?} 5571 and return \code{NULL}. If \code{out} is not supplied, then the 5572 constructed image is not a subimage. If \code{out} is supplied and is 5573 a subimage, the pixels refer to the parent image coordinates. 5572 5574 5573 5575 \code{psMaskToPixels} shall return a \code{psPixels} containing the … … 5576 5578 returned if \code{NULL}. In the event that \code{mask} is 5577 5579 \code{NULL}, the function shall generate an error and return 5578 \code{NULL}. 5580 \code{NULL}. If \code{mask} is a subimage, the pixels refer to the 5581 parent image coordinates. 5579 5582 5580 5583 \begin{prototype} … … 5591 5594 by combining the existing pixel value and the given \code{maskValue} 5592 5595 with a logical operation. The allowed operations are \code{=}, 5593 \code{AND}, \code{OR} and \code{XOR}. \tbd{is this subimage-safe?} 5596 \code{AND}, \code{OR} and \code{XOR}. If \code{image} is a subimage, 5597 the region refers to the parent image coordinates. 5594 5598 5595 5599 \begin{prototype} … … 5609 5613 pixel value and the given \code{maskValue} with a logical operation. 5610 5614 The allowed operations are \code{=}, \code{AND}, \code{OR} and 5611 \code{XOR}. 5615 \code{XOR}. If \code{image} is a subimage, the coordinates refers to 5616 the parent image coordinates. 5612 5617 5613 5618 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Note:
See TracChangeset
for help on using the changeset viewer.
