How do i remove unwanted/false edge pixels ?

17 次查看(过去 30 天)
I am currently working on detecting edges in an image using fuzzy logic, the resulting image identifies unwanted pixels. How do i go about this? I tried using the bwNoiseReduction function but it wont help. How do i approach this? http://imageshack.us/photo/my-images/833/71582550.jpg/

回答(2 个)

Image Analyst
Image Analyst 2012-8-31
I never heard of that function. I think you need to change the parameters of your edge detector so you don't get to many spurious edges in the first place.
  4 个评论
Image Analyst
Image Analyst 2012-9-7
Just blur the image before sending it in to your fuzzy logic edge detector. How about
blurredImage = conv2(single(grayImage), ones(15));
edgeImage = myFuzzyLogicEdgeDetector(blurredImage);

请先登录,再进行评论。


HSO
HSO 2012-9-1
Hello, You can use an Median Filter First (Salt and Pepper)with the adquate size to remove any spike noise from the image an then pass by an Gaussian Filter to smooth the image. That depends of course the conditions of the original image.
Regarding the detector, what kind of implementation are you using? Using Sobel? or just an simple Thresh over first derivative? second?, other ? remember that some detector on its implementation of kernel is very sensibility to noise.You can use Canny edge detector based on the search for local directional maxima in the gradient magnitude.
Cheers
  2 个评论
Sandesh Puligundla
编辑:Sandesh Puligundla 2012-9-5
Fuzzy rule based edge detection method using standard deviation and gradient values. Apparently the code is supposed to outperform standard techniques by detecting more edges in the image.
Image Analyst
Image Analyst 2012-9-5
Every edge detector has parameters that you can adjust. Like I said, you need to adjust them to get edges that better reflect what you think they should be.

请先登录,再进行评论。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by