void Difference::CreateDepthImage(FloatScalarImageType::Pointer image) { image->SetRegions(this->Image->GetLargestPossibleRegion()); image->Allocate(); image->FillBuffer(0); itk::ImageRegionIterator<ImageType> fullImageIterator(this->Image, this->Image->GetLargestPossibleRegion()); itk::ImageRegionIterator<FloatScalarImageType> rgbImageIterator(image, image->GetLargestPossibleRegion()); while(!fullImageIterator.IsAtEnd()) { ImageType::PixelType fullPixel = fullImageIterator.Get(); float depthPixel = fullPixel[3]; rgbImageIterator.Set(depthPixel); ++fullImageIterator; ++rgbImageIterator; } }