The connected-component labeling problem: A review of state-of-the-art algorithms