I need to trace the internal feature boundaries of blobs (blood cells) in OpenCV to train a classifier.

As a good reference from ICY in java, the following sequence of operations gives good, workable edge contours.

Edge Detector( Feature Detector( CLAHE (Original Image) ) )

ICY Feature Detector and Edge Detector

[UPDATE1 @Amitay] In the above image, the first reddish blob is the original image, the second one is the result of the Feature Detector operation from ICY and the third one is the result of applying the Edge Detector on the detector features.

Attempting this in OpenCV using the LabEdgeDetector.cpp ( by Austin Walters) followed by Canny Edge detector, I get the following - not so smooth results. There are lots of X and Y directional artifacts throwing the edge detection off.

Sobel gradients in X and Y followed by Canny Edge detector in OpenCV

From what I can see in the java source, the ICY feature detector plugin uses steerable filters for its operation (steerabledetector.java).

  1. Are there equivalent featuredetector algos in OpenCV? If so please list them.

  2. How can I improve on my results? Please guide me on any other sequence of existing OpenCV operations that can produce similar results to those from ICY above.

p.s I dont have enough reputaions to post more links and references.

  • $\begingroup$ Can you please post the original image alone. $\endgroup$ – Amitay Nachmani Sep 2 '16 at 6:23
  • $\begingroup$ @Amitay The original image is the one with reddish blobs on the ICY progression Image. I will clarify this in the question - (this being my first post here, I could use only 2 image links! ) $\endgroup$ – sith Sep 2 '16 at 7:08

I would suggest to smooth the image before you apply the edge detection. Apply bilateral filter on the image before the edge detection( cv2.biltralfilter).

  • $\begingroup$ well... bilateralFilter has no perceptible effect regardless of where I apply it in the sequence of ops. $\endgroup$ – sith Sep 2 '16 at 13:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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