Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

Need: Integer flood fill for Region Labeling

chris_griffin
Beginner
353 Views
Dear Intel Developers:

Is there any reason why there is no flood-fill for 32-bit integer data? I need to do a flood fill for a region labeling algorithm, and I need to have distinct labels for what is potentially more than 2^16 objects.

We have tried using the floating-point flood-fill and coercing the integer values into the buffer and then trusting that the 32-bit-float flood-fill will just treat it as a bit pattern and do the fill. However, the performance is disappointing, and I'm wondering if it might be faster if the fill happened with integer data?

Could the fact that the floating point data looks "Denormalized" by the algorithm be affecting the performance?

16-bit would be a start, but even that is not supported and I'm puzzled by this.

Thanks,
Chris



0 Kudos
1 Reply
Intel_C_Intel
Employee
353 Views

Hi,

I think you are right about performance loss when integer numbers are treated as floats. You could use integer numbers in fp format. It restricts the number of objects by 2^24.

About 32s flood fill and label markers: it is not supported because IPP in general has very sparse support on 32-bit integer data. You could submit the request on 32s or 32ufunctions for flood fill, label markers and mb segmentation for 32-bit markers to premier.intel.com.

IPP supports watershed and gradient segmentation with 16u markers. In some cases it could be used even if the number of objects exceeds 2^16. Marker values will repeat from the low value in this case. Ifthere are no neighbouring objects with potentially same markers (e.g. there are no long object of complicated form) you could discern them.

Thanks,

Alexander

0 Kudos
Reply