Cleaning Up Color Images with LEADTOOLS Document Imaging

Posted on 2016-10-07 10:49:40 by Greg

One of the most foundational features in document imaging is image cleanup (also called preprocessing). When paper documents are scanned to digital form there are almost always imperfections. The paper can be at an angle, hole punches leave large black dots, folded paper introduces lines, and at the very least dust speckles litter small, dark dots throughout the image. All of these can have an adverse trickle-down effect on many other algorithms such as OCR, Forms, Barcode, Compression and more.

There is one caveat with most document imaging libraries: the document images must be black and white. While technically true for LEADTOOLS as well, it's not a limitation whatsoever. Each of the LEADTOOLS document cleanup functions return information on what it has done. For example, you can get the deskew angle, rectangle to crop, or region to fill and then apply those same operations on a color image:

Continue Reading...

How to Combine Video and Audio from Separate Sources

Posted on 2016-10-07 10:48:56 by Greg

LEADTOOLS Multimedia SDK has made a name for itself by offering high level controls that take the complexity out of developing DirectShow and Media Foundation applications. Most core operations such as conversion, capture and playback can be done with only a few lines of code. In addition to the high level features, LEADTOOLS is flexible enough for any advanced application with more difficult scenarios and still offers as much or as little control as desired over the graphs and topologies under the hood.

The ConvertCtrl is a perfect example of this. By setting a source file, destination file and format you can make an audio/video conversion application in minutes. Developers who wish to dive deeper can supply their own media samples and process the conversion frame by frame.

Continue Reading...

How to Load a DICOM File From a Byte Array

Posted on 2016-10-07 10:48:09 by Greg

More often than not, DICOM files are loaded from a location on disk due to the size and complexity of the files. However, no environment and scenario is the same and we periodically get requests regarding how to load DICOM files from memory, more specifically a byte[] rather than a Stream. Due to the way that .NET garbage collection works we must use a .NET GCHandle object when passing an IntPtr to the overloaded DicomDataSet.Load function.


private byte[] loadedFile; // byte array for DICOM file from database, server, etc.
private DicomDataSet dicomDS;
private DicomElement element;

// Pin object so it is not garbage collected before work is done.
GCHandle gch = GCHandle.Alloc(loadedFile);

// Load DicomDS from byte[] using IntPtr of array.
dicomDS.Load(Marshal.UnsafeAddrOfPinnedArrayElement(loadedFile, 0),
   loadedFile.Length, DicomDataSetFlags.None);

// Unpin object.
gch.Free();

// Get image from DicomDS.
element = dicomDS.FindFirstElement(null, DicomTag.PixelData, true);
rasterImageViewer1.Image = dicomDS.GetImage(element, 0, 0,
   Leadtools.RasterByteOrder.Gray, DicomGetImageFlags.None);

To download the entire C# example project for versions 17.5 and 18, check out this forum post.

Continue Reading...

Using Video Transforms with the LEADTOOLS Media Foundation Play Control

Posted on 2016-10-07 10:47:01 by Greg

Microsoft Media Foundation is rapidly gaining ground as more and more people adopt the latest Windows Operating Systems. Naturally, it is growing in popularity among our customers since we released our Media Foundation SDK earlier this year.

LEADTOOLS includes high level controls for handling all of the core Multimedia functionality such as playback, capture and conversion. More advanced applications often implement transforms (previously known as filters in DirectShow) to add special processing to the audio and video streams. One of the most popular and flexible transforms in LEADTOOLS is the Video Callback Transform, which gives you direct access to the raw video data. With that data, and one of LEADTOOLS raster, document or medical imaging SDKs, the possibilities are quite endless.

Continue Reading...

Major Update for LEADTOOLS 17.5 Released!

Posted on 2016-10-07 10:44:08 by Greg

Continue Reading...
LEADTOOLS Blog

LEADTOOLS Powered by Apryse,the Market Leading PDF SDK,All Rights Reserved