SetSegmentData Method

Summary
Updates the specified segment.
Syntax
C#
C++/CLI
Python
public void SetSegmentData( 
   RasterImage image, 
   int id, 
   MrcSegmentData data 
) 
public: 
void SetSegmentData(  
   RasterImage^ image, 
   int id, 
   MrcSegmentData data 
)  
def SetSegmentData(self,image,id,data): 

Parameters

image
The image that will be segmented.

id
ID of the segment to be updated.

data
Instance of the structure that contains the new segment information.

Remarks

This method is used to update the segment information. In the auto segmentation mode, the LEADTOOLS engine will update the segments using the new segment data passed to this method. This process may create or delete segments. The method will update the segments so they remain within the image width and height. In the manual segmentation mode, the user is free to update the segments. The LEAD engine will not delete or create segments. If an error occurs, the data parameter will be updated with the target segment. To get segment IDs and segment information, the user can enumerate all segments using the EnumerateSegments method. The method will return an error if the updated segment exceeds its image boundaries. For more information, refer to Programming with LEADTOOLS MRC.

Example
C#
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Mrc; 
 
private bool MrcEnumerateSegmentInfoSetSegmentDataCallback(MrcSegmenter segmentHandle, MrcSegmentData data, int iD) 
{ 
   if (iD == 0) 
   { 
      MrcSegmentData newData = data; 
      newData.ImageSegment = new LeadRect(0, 0, 60, 60); 
      newData.SegmentType = MrcSegmentType.Picture; 
      //segmenter.SetSegmentData(segmentedImage, iD, newData); 
   } 
   return true; 
} 
 
public void SetSegmentDataExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "PDFSegmentation.pdf")); 
 
   MrcSegmenter segmenter = new MrcSegmenter(image, RasterColor.FromKnownColor(RasterKnownColor.White), RasterColor.FromKnownColor(RasterKnownColor.Black)); 
 
   segmenter.SegmentImage(image, MrcSegmentImageOptions.Empty); 
 
   MrcEnumerateSegmentsInfo setSegmentCallBack = new MrcEnumerateSegmentsInfo(MrcEnumerateSegmentInfoSetSegmentDataCallback); 
   segmenter.EnumerateSegments(setSegmentCallBack); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 22.0.2023.4.12
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Mrc Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.