DocumentThinningCommand Class |
Namespace: Atalasoft.Imaging.ImageProcessing.Document
The DocumentThinningCommand type exposes the following members.
Name | Description | |
---|---|---|
DocumentThinningCommand |
Creates a new instance of DocumentThinningCommand.
| |
DocumentThinningCommand(SerializationInfo, StreamingContext) | Creates a new instance of DocumentThinningCommand from serialization information. | |
DocumentThinningCommand(IntegerMatrix, IntegerMatrix) | Creates a new instance of DocumentThinningCommand specifying foregroundMask and
backgroundMask. |
Name | Description | |
---|---|---|
ApplyToAnyPixelFormat | Reports whether or not this command will be applied to any supplied PixelFormat image (Inherited from ImageCommand.) | |
CanApplyToAnyPixelFormat | Returns true if the command can be applied to any PixelFormat. (Inherited from ImageCommand.) | |
InPlaceProcessing | Gets a value indicating if the source image data is processed in-place as opposed to returning a new
image. (Inherited from ImageCommand.) | |
MaxIterations | Gets or sets the maximum number of iterations to use when processing the image. | |
Progress | Gets or sets the ProgressEventHandler delegate which can be used to view or cancel the
progress of the current process. (Inherited from ImageCommand.) | |
RegionOfInterest | Gets or sets a RegionOfInterest which will only process the indicated region of the image. | |
SupportedPixelFormats | Returns an array of PixelFormats supported by this command. (Overrides ImageCommandSupportedPixelFormats.) |
Name | Description | |
---|---|---|
Apply | Apply the command to the given image. (Inherited from ImageCommand.) | |
ApplyToImage | Obsolete.
Applies the command to the source AtalaImage.
(Inherited from ImageCommand.) | |
ConstructChangedSourceImage | The method is called by the default implementation of Apply. It determines if it is necessary to create a
copy of the source image in a different pixel format and if so, determines the best new pixel format and allocates
that image. (Inherited from ImageCommand.) | |
ConstructFinalImage | Called by the default implementation of Apply, ConstructFinalImage constructs the image that will be used
as the destination image for the command. (Inherited from ImageCommand.) | |
ConstructImageResults | Constructs the results object for this command. (Inherited from ImageCommand.) | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetBackgroundMask | Returns the background mask. | |
GetChangedPixelFormat | This method is called to change the pixel format of the source image. (Inherited from ImageCommand.) | |
GetForegroundMask | Returns the foreground mask. | |
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetObjectData |
Populates a SerializationInfo with the data needed to serialize the target object.
(Overrides ImageRegionCommandGetObjectData(SerializationInfo, StreamingContext).) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
ImageCommandGetObjectData | Aggregates ImageCommand data into the supplied SerializationInfo object. (Inherited from ImageCommand.) | |
IsPixelFormatSupported | Returns a value indicating if the specified pixel format is supported. (Inherited from ImageCommand.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
PerformActualCommand | PerformActualCommand does the actual work of the image processing command. (Overrides ImageCommandPerformActualCommand(AtalaImage, AtalaImage, Rectangle, ImageResults).) | |
SelectBestAlternatePixelFormat | Choose the best pixel format to use for this command when the supplied source image's pixel format is
unacceptable. (Inherited from ImageCommand.) | |
SelectPreferredPixelFormat | Chooses a pixel format that is preferred for this command. (Inherited from ImageCommand.) | |
SetBackgroundMask | ||
SetForegroundMask | ||
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
VerifyImage | Verify the integrity of an AtalaImage. (Inherited from ImageCommand.) | |
VerifyProperties | Verify the integrity of properties in the command before processing an image. (Overrides ImageCommandVerifyProperties(AtalaImage).) |
This will reduce the geometric size of an image, leaving only a skeletonized frame behind.
This function requires two sets of masks. The foreground masks represents foreground matching masks and the background masks should be the compliments of the foreground masks. (swap ones and zeros).
A typical set of foreground masks is:
0 0 0 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 0 0 1, 1 1 1 1 1 0 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 0 1 1, 1 1 1 1 1 1 1 1 0 1 0 0 0 0 0 0 0 1 0 1 1 1 1 1
The background masks are compliments of these (1 and 0 reversed).
Note that the content of each mask is the preceding mask, rotated 45 deg.
The process works by applying each of these masks in pairs (A[x], B[x]) for all pairs, until MaxIterations has been reached or until there is no change in the image. This can be a long process.