Leadtools.Windows.Media.Effects Send comments on this topic. | Back to Introduction - LEADTOOLS WPF | Help Version 16.5.9.25
IntensityDetectCommandBitmapEffect Class
See Also  Members   Example 
Leadtools.Windows.Media.Effects.Color Namespace : IntensityDetectCommandBitmapEffect Class





Applies binary segmentation to 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) 
Public Class IntensityDetectCommandBitmapEffect 
   Inherits RasterCommandBitmapEffect
Visual Basic (Usage)Copy Code
Dim instance As IntensityDetectCommandBitmapEffect
C# 
public class IntensityDetectCommandBitmapEffect : RasterCommandBitmapEffect 
C++/CLI 
public ref class IntensityDetectCommandBitmapEffect : public RasterCommandBitmapEffect 
XAML Property Element Usage 

IntensityDetectCommandBitmapEffect ...

XAML Property Element Usage 

IntensityDetectCommandBitmapEffect ...

Example

Run the IntensityDetectCommandBitmapEffect on an image and apply the filter to it.

Visual BasicCopy Code
Public Sub IntensityDetectCommandBitmapEffectExample(ByVal element As FrameworkElement)
   ' Initialize Effect
   Dim effect As IntensityDetectCommandBitmapEffect = New IntensityDetectCommandBitmapEffect()
   effect.LowThreshold = 128
   effect.HighThreshold = 220
   effect.InColor = System.Windows.Media.Color.FromRgb(255, 255, 255)
   effect.OutColor = System.Windows.Media.Color.FromRgb(0, 0, 0)
   effect.Channel = IntensityDetectCommandBitmapEffectsFlags.Master
   element.BitmapEffect = effect

   ' Initialize Animations
   Dim animation1 As Int32Animation = New Int32Animation()
   animation1.From = 0
   animation1.To = 254
   animation1.By = 1
   animation1.Duration = New Duration(TimeSpan.FromSeconds(2.0))
   animation1.AutoReverse = True
   animation1.RepeatBehavior = RepeatBehavior.Forever

   ' Initialize and run Storyboard
   Dim storyboard As Storyboard = New Storyboard()
   storyboard.SetTargetName(animation1, "AnimatedBitmapEffect")
   storyboard.SetTargetProperty(animation1, New PropertyPath(IntensityDetectCommandBitmapEffect.LowThresholdProperty))
   element.RegisterName("AnimatedBitmapEffect", effect)
   storyboard.Children.Add(animation1)

   storyboard.Begin(element)
End Sub
C#Copy Code
public void IntensityDetectCommandBitmapEffectExample(FrameworkElement element) 

   // Initialize Effect 
   IntensityDetectCommandBitmapEffect effect = new IntensityDetectCommandBitmapEffect(); 
   effect.LowThreshold = 128; 
   effect.HighThreshold = 220; 
   effect.InColor = System.Windows.Media.Color.FromRgb(255, 255, 255); 
   effect.OutColor = System.Windows.Media.Color.FromRgb(0, 0, 0); 
   effect.Channel = IntensityDetectCommandBitmapEffectsFlags.Master; 
   element.BitmapEffect = effect; 
 
   // Initialize Animations 
   Int32Animation animation1 = new Int32Animation(); 
   animation1.From = 0; 
   animation1.To = 254; 
   animation1.By = 1; 
   animation1.Duration = new Duration(TimeSpan.FromSeconds(2.0)); 
   animation1.AutoReverse = true; 
   animation1.RepeatBehavior = RepeatBehavior.Forever; 
 
   // Initialize and run Storyboard 
   Storyboard storyboard = new Storyboard(); 
   Storyboard.SetTargetName(animation1, "AnimatedBitmapEffect"); 
   Storyboard.SetTargetProperty(animation1, new PropertyPath(IntensityDetectCommandBitmapEffect.LowThresholdProperty)); 
   element.RegisterName("AnimatedBitmapEffect", effect); 
   storyboard.Children.Add(animation1); 
 
   storyboard.Begin(element); 
}
XAMLCopy Code
<Page Title="CSAnimateEffect" Height="391" Width="300" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:lteffects="clr-namespace:Leadtools.Windows.Media.Effects.Color;assembly=Leadtools.Windows.Media.Effects"> 
  <Grid> 
    <Image Margin="10,10,10,10" HorizontalAlignment="Center" VerticalAlignment="Center" Source="C:\Program Files\LEAD Technologies, Inc\LEADTOOLS 16\Images\slave.jpg"> 
      <Image.BitmapEffect> 
        <lteffects:IntensityDetectCommandBitmapEffect x:Name="MyBitmapEffect" HighThreshold="255" /> 
      </Image.BitmapEffect> 
      <Image.Triggers> 
        <EventTrigger RoutedEvent="Image.Loaded"> 
          <BeginStoryboard> 
            <Storyboard> 
              <Int32Animation Storyboard.TargetName="MyBitmapEffect" Storyboard.TargetProperty="LowThreshold" From="0" To="254" Duration="0:0:2" RepeatBehavior="Forever" AutoReverse="True" /> 
            </Storyboard> 
          </BeginStoryboard> 
        </EventTrigger> 
      </Image.Triggers> 
    </Image> 
  </Grid> 
</Page>

Remarks

  • The image is divided into two parts, inner and outer according to the values of the LowThreshold property and the HighThreshold property.
  • The class can process 2 or more channels at a time by OR-ing two or more flags.

Inheritance Hierarchy

System.Object
   System.Windows.Threading.DispatcherObject
      System.Windows.DependencyObject
         System.Windows.Freezable
            System.Windows.Media.Animation.Animatable
               System.Windows.Media.Effects.BitmapEffect
                  Leadtools.Windows.Media.Effects.RasterCommandBitmapEffect
                     Leadtools.Windows.Media.Effects.Color.IntensityDetectCommandBitmapEffect

Requirements

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

See Also