diff --git a/Modules/Filtering/ImageCompose/test/itkComposeBigVectorImageFilterTest.cxx b/Modules/Filtering/ImageCompose/test/itkComposeBigVectorImageFilterTest.cxx index db3f6b66655..84b15225a43 100644 --- a/Modules/Filtering/ImageCompose/test/itkComposeBigVectorImageFilterTest.cxx +++ b/Modules/Filtering/ImageCompose/test/itkComposeBigVectorImageFilterTest.cxx @@ -58,22 +58,23 @@ itkComposeBigVectorImageFilterTest(int, char *[]) VectorImageType::Pointer img = composeFilter->GetOutput(); std::cout << "Compose filter executed." << std::endl; + + itk::ImageRegion<3> sliceRegion = img->GetLargestPossibleRegion(); + sliceRegion.SetSize(2, 1); // Set the size of the z-dimension to 1 + for (unsigned int i = 0; i < nchannels; ++i) { itk::IndexValueType z = i; std::map values; - for (itk::IndexValueType y = 0; y < size; ++y) + sliceRegion.SetIndex(2, z); // Set the index of the z-dimension to the current slice + + itk::ImageRegionConstIterator it(img, sliceRegion); + for (it.GoToBegin(); !it.IsAtEnd(); ++it) { - for (itk::IndexValueType x = 0; x < size; ++x) + if (it.Get()[i] != i % 250) { - itk::Index<3> idx = { { x, y, z } }; - - auto pixel = img->GetPixel(idx); - if (pixel[i] != i % 250) - { - ++values[pixel[i]]; - } + ++values[it.Get()[i]]; } }