LEADTOOLS WCF Image Processing (Leadtools.Services.ImageProcessing.ServiceContracts assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.30
IntensityDetect Method
See Also 
Leadtools.Services.ImageProcessing.ServiceContracts Namespace > IColorProcessingService Interface : IntensityDetect Method



request
A System.Runtime.Serialization.DataContractAttribute containing the data that will be used in this IntensityDetect operation.

The IntensityDetect Method is available in LEADTOOLS Document and Medical Imaging toolkits.

request
A System.Runtime.Serialization.DataContractAttribute containing the data that will be used in this IntensityDetect operation.
Applies binary segmentation on an image by filtering a specific image to detect colors in a specific intensity range, in a specific color channel(s).

Syntax

Visual Basic (Declaration) 
<OperationContractAttribute("IntensityDetect")>
<FaultContractAttribute(DetailType=Leadtools.Services.Raster.FaultContracts.RasterFault, 
   Action="", 
   Name="", 
   Namespace="", 
   ProtectionLevel=ProtectionLevel.None, 
   HasProtectionLevel=False)>
Function IntensityDetect( _
   ByVal request As IntensityDetectRequest _
) As CommandResponse
Visual Basic (Usage)Copy Code
Dim instance As IColorProcessingService
Dim request As IntensityDetectRequest
Dim value As CommandResponse
 
value = instance.IntensityDetect(request)
C# 
[OperationContractAttribute("IntensityDetect")]
[FaultContractAttribute(DetailType=Leadtools.Services.Raster.FaultContracts.RasterFault, 
   Action="", 
   Name="", 
   Namespace="", 
   ProtectionLevel=ProtectionLevel.None, 
   HasProtectionLevel=false)]
CommandResponse IntensityDetect( 
   IntensityDetectRequest request
)
C++/CLI 
[OperationContractAttribute("IntensityDetect")]
[FaultContractAttribute(DetailType=Leadtools.Services.Raster.FaultContracts.RasterFault, 
   Action="", 
   Name="", 
   Namespace="", 
   ProtectionLevel=ProtectionLevel.None, 
   HasProtectionLevel=false)]
CommandResponse^ IntensityDetect( 
   IntensityDetectRequest^ request
) 

Parameters

request
A System.Runtime.Serialization.DataContractAttribute containing the data that will be used in this IntensityDetect operation.

Return Value

A System.Runtime.Serialization.DataContractAttribute containing the modified image resulting from the IntensityDetect operation.

Example

Visual BasicCopy Code
Public Sub IntensityDetectExample()
      Dim client As ColorProcessingServiceClient = New ColorProcessingServiceClient()
      Dim sourceBinaryData As RawBinaryData = New RawBinaryData()
      sourceBinaryData.Data = File.ReadAllBytes(Path.Combine(LEAD_VARS.ImagesDir, "image1.cmp"))

      Dim convertOptions As RasterConvertOptions = New RasterConvertOptions()

      convertOptions.Source = sourceBinaryData
      convertOptions.Destination = Nothing
      convertOptions.Format = RasterImageFormat.Bmp
      convertOptions.FirstPage = 1
      convertOptions.LastPage = 1
      convertOptions.BitsPerPixel = 24
      convertOptions.QualityFactor = 2

      Dim request As IntensityDetectRequest = New IntensityDetectRequest()

      request.Channel = IntensityDetectCommandFlags.Master
      request.ConvertOptions = convertOptions
      request.HighThreshold = 255
      request.LowThreshold = 12
      request.InColor = "white"
      request.OutColor = "black"
      request.RegionData = Nothing

      Dim response As CommandResponse = client.IntensityDetect(request)
      If Not response.Destination Is Nothing Then
         If TypeOf response.Destination Is RawBinaryData Then
            File.WriteAllBytes(Path.Combine(LEAD_VARS.ImagesDir, "IntensityDetect.bmp"), (TryCast(response.Destination, RawBinaryData)).Data)
         End If
      End If

      client.Close()
   End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
public void IntensityDetectExample()
   {
      ColorProcessingServiceClient client = new ColorProcessingServiceClient();
      RawBinaryData sourceBinaryData = new RawBinaryData();
      sourceBinaryData.Data = File.ReadAllBytes(Path.Combine(LEAD_VARS.ImagesDir,"image1.cmp"));

      RasterConvertOptions convertOptions = new RasterConvertOptions();

      convertOptions.Source = sourceBinaryData;
      convertOptions.Destination = null;
      convertOptions.Format = RasterImageFormat.Bmp;
      convertOptions.FirstPage = 1;
      convertOptions.LastPage = 1;
      convertOptions.BitsPerPixel = 24;
      convertOptions.QualityFactor = 2;

      IntensityDetectRequest request = new IntensityDetectRequest();

      request.Channel = IntensityDetectCommandFlags.Master;
      request.ConvertOptions = convertOptions;
      request.HighThreshold = 255;
      request.LowThreshold = 12;
      request.InColor = "white";
      request.OutColor = "black";
      request.RegionData = null;

      CommandResponse response = client.IntensityDetect(request);
      if (response.Destination != null)
      {
         if (response.Destination is RawBinaryData)
            File.WriteAllBytes(Path.Combine(LEAD_VARS.ImagesDir, "IntensityDetect.bmp"), (response.Destination as RawBinaryData).Data);
      }

      client.Close();
   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}

Remarks

  • The image is divided into two parts, inner and outer according to the values of the LowThreshold property and the HighThreshold property.
  • The operation can process 2 or more channels at a time by OR-ing two or more flags.
  • This operation supports 12 and 16-bit grayscale and 48 and 64-bit color images. Support for 12 and 16-bit grayscale and 48 and 64-bit color images is available only in the Document/Medical toolkits.
  • This command does not support 32-bit grayscale images.

Requirements

Target Platforms: Microsoft .NET Framework 3.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7

See Also

Applications developed with LEADTOOLS WCF components require runtime licenses. Server licensing is required for applications on a server. For more information, refer to: Imaging Pro/Document/Medical Features