Just want to confirm my understanding.  The input (training image) to the ImagePCAShapeModelEstimator should be the level set image, right?  So if we have contours, we should create levelset image by ourselve with the zero set the contour itself before feeding to the PCA estimator.