diff --git a/Utilities/ITK/Code/Review/itkBSplineScatteredDataPointSetToImageFilter.txx b/Utilities/ITK/Code/Review/itkBSplineScatteredDataPointSetToImageFilter.txx
index 9ab890b7455e39f320a98478386023c0a885f441..20537b8d1bd0ef5329ffc81e4787b599ffcd8d4c 100644
--- a/Utilities/ITK/Code/Review/itkBSplineScatteredDataPointSetToImageFilter.txx
+++ b/Utilities/ITK/Code/Review/itkBSplineScatteredDataPointSetToImageFilter.txx
@@ -659,14 +659,20 @@ BSplineScatteredDataPointSetToImageFilter<TInputPointSet, TOutputImage>
         }
       RealType wc = this->m_PointWeights->GetElement( It.Index() );
       RealType t = Itw.Get();
-      omega->SetPixel( idx, omega->GetPixel( idx ) + wc*t*t );
+      if(idx[0]>=0 && idx[1]>=0 && idx[0]< omega->GetLargestPossibleRegion().GetSize()[0] && idx[1]< omega->GetLargestPossibleRegion().GetSize()[1])
+	omega->SetPixel( idx, omega->GetPixel( idx ) + wc*t*t );
+    
 
       PointDataType data = It.Value();
       data *= ( t / w2_sum );
       Itp.Set( data );
       data *= ( t * t * wc );
+
+        if(idx[0]>=0 && idx[1]>=0 && idx[0]< delta->GetLargestPossibleRegion().GetSize()[0] && idx[1]< delta->GetLargestPossibleRegion().GetSize()[1])
+	  {
       delta->SetPixel( idx, delta->GetPixel( idx ) + data );
       delta->GetPixel( idx ) + data;
+	  }
       }
     }