LEADTOOLS画像処理(Leadtools.ImageProcessing.Colorアセンブリ)

フレームを表示

ColorThresholdCommandクラス








メンバ 
8つのカラースペースのいずれか1つを使って、指定された範囲の内側または外側にあるこうした画像のピクセルコンポーネント値をリセットします。
オブジェクトモデル
構文
'Declaration
 
Public Class ColorThresholdCommand 
   Inherits Leadtools.ImageProcessing.RasterCommand
   Implements Leadtools.ImageProcessing.IRasterCommand 
'Usage
 
Dim instance As ColorThresholdCommand
public sealed class ColorThresholdCommand : Leadtools.ImageProcessing.IRasterCommand  
@interface LTColorThresholdCommand : LTRasterCommand
public class ColorThresholdCommand extends RasterCommand
function Leadtools.ImageProcessing.Color.ColorThresholdCommand()
解説
あらゆるカラースペースコンポーネントは、様々なレンジを備えているかもしれません:
カラーコンポーネント コンポーネントあたり8ビットの範囲。 コンポーネントあたり16ビットの範囲。
RGB
R 0 ... 255 0 ... 65535
G 0 ... 255 0 ... 65535
B 0 ... 255 0 ... 65535
HSV
H 0 ... 360 0 ... 36000
S 0 ... 100 0 ... 10000
V 0 ... 255 0 ... 65535
HL
H 0 ... 360 0 ... 36000
L 0 ... 255 0 ... 65535
S 0 ... 100 0 ... 10000
XYZ
X 0 ... 255 0 ... 65535
Y 0 ... 255 0 ... 65535
Z 0 ... 255 0 ... 65535
YCrCb
Y 0 ... 255 0 ... 65535
cr -128 ... 127 -32768 ... 32767
Cb -128 ... 127 -32768 ... 32767
YUV
Y 0 ... 255 0 ... 65535
U -112 ... 111 -28567 ... 28566
V -138 ... 137 -35337 ... 35336
LAB
L 0 ... 100 0 ... 10000
A -128 ... 127 -32768 ... 32767
B -128 ... 127 -32768 ... 32767
CMY
C 0 ... 255 0 ... 65535
M 0 ... 255 0 ... 65535
Y 0 ... 255 0 ... 65535


このクラスは、以下のように機能します:
  1. imageは、必須のカラースペースに変換されます。
  2. ピクセルごとに、以下の操作は実行されます:各々のコンポーネントは、適切なColorThresholdCommandComponentクラスのMinimumRangeとMaximumRange値と比較されます。
    • 範囲内にあれば、そのコンポーネントはテストを「合格した」とみなされます。
    • 範囲外にあれば、そのコンポーネントは「拒否されました」。ColorThresholdCommandFlags.BandRejectフラグは、「拒否」コンポーネントを「合格」に変更する、またはその逆を行うことでこれを逆にします。
  3. ColorThresholdCommandFlags.EffectChannelが設定されるならば、コンポーネントは独立して修正されます。ColorThresholdCommandFlags.EffectAllが設定されたならば、任意のコンポーネントが拒絶されるならば、ピクセルはテストによって拒絶されます。その後、ピクセル/コンポーネントが拒絶されるならば:

詳細については、「LEADTOOLSによる画像処理入門」を参照してください。
詳細については、「色の補正」を参照してください。
サンプル

imageの上でColorThresholdCommandを実行します。

Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Color

   
Public Sub ColorThresholdCommandExample()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True
   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ImageProcessingDemo\\Image1.jpg"))

   ' Prepare the command
   Dim components() As ColorThresholdCommandComponent
   ReDim components(2)
   components(0) = New ColorThresholdCommandComponent
   components(1) = New ColorThresholdCommandComponent
   components(2) = New ColorThresholdCommandComponent

   components(0).MinimumRange = 128
   components(0).MaximumRange = 255
   components(0).Flags = 0
   components(1).MinimumRange = 128
   components(1).MaximumRange = 255
   components(1).Flags = 0
   components(2).MinimumRange = 128
   components(2).MaximumRange = 255
   components(2).Flags = 0
   Dim command As ColorThresholdCommand = New ColorThresholdCommand(ColorThresholdCommandType.Rgb, components)
   'Apply color Threshold effect on the image.
   command.Run(leadImage)
   codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24)

End Sub

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Color;

      
public void ColorThresholdCommandExample()
{
   // Load an image
   RasterCodecs codecs = new RasterCodecs();
   codecs.ThrowExceptionsOnInvalidImages = true;
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ImageProcessingDemo\\Image1.jpg"));

   // Prepare the command
   ColorThresholdCommandComponent[] Components = new ColorThresholdCommandComponent[3];

   Components[0] = new ColorThresholdCommandComponent();
   Components[0].MinimumRange = 128;
   Components[0].MaximumRange = 255;
   Components[0].Flags        = 0;
   Components[1] = new ColorThresholdCommandComponent();
   Components[1].MinimumRange = 128;
   Components[1].MaximumRange = 255;
   Components[1].Flags        = 0;
   Components[2] = new ColorThresholdCommandComponent();
   Components[2].MinimumRange = 128;
   Components[2].MaximumRange = 255;
   Components[2].Flags        = 0;

   ColorThresholdCommand command = new ColorThresholdCommand(ColorThresholdCommandType.Rgb, Components);
   //Apply color Threshold effect on the image.
   command.Run(image);
   codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24);

}

static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Color;

      
public async Task ColorThresholdCommandExample()
{
   // Load an image
   RasterCodecs codecs = new RasterCodecs();
   codecs.ThrowExceptionsOnInvalidImages = true;
   // Load the image
   string srcFileName = @"Assets\Image1.cmp";
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // Prepare the command
   ColorThresholdCommandComponent[] Components = new ColorThresholdCommandComponent[3];

   Components[0] = new ColorThresholdCommandComponent();
   Components[0].MinimumRange = 128;
   Components[0].MaximumRange = 255;
   Components[0].Flags        = 0;
   Components[1] = new ColorThresholdCommandComponent();
   Components[1].MinimumRange = 128;
   Components[1].MaximumRange = 255;
   Components[1].Flags        = 0;
   Components[2] = new ColorThresholdCommandComponent();
   Components[2].MinimumRange = 128;
   Components[2].MaximumRange = 255;
   Components[2].Flags        = 0;

   ColorThresholdCommand command = new ColorThresholdCommand(ColorThresholdCommandType.Rgb, Components);
   //Apply color Threshold effect on the image.
   command.Run(image);

   string destFileName = @"result.jpg";
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
   await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Jpeg, 0);
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Color;
using Leadtools.Examples;

public void ColorThresholdCommandExample(RasterImage image, Stream outStream)
{
   // Prepare the command
   ColorThresholdCommandComponent[] Components = new ColorThresholdCommandComponent[3];
   Components[0] = new ColorThresholdCommandComponent();
   Components[0].MinimumRange = 128;
   Components[0].MaximumRange = 255;
   Components[0].Flags        = 0;
   Components[1] = new ColorThresholdCommandComponent();
   Components[1].MinimumRange = 128;
   Components[1].MaximumRange = 255;
   Components[1].Flags        = 0;
   Components[2] = new ColorThresholdCommandComponent();
   Components[2].MinimumRange = 128;
   Components[2].MaximumRange = 255;
   Components[2].Flags        = 0;

   ColorThresholdCommand command = new ColorThresholdCommand(ColorThresholdCommandType.Rgb, Components);
   //Apply color Threshold effect on the image.
   command.Run(image);

   // Save result image
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);
   image.Dispose();
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Color

Public Sub ColorThresholdCommandExample(ByVal image As RasterImage, ByVal outStream As Stream)
   ' Prepare the command
   Dim Components As ColorThresholdCommandComponent() = New ColorThresholdCommandComponent(2){}
   Components(0) = New ColorThresholdCommandComponent()
   Components(0).MinimumRange = 128
   Components(0).MaximumRange = 255
   Components(0).Flags = 0
   Components(1) = New ColorThresholdCommandComponent()
   Components(1).MinimumRange = 128
   Components(1).MaximumRange = 255
   Components(1).Flags = 0
   Components(2) = New ColorThresholdCommandComponent()
   Components(2).MinimumRange = 128
   Components(2).MaximumRange = 255
   Components(2).Flags = 0

   Dim command As ColorThresholdCommand = New ColorThresholdCommand(ColorThresholdCommandType.Rgb, Components)
   'Apply color Threshold effect on the image.
   command.Run(image)

   ' Save result image
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24)
   image.Dispose()
End Sub
必要条件

ターゲットプラットホーム

参照

参照

ColorThresholdCommandメンバ
Leadtools.ImageProcessing.Color名前空間
LEADTOOLSによる画像処理入門
色の補正
Leadtools.ImageProcessing.Effects.BinaryFilterCommand
ColorSeparateCommandクラス
ColorMergeCommandクラス
Leadtools.ImageProcessing.Effects.AddNoiseCommand
IntensityDetectCommandクラス
Leadtools.ImageProcessing.Effects.SpatialFilterCommand
Leadtools.ImageProcessing.Effects.BinaryFilterCommand
Leadtools.ImageProcessing.Core.MaximumCommand
Leadtools.ImageProcessing.Core.MinimumCommand
Leadtools.ImageProcessing.SpecialEffects.ShadowCommand
ChangeHueSaturationIntensityCommandクラス
ColorThresholdCommandクラス
Leadtools.ImageProcessing.Core.DiscreteFourierTransformCommand
Leadtools.ImageProcessing.Core.FastFourierTransformCommand
Leadtools.ImageProcessing.Core.FourierTransformDisplayCommand
Leadtools.ImageProcessing.Core.FrequencyFilterCommand
Leadtools.ImageProcessing.Core.FrequencyFilterMaskCommand
Leadtools.ImageProcessing.Effects.DirectionEdgeStatisticalCommand
MathematicalFunctionCommandクラス
Leadtools.ImageProcessing.SpecialEffects.RevEffectCommand
SegmentCommandクラス
Leadtools.ImageProcessing.Core.SubtractBackgroundCommand
Leadtools.ImageProcessing.Effects.UserFilterCommand
AdjustTintCommandクラス
Leadtools.ImageProcessing.Core.HalfToneCommand