- Timestamp:
- Jan 6, 2009, 7:13:34 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branch_20081230/psphot/src/psphotModelWithPSF.c
r17396 r21087 20 20 paramMask = constraint->paramMask; 21 21 if (paramMask != NULL) { 22 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_U8, false);22 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_VECTOR_TYPE, false); 23 23 PS_ASSERT_VECTORS_SIZE_EQUAL(params, paramMask, false); 24 24 } … … 145 145 psImageInit (covar, 0.0); 146 146 for (int j = 0, J = 0; j < params->n; j++) { 147 if (paramMask && (paramMask->data. U8[j])) {147 if (paramMask && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[j])) { 148 148 covar->data.F32[j][j] = 1.0; 149 149 continue; 150 150 } 151 151 for (int k = 0, K = 0; k < params->n; k++) { 152 if (paramMask && (paramMask->data. U8[k])) continue;152 if (paramMask && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[k])) continue; 153 153 covar->data.F32[j][k] = Alpha->data.F32[J][K]; 154 154 K++; … … 197 197 PS_ASSERT_VECTOR_TYPE(params, PS_TYPE_F32, false); 198 198 if (paramMask) { 199 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_ MASK, false);199 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_VECTOR_MASK, false); 200 200 } 201 201 … … 224 224 // XXX probably should not skipped masked points: 225 225 // XXX skip if convolution of unmasked pixels will not see this pixel 226 // if (source->maskObj->data. U8[i][j]) {226 // if (source->maskObj->data.PS_TYPE_IMAGE_MASK_DATA[i][j]) { 227 227 // continue; 228 228 // } … … 246 246 247 247 for (int n = 0; n < params->n; n++) { 248 if ((paramMask != NULL) && (paramMask->data. U8[n])) { continue; }248 if ((paramMask != NULL) && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[n])) { continue; } 249 249 psImage *dmodel = pcm->dmodels->data[n]; 250 250 dmodel->data.F32[i][j] = deriv->data.F32[n]; … … 285 285 // XXX are we doing the right thing with the mask? 286 286 // skip masked points 287 if (source->maskObj->data. U8[i][j]) {287 if (source->maskObj->data.PS_TYPE_IMAGE_MASK_DATA[i][j]) { 288 288 continue; 289 289 } … … 308 308 // alpha & beta only contain unmasked elements 309 309 for (int n1 = 0, N1 = 0; n1 < params->n; n1++) { 310 if ((paramMask != NULL) && (paramMask->data. U8[n1])) continue;310 if ((paramMask != NULL) && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[n1])) continue; 311 311 psImage *dmodel = pcm->dmodelsConv->data[n1]; 312 312 float weight = dmodel->data.F32[i][j] * yweight; 313 313 for (int n2 = 0, N2 = 0; n2 <= n1; n2++) { 314 if ((paramMask != NULL) && (paramMask->data. U8[n2])) continue;314 if ((paramMask != NULL) && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[n2])) continue; 315 315 dmodel = pcm->dmodelsConv->data[n2]; 316 316 alpha->data.F32[N1][N2] += weight * dmodel->data.F32[i][j]; … … 357 357 for (psS32 n = 0; n < params->n; n++) { 358 358 pcm->dmodels->data[n] = NULL; 359 if ((paramMask != NULL) && (paramMask->data. U8[n])) { continue; }359 if ((paramMask != NULL) && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[n])) { continue; } 360 360 pcm->dmodels->data[n] = psImageCopy (NULL, source->pixels, PS_TYPE_F32); 361 361 } … … 366 366 for (psS32 n = 0; n < params->n; n++) { 367 367 pcm->dmodelsConv->data[n] = NULL; 368 if ((paramMask != NULL) && (paramMask->data. U8[n])) { continue; }368 if ((paramMask != NULL) && (paramMask->data.PS_TYPE_VECTOR_MASK_DATA[n])) { continue; } 369 369 pcm->dmodelsConv->data[n] = psImageCopy (NULL, source->pixels, PS_TYPE_F32); 370 370 }
Note:
See TracChangeset
for help on using the changeset viewer.
