Leadtools.ImageProcessing.SpecialEffects Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
IntelligentUpScaleCommand Class
See Also  Members   Example 
Leadtools.ImageProcessing.SpecialEffects Namespace : IntelligentUpScaleCommand Class



Automatically increases image size while preserving important features. It can also preserve certain objects chosen by the user without affecting the natural look of the image.

Syntax

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

Example

Visual Basic Copy Code
Public Sub IntelligentUpScaleCommandExample()

' Load an image
RasterCodecs.Startup()
Dim Codecs As RasterCodecs = New RasterCodecs()
Codecs.ThrowExceptionsOnInvalidImages = True

Dim image As RasterImage = Codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path & "Sample3.jpg")

Dim Command As IntelligentUpScaleCommand = New IntelligentUpScaleCommand()
Command.UpScalingOrder = 1
Command.NewWidth = image.Width + 100
Command.NewHeight = image.Height
Command.UsePreserveObjectColor = False
Command.UseRemoveObjectColor = False

' Apply the intelligent UpScale on the image.
Command.Run(image)
Codecs.Save(image, LeadtoolsExamples.Common.ImagesPath.Path & "IntelligentUpScaleResult.jpg", RasterImageFormat.Jpeg, 24)

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

   // Load an image 
   RasterCodecs.Startup(); 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "Sample3.jpg"); 
 
   IntelligentUpScaleCommand command = new IntelligentUpScaleCommand(); 
   command.UpScalingOrder = 1; 
   command.NewWidth = image.Width + 100; 
   command.NewHeight = image.Height; 
   command.UsePreserveObjectColor = false; 
   command.UseRemoveObjectColor = false; 
 
   // Apply the intelligent UpScale on the image. 
   command.Run(image); 
   codecs.Save(image, LeadtoolsExamples.Common.ImagesPath.Path + "IntelligentUpScaleResult.jpg", RasterImageFormat.Jpeg, 24); 
 
   RasterCodecs.Shutdown(); 
}

Remarks

  • Upscaling using a mask is performed only on the width dimension. To upscale using a mask on the height dimension, rotate the image, upscale it on the width dimension and rotate back to the original orientation.
  • There are no upscaling steps when a mask is used.
  • The removal area in upscaling sets an area as unimportant, allowing a particular area to be stretched.
  • The color of an area to be removed must be different than the colors in the image.
  • The color of an area to be preserved must be different than the colors in the image and different from the removal area color.
  • If multiple removal objects exist, then all of them have to be the same color. This also applies to the color of an area to be preserved.
  • If MaskImage has a preserve area and no remove area, then the newWidth must be specified.
  • Draw the mask over the area to be removed a little larger than the area to be removed. This does not always hold true but is a good practice to follow.
  • Make the mask wide enough in order to force upscaling to remain in the remove area. This does not always hold true but is a good practice to follow.
  • This command does not support signed data images.
  • This command does not support 32-bit grayscale images.

Inheritance Hierarchy

System.Object
   Leadtools.ImageProcessing.RasterCommand
      Leadtools.ImageProcessing.SpecialEffects.IntelligentUpScaleCommand

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