2

I am writing something in C#/.NET in Visual Studio to find blobs (small white circles on a dark background. I need to translate these center points of the blob to real world coordinates. I would need a calibration capability and a blob detection capability.

I would like to start with a free library to prove the concept and move on to a paid version (if needed) if the proof of concept is successful. Currently speed is not the most important. Ease of use and good documentation would be nice.

Edit Here is an image that is somewhat similar to the kind of images I am looking to find blobs in: enter image description here

or this: enter image description here

2
  • Could you add an example of an image on which you want to detect the blobs/white circles ? May 25, 2020 at 22:01
  • @thieupepijn - Not yet. I am in planning stages. I am in the position that I can make the image and the acquisition device as favorable as possible for the software. I do have experience integrating Cognex cameras (not appropriate in this case) and with Matlab. The blobs will be circular to elliptical with clear separation between them. From previous experience they will be easy to ID. I will add an image to my post that would be similar in quality. May 26, 2020 at 14:17

1 Answer 1

1

You could use the LEADTOOLS imaging SDK to do this. (Disclosure: I work for this library’s vendor).

The image processing functions in the SDK can be used as follows:

  1. Load a copy of the image and binarize it (convert it to pure black and white) to simplify detection.

  2. Look for first black pixel (or first white pixel if blobs are white).

  3. Use magic-wand feature to get a region consisting of all neighboring pixels (the blob).

  4. Obtain the region (blob) location and size.

  5. Fill it with white to remove it from the loaded copy, so it doesn’t get detected again.

  6. Repeat.

    There’s a forum post on our site that contains a simple project that does this here: HOW TO: Find simple blobs in image

I’m attaching a screenshot animation that shows the demo program working on one of the images you posted. The demo’s code paints the region red before deleting it to show its location, but you can remove this step if you’re doing a fully automated detection.

Blob detection with LEADTOOLS

You can try this before deciding whether to buy the library by downloading the free evaluation of the SDK from this page

3
  • Thanks for that. Which package has what I need for blob detection and calibration? May 26, 2020 at 19:38
  • The functions and classes used in the demo are ImageProcessing.ColorResolutionCommand, RasterImage.GetPixel, RasterImage.AddMagicWandToRegion, RasterImage.GetRegionBounds and ImageProcessing.FillCommand. They are all part of LEADTOOLS Imaging Pro. The setup on the Downloads page is the main installer titled "LEADTOOLS Recognition, Document, Medical, Vector, and Imaging Evaluation". May 27, 2020 at 6:02
  • Regarding calibration, the dimensions displayed in the message box are in pixels. If the image has actual resolution information (dots per inch or DPI), the SDK reads the DPI when loading the image, and you can convert the numbers to physical dimensions using the formula (inches = pixels / DPI). You can also use other methods of calibration. Tech support is free during evaluation so you can email us detailed questions if you like once you try the demo. May 27, 2020 at 13:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.