Leadtools.ImageProcessing.Color Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
AddWeightedCommand Class
See Also  Members   Example 



Adds or averages the images in a list according to their weight factors.

Syntax

Visual Basic (Declaration) 
Public Class AddWeightedCommand 
   Inherits RasterCommand
   Implements IRasterCommand 
Visual Basic (Usage)Copy Code
Dim instance As AddWeightedCommand
C# 
public class AddWeightedCommand : RasterCommand, IRasterCommand  
C++/CLI 
public ref class AddWeightedCommand : public RasterCommand, IRasterCommand  

Example

Run the AddWeightedCommand on an image. and return the resulting image, assuming that the image parameter have more than one page.

Visual BasicCopy Code
Public Sub AddWeightedCommandExample()
   RasterCodecs.Startup()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

   Dim leadImage As RasterImage = codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "Master.jpg")

   ' Prepare the command
   Dim Factors() As Integer
   ReDim Factors(4)
   'take the average between all rotated bitmaps, and put the result in the.
   Dim command As AddWeightedCommand = New AddWeightedCommand
   command.Type = AddWeightedCommandType.Average
   command.Factor = Factors
   command.Factor(0) = 100
   command.Factor(1) = 100
   command.Factor(2) = 100
   command.Factor(3) = 100
   command.Run(leadImage)
   codecs.Save(command.DestinationImage, LeadtoolsExamples.Common.ImagesPath.Path + "AddWeightedCommandResult.Bmp", RasterImageFormat.Bmp, 24)

   RasterCodecs.Shutdown()
End Sub
C#Copy Code
public void AddWeightedCommandExample() 

   // Load an image 
   RasterCodecs.Startup(); 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "Master.jpg"); 
 
   // Prepare the command 
   //take the average between all rotated bitmaps, and put the result in the. 
   AddWeightedCommand command = new AddWeightedCommand(); 
   command.Type = AddWeightedCommandType.Average; 
   command.Factor = new int[5]; 
   command.Factor[0] = 100; 
   command.Factor[1] = 100; 
   command.Factor[2] = 100; 
   command.Factor[3] = 100; 
   command.Run(image); 
   codecs.Save(command.DestinationImage, LeadtoolsExamples.Common.ImagesPath.Path + "AddWeightedCommandResult.bmp", RasterImageFormat.Bmp, 24); 
 
   RasterCodecs.Shutdown(); 
}

Remarks

  • This command can be used to modify the brightness (with the add operations) or remove the noise (with the average operations). Typically, you would call this command for a series of images taken of the same object at short intervals.
  • If the value of Type property is:
    • Add, the command can be used to add several images of the same view to improve the lightness or brightness of the image. In this case, the value of Factor property will be ignored.
    • Average, the command can be used to average several images. In this case, the factor property or parameter is ignored.
    • AddWeighted, the command can be used to obtain an image as the sum of several weighted images. Each image in any position in the list has a corresponding weight factor in the same position in the Factor array. The real values are the weight factors divided by 100. For example if a weight factor is 131 its real value is 1.31. If Factor equals null, each image has the same weight factor of 100 and the result is the same as for Add.
    • AverageWeighted, the command can eliminate random noise by performing a weighted average. Each image in any position in the list has a corresponding weight factor in the factor array. The real values are the weight factors in the array divided by 100. The weighted sum will be divided by the sum of the weights. If the factor equals null, each image has the same weight factor of 100 and the result is the same as for Average.
  • This command performs operations between data byte-by-byte. An image can be any color resolution. This method will allocate and store the resulting image in DestinationImage property. The image resulting from this operation is internally copied from the first image in the list, before performing the adding operation. The operations are performed based on the smallest width and height of the input images.
  • All images must be either signed or unsigned.
  • This command 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.
For more information, refer to Changing Brightness and Contrast.

Inheritance Hierarchy

System.Object
   Leadtools.ImageProcessing.RasterCommand
      Leadtools.ImageProcessing.Color.AddWeightedCommand

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also