L_ShrinkWrapTool

Summary

Automatically segments a rectangular or circular area in the specified image using the specified threshold.

Syntax

#include "Ltimgcor.h"

L_LTIMGCOR_API L_INT L_ShrinkWrapTool(pBitmap, nThreshold, ptCenter, nRadius, uFlags)

Parameters

pBITMAPHANDLE pBitmap

Pointer to the bitmap handle.

L_INT nThreshold

Threshold used in the segmentation process. Possible grayscale values range from 0 to 255. The default value is 50.

POINT ptCenter

Center of the rectangle or circle used to segment the object inside. All points inside the search area will be segmented.

L_INT nRadius

Radius of the rectangular or circular search area, in pixels. Do not exceed the length of the image diagonal. (If nRadius exceeds the length of the image diagonal, the value is adjusted to fit inside the image.)

L_UINT uFlags

Flags that specify the shape to be used. Possible values are:

Value Meaning
SHRINK_CIRCLE [0x0010] Start shrinking from a circular-shaped region.
SHRINK_RECT [0x0008] Start shrinking from a rectangular-shaped region.

Returns

Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.

Comments

The result is applied to the image as a region.

This function was designed specifically to segment regions of cancer clusters in CT/MRI images.

The nRadius parameter should not exceed the length of the image diagonal.

This command does not support 32-bit grayscale images.

This command supports signed/unsigned images.

Shrink Wrap Tool Function - Before

Shrink Wrap Tool Function - Before

Shrink Wrap Tool Function - After

Shrink Wrap Tool Function - After

View additional platform support for this Shrink Wrap Tool function.

Required DLLs and Libraries

Platforms

Win32, x64, Linux.

See Also

Functions

Topics

Example

This example loads a bitmap and applies shrink wrap tool filter.

L_INT ShrinkWrapToolExample(L_VOID) 
{ 
   L_INT nRet; 
   BITMAPHANDLE LeadBitmap;   /* Bitmap handle to hold the loaded image. */ 
 
   /* Load the bitmap, keeping the bits per pixel of the file */ 
   nRet = L_LoadBitmap(MAKE_IMAGE_PATH(TEXT("DICOM\\IMAGE3.dcm")), &LeadBitmap, sizeof(BITMAPHANDLE), 0, ORDER_BGRORGRAY, NULL, NULL); 
   if (nRet != SUCCESS) 
      return nRet; 
 
   POINT Center; 
   Center.x = 245; 
   Center.y = 230; 
   nRet = L_ShrinkWrapTool(&LeadBitmap, 60, Center, 10, SHRINK_RECT); 
   if (nRet != SUCCESS) 
      return nRet; 
 
   nRet = L_SaveBitmap(MAKE_IMAGE_PATH(TEXT("Result.BMP")), &LeadBitmap, FILE_BMP, 24, 0, NULL); 
   if (nRet != SUCCESS) 
      return nRet; 
 
   //free bitmap 
   if (LeadBitmap.Flags.Allocated) 
      L_FreeBitmap(&LeadBitmap); 
 
   return SUCCESS; 
} 

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

LEADTOOLS Raster Imaging C API Help

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