LEADTOOLS Image Processing (Leadtools.ImageProcessing.Core assembly)
LEAD Technologies, Inc

ObjectCounterCommand Class

Example 





Members 
Gets the number of black objects in a binary image. .NET support
Object Model
ObjectCounterCommand Class
Syntax
'Declaration
 
Public Class ObjectCounterCommand 
   Inherits Leadtools.ImageProcessing.RasterCommand
   Implements Leadtools.ImageProcessing.IRasterCommand 
'Usage
 
Dim instance As ObjectCounterCommand
public sealed class ObjectCounterCommand : Leadtools.ImageProcessing.IRasterCommand  
function Leadtools.ImageProcessing.Core.ObjectCounterCommand()
public ref class ObjectCounterCommand : public Leadtools.ImageProcessing.RasterCommand, Leadtools.ImageProcessing.IRasterCommand  
Remarks
Example
 
Public WithEvents objectCounterCommand_S1 As ObjectCounterCommand
Public Sub ObjectCounterCommandExample()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif"))

   ' Prepare the command
   objectCounterCommand_S1 = New ObjectCounterCommand
   objectCounterCommand_S1.Run(leadImage)


End Sub

Private Sub ObjectCounterCommand_ObjectCounter_S1(ByVal sender As Object, ByVal e As ObjectCounterCommandEventArgs) Handles objectCounterCommand_S1.ObjectCounter

   Dim nRegionPixelSize As Integer
   Dim i As Integer
   Dim j As Integer
   nRegionPixelSize = 0
   For i = e.ObjectRectangle.Left To e.ObjectRectangle.Right - 1
      For j = e.ObjectRectangle.Top To e.ObjectRectangle.Bottom - 1
         nRegionPixelSize = nRegionPixelSize + 1
      Next j
   Next i
   MessageBox.Show("Region size in pixels is " + "( " + nRegionPixelSize.ToString() + " )")
End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
public void ObjectCounterCommandExample()
     {
         // Load an image
         RasterCodecs codecs = new RasterCodecs();
         codecs.ThrowExceptionsOnInvalidImages = true;

         RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"));

         // Prepare the command
         ObjectCounterCommand command = new ObjectCounterCommand();
         command.ObjectCounter += new EventHandler<ObjectCounterCommandEventArgs>(ObjectCounterEvent_S1);
         command.Run(image);

         MessageBox.Show("ObjectCountis" + "( " + command.Count + " )");

     }

     private void ObjectCounterEvent_S1(object sender, ObjectCounterCommandEventArgs e)
     {
         int RegionPixelSize;
         RegionPixelSize = 0;

         for(int i = e.ObjectRectangle.Left; i < e.ObjectRectangle.Right; i ++)
         {
             for (int j = e.ObjectRectangle.Top; j < e.ObjectRectangle.Bottom; j++)
             { 
                 if ( e.ObjectData[i][j] == 1)
                 {
                     RegionPixelSize++;
                 }
             }
         }

         MessageBox.Show("Region size in pixels is" + "( " + RegionPixelSize + " )");
     }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
//    [TestMethod]
//    public async Task ObjectCounterCommandExample()
//    {
//        // 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
//        ObjectCounterCommand command = new ObjectCounterCommand();
//        command.ObjectCounter += new EventHandler<ObjectCounterCommandEventArgs>(ObjectCounterEvent_S1);
//        command.Run(image);

//        Debug.WriteLine("ObjectCountis" + "( " + command.Count + " )");

//    }

//    private void ObjectCounterEvent_S1(object sender, ObjectCounterCommandEventArgs e)
//    {
//        int RegionPixelSize;
//        RegionPixelSize = 0;
        
//        for(int i = e.ObjectRectangle.X; i < e.ObjectRectangle.Width; i ++)
//        {
//            for (int j = e.ObjectRectangle.Y; j < e.ObjectRectangle.Height; j++)
//            { 
//                if ( e.ObjectData[i][j] == 1)
//                {
//                    RegionPixelSize++;
//                }
//            }
//        }
        
//        Debug.WriteLine("Region size in pixels is" + "( " + RegionPixelSize + " )");
//    }
//
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

ObjectCounterCommand Members
Leadtools.ImageProcessing.Core Namespace

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.