How can i perform histogram equalization transformation in 3 by 3 neighborhood of a pixel and repeat the process?
8 次查看(过去 30 天)
显示 更早的评论
Say for example
X=[2 1 0; 0 1 3; 4 1 4];
%zero padding
A=padarray(X,[1,1]);
Now for each pixel of X a 3 by 3 neighborhood matrix can be generated from A.
e.g.
A(1:3,1:3); A(1:3,2:4);
For each window, i want to use histogram equalization transformation for the central pixel and repeat the process up to
length(x(:)).
The steps of my algorithm are summarized here
- Find the central pixel and its neighborhood.
- Use histogram equalization transformation for each neighborhood to transform the central pixel.
- Move from pixel to pixel and repeat the process.
0 个评论
回答(1 个)
Image Analyst
2014-1-2
You need to use adapthisteq(). It will do that, though for such a small window your output image is likely to look list noise.
4 个评论
Image Analyst
2014-1-4
It doesn't look like it. Why do you want it? What do you think the resulting image will look like and why do you expect it would be preferable to those distributions? If you really need it for some reason, you may have to program it up yourself.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Histograms 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!