pixel Segmentation using histograms

조회 수: 4 (최근 30일)
Mehwish
Mehwish 2013년 8월 28일
Hi, I am facing with a theoretical confusion and I hope some one can clear it up for me.
Is it possible to find gradients on the basis of a simple histogram?
I came across a mention of an algorithm which finds gradients on the basis of highest peaks of a histogram but I wasn't able to find it on web even after much searching.
Can someone please point me in the right direction if any of you have any idea regarding this? I shall be extremly grateful.
Thanks
Mehwish

채택된 답변

Image Analyst
Image Analyst 2013년 8월 28일
Not in general, though with fancier algorithms you can find some gradients (edges). For example using the range filter in the Image Processing Toolbox:
I = imread('liftingbody.png');
J = rangefilt(I);
imshow(I), figure, imshow(J);
or using stdfilt() or graycomatrix(). But these are a little more complicated than a simple global histogram of the whole image.

추가 답변 (1개)

Mehwish
Mehwish 2013년 8월 28일
편집: Mehwish 2013년 8월 28일
Thanks a lot Image Analyst. You have really solved huge issue for me.
I have another thing. For example using your lines of code if I want to display only those areas in the J image which are lighter in color than the rest of the pixels of the image how to do so? And make the rest of the pixels white?
Please advise.
Thanks Mehwish
  댓글 수: 2
Image Analyst
Image Analyst 2013년 8월 28일
darkPixels = J < 150; % or whatever.
I(darkPixels) = 255; % Set dark pixels to white in the original image.
imshow(I);
Mehwish
Mehwish 2013년 8월 28일
Thanks :)

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

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

Start Hunting!

Translated by