[Insight-developers] RegionGrowing methods Improvements and bugs

Bradley Lowekamp blowekamp at mail.nih.gov
Tue Nov 5 09:28:55 EST 2013


Hello,

I was using SimpleITK with some region growing methods, ConnectedThreshold, and I got a segfault. I mixed up datascructure my index and points, and the indices I passes to the algorithm were out of bounds this caused a segfault.

Looking at the code there is no validation of the seeds in the three region growing methods I looked at. These methods all seem to use the flood fill iterator framework. So perhaps the validation should occur there?


Looking over the code I had some thoughts on potential improvements. I know these basic segmentation methods are frequently used for examples, but it's not clear to me how popular they are in practice nor how important performance is to the community. Any thoughts?

I was also looking over the algorithm used. Recently, with my large sized images and SimpleITK have have been using 3 filters to perform similar operations. I have been thresholding, then running connected components then selecting the components I need from the seeds. The advantage of this approach is that it's very thread efficient and scalable. The data structures used for flood fill iterators include an entire image and filled to zeros at least twice. One of which is this potential extra call to GoToBegin:

https://github.com/Kitware/ITK/blob/master/Modules/Segmentation/RegionGrowing/include/itkConnectedThresholdImageFilter.hxx#L300


Thanks,
Brad



More information about the Insight-developers mailing list