Stroke Skeletonizer Using Modified Stroke Width Transform
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Image processing devices face difficulties in determining the geometry of hand-drawn graphics composed of non-straight strokes, making it challenging to generate a high-level representation for inclusion in electronic documents.
Innovation Solution
A method and system that execute a modified 4-way stroke width transform (SWT) on a mask of the image to identify centerline points, generate polylines, determine regions of certainty and uncertainty, calculate joints and end caps, and create a completed polyline path to describe the stroke, facilitating the inclusion of hand-drawn graphics in electronic documents.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If hand-drawn graphics with non-straight strokes are processed using traditional image processing methods, then the processing simplicity is maintained, but the geometry determination accuracy deteriorates
Solution Approach 1:
The patent segments the stroke processing into distinct phases: identifying seed points, generating polylines from centerline points, determining regions of certainty and uncertainty, and calculating joints and end caps. This segmentation allows complex non-straight stroke geometry to be processed systematically, improving measurement precision while managing device complexity through structured methodology
Solution Approach 2:
The patent transitions from analyzing stroke pixels in 2D space to creating polylines that represent the stroke skeleton in a simplified 1D path representation. This dimensional reduction from pixel coordinates to polyline segments enables accurate geometry determination of non-straight strokes while maintaining computational tractability
2Adaptability or versatility
If traditional stroke processing methods are used, then the processing speed is maintained, but the ability to generate high-level representation deteriorates
Solution Approach 1:
The patent performs preliminary actions by first identifying seed points and generating polylines before attempting to create high-level representations. The modified 4-way SWT and polyline generation prepare the stroke data in advance, making subsequent high-level representation generation more efficient and accurate
Solution Approach 2:
The patent introduces polylines as an intermediary representation between the original pixel-based stroke and the final high-level geometric description. These polylines serve as a intermediate structure that captures the essential geometry of non-straight strokes, enabling both accurate representation and efficient processing
3Reliability
If regions of certainty are removed from the mask, then the uncertainty regions are identified for further processing, but the data completeness temporarily deteriorates
Solution Approach 1:
The patent extracts regions of certainty from the stroke mask, isolating the high-confidence centerline points from uncertain regions. This extraction allows the system to process reliable data first while preserving uncertain regions for later refinement, improving overall reliability without permanently losing information
Solution Approach 2:
The patent prepares for potential information loss by calculating joints and end caps in advance based on the polylines and uncertainty regions. This beforehand cushioning ensures that even if regions are removed from the mask, the complete stroke geometry can be reconstructed using the calculated joint and end cap information
Data Source
AI summary
A method for processing a stroke in an image is provided. The stroke includes a plurality of pixels and the method includes: executing a modified 4-way stroke width transform (SWT) on a mask of the stroke; determining a plurality of certain centerline points among the pixels based on the modified SWT; generating a plurality of polylines within the stroke based on the certain centerline points; determining a plurality of regions of certainty based on the polylines; removing the regions of certainty from the mask and leaving a plurality of regions of uncertainty in the mask; calculating a plurality of joints and end caps for each of the polylines based on the polylines and the regions of uncertainty; generating a completed polyline path by connecting the polylines based on the joints and end caps; and generating a description of the stroke based on the completed polyline path.


