Продолжение.
Image Equalization
This code has been written in 2008 by me, Gholamreza Anbarjafari (Shahab). You can use this code for any research and academic purposes as far as you refer to the following work:
Hasan Demirel and Gholamreza Anbarjafari, "HSI Based Colour Image Equalization using Iterative nth Root and nth Power", 5th International Conference on Electrical and Computer Systems (EECS’08), Nov 27-28, 2008, Lefke, North Cyprus.
http://www.mathworks.com/matlabcentral/fileexchange/22503-image-equalizationContrast Limited Adaptive Histogram Equalization (CLAHE)
This is an image contrast enhancement algorithm that overcomes limitations in standard histogram equalization (HE). The two primary features is adaptive HE (AHE), which divides the images into regions and performs local HE, and the contrast limited AHE (CLAHE), which reduces noise by partially reducing the local HE. Bilinear interpolation is used to avoid visibility of region boundaries.
"Contrast Limited Adaptive Histogram Equalization"
by Karel Zuiderveld, karel@cv.ruu.nl
in "Graphics Gems IV", Academic Press, 1994
Ported by Leslie Smith
http://www.mathworks.com/matlabcentral/fileexchange/22182-contrast-limited-adaptive-histogram-equalization-claheTotal Variation Grayscale and Color Image Denoising
Есть картиночка, иллюстрирующая действие фильтра.
The Rudin-Osher-Fatemi total variation (TV) denoising technique poses the problem of denoising as a minimization,
Min_u int |grad u|+ (lambda/2) int (f-u)^2
where f is the noisy image, lambda is a nonnegative parameter, and u is the denoised image we seek.
u = tvdenoise(f,lambda) denoises the input image f using Chambolle's method [1]. The smaller the parameter lambda, the stronger the denoising.
If f is a color image (or any array where size(f,3) > 1), the vectorial generalization of the TV model is used and solved by a generalization of Chambolle's method [2]. The screenshot shows an example of tvdenoise applied to a noisy color image.
References
[1] A. Chambolle, "An Algorithm for Total Variation Minimization and Applications," J. Math. Imaging and Vision 20 (1-2): 89-97, 2004.
[2] X. Bresson and T.F. Chan, "Fast Minimization of the Vectorial Total Variation Norm and Applications to Color Image Processing", CAM Report 07-25.
http://www.mathworks.com/matlabcentral/fileexchange/16236-total-variation-grayscale-and-color-image-denoisingFFTSELFFILTER Frequency Domain Image Auto Filtering
Есть картиночка, иллюстрирующая действие фильтра.
Reference - This code is based on the technique described in: D.G. Bailey - Detecting regular patterns using frequency domain self-filtering, 1997 Intl. Conf. on Image Processing, 1:440-3.
http://www.mathworks.com/matlabcentral/fileexchange/4131-fftselffilter-frequency-domain-image-auto-filteringHigh Density Impulse Noise Removal
Есть картиночка, иллюстрирующая действие фильтра.
Implementation of DBA Method for High Density Impulse Noise Removal
http://www.mathworks.com/matlabcentral/fileexchange/21868-high-density-impulse-noise-removalRemoving blob(s) from a binary image
http://www.mathworks.com/matlabcentral/fileexchange/20114-removing-blobs-from-a-binary-imageHysteresis Thresholding
This function takes as parameters a grayscale image (real valued matrix of size x*w*1) and two thresholds (low and high), and returns the hysteresis thresholded version.
Hysteresis thresholding performs the following:
- every value below tLo is set to 0
- every value above tHi is set to 1
- the rest of the pixels are set to 1 if they are 4-way connected to any other 1-valued blob (area), 0 otherwise
It should be pretty straightforward to implement an 8-way connection check, if you want.
http://www.mathworks.com/matlabcentral/fileexchange/20009-hysteresis-thresholdingActive Contour Segmentation
Есть картиночка, иллюстрирующая действие фильтра.
This code implements the well-known Chan-Vese segmentation algorithm from the paper "Active Contours Without Edges."
This technique deforms an initial curve so that it separates foreground from background based on the means of the two regions. The technique is very robust to initialization and gives very nice results when there is a difference between the foreground and background means.
This code uses active contours and level sets in the implementation. It could also serve as a good framework for implementing all kinds of region-based active contour energies.
http://www.mathworks.com/matlabcentral/fileexchange/19567-active-contour-segmentationFast imrotate
This mex file will rotate UINT8 images just like imrotate(image,angle,'crop'), but ten times faster.
http://www.mathworks.com/matlabcentral/fileexchange/17788-fast-imrotateImage Rotation Correction
Есть картиночка, иллюстрирующая действие фильтра.
This function gets a rotated image and corrects its clockwise or counterclockwise rotation. It can be useful for enhancing the output images of desktop scanners.
Что-то я не понял - это deskew, что ли?
http://www.mathworks.com/matlabcentral/fileexchange/16968-image-rotation-correctionContrast Enhancement Utilities (Image Equalization, PDF, CDF)
Есть картиночка, иллюстрирующая действие фильтра.
Several functions are provided for Histogram Processing. They include: PDF, CDF, and Histogram Equalization. For further details, please refer to: "Gonzales & Woods, DIP, 2nd. ed."
http://www.mathworks.com/matlabcentral/fileexchange/14501-contrast-enhancement-utilities-image-equalization-pdf-cdfHistogram Equalization and Local Histogram Equalization
http://www.mathworks.com/matlabcentral/fileexchange/13729-histogram-equalization-and-local-histogram-equalizationBW Noise Reduction
This function gets the binary image and according to connectivity labeld the objects in Image and through the numbers of pixels in each connected component determined wether oject is noise or not.
http://www.mathworks.com/matlabcentral/fileexchange/11628-bw-noise-reductionContrast Stretch and Normalization
Stretches contrast on the image and normalize image from 0 to 1. The main difference of this function to the standard stretching functions is that standard function finds global minimum and maximum on the image, then uses some low and high threshold values to normalize image (values below LowTHR are equated to LowTHR and values above HighTHR are equated to HighTHR). This function uses threshold values that are NEXT to miminum and maximum. Thus, we can exclude image background (which is normally zero) and find minimum value on the image itself. Same consideration goes to high thr. We exclude first global maximum because, if its a spike, we have better chance with the next value, and if it is not a spike, normally, next value is quite close to max (assuming smooth image), so our error is small. If image is uniform, (all pixels have the same value), for instance zero, function returns the input array
http://www.mathworks.com/matlabcentral/fileexchange/11429-contrast-stretch-and-normalizationFrost filter for speckle noise reduction
Implementation of Frost filter for reducing speckle noise in images.
http://www.mathworks.com/matlabcentral/fileexchange/11432-frost-filter-for-speckle-noise-reductionAutomatic Thresholding
This is the function about an automatic thresholding for an image. The method is based on the entropy-based method.
http://www.mathworks.com/matlabcentral/fileexchange/8502-automatic-thresholdingAutomatic Thresholding (другое)
Compute an optimal threshold for seperating the data into two classes [1].
This algorithm can be summarized as follows. The histogram is initially segmented into two
parts using a a randonly-select starting threshold value (denoted as T(1)). Then, the data are classified into two classes (denoted as c1 and c2). Then, a new threshold value is computed as the average of the above two sample means. This process is repeated untill the threshold value
does not change any more.
The algorithm was implemented by Dhanesh Ramachandram [2]. However, the input data of her/his algorithm should lie in the range [0,255]. My code doesn't have this requirement.
Reference: [1]. T. W. Ridler, S. Calvard, Picture thresholding using an iterative selection method,
IEEE Trans. System, Man and Cybernetics, SMC-8, pp. 630-632, 1978.
[2]. Dhanesh Ramachandram, Automatic Thresholding. Available online at: http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=3195&objectType=file
http://www.mathworks.com/matlabcentral/fileexchange/10462-automatic-thresholdingSteerable Gaussian Filters
Есть картиночка, иллюстрирующая действие фильтра.
This program can be used to evaluate the first directional derivative of an image. The orientation of the filter can be specified by the user. In general, these filters could be useful for edge detection and image analysis.
The filters created by this program are derived from the "steerable filters" presented in:
W. T. Freeman and E. H. Adelson, "The Design and Use of Steerable Filters", IEEE PAMI, 1991.
A demonstration program (runDemo.m) is included which will create an animation showing the directional derivatives evenly-spaced from 0 degrees to 360 degrees (in 15 degree increments).
http://www.mathworks.com/matlabcentral/fileexchange/9645-steerable-gaussian-filtersImage Color Reduction
http://www.mathworks.com/matlabcentral/fileexchange/9043-image-color-reductionKarhunen-Loeve Decomposition for Statistical Recognition and Detection
This MATLAB script implements Karhunen-Loeve decomposition which is classical algorithm for face recognition and detection. Script uses ATT faces database http://www.uk.research.att.com/facesataglance.html
which can be downloaded from
http://www.uk.research.att.com/facedatabase.html
http://www.mathworks.com/matlabcentral/fileexchange/6995-karhunen-loeve-decomposition-for-statistical-recognition-and-detectionLocal Normalization
интересноЕсть картиночка, иллюстрирующая действие фильтра.
LOCALNORMALIZE A local normalization algorithm that uniformizes the local mean and variance of an image.
ln=localnormalize(IM,sigma1,sigma2) outputs local normalization effect of image IM using local mean and standard deviation estimated by Gaussian kernel with sigma1 and sigma2 respectively.
Contributed by Guanglei Xiong (xgl99@mails.tsinghua.edu.cn) at Tsinghua University, Beijing, China.
Inspired by the link:
http://bigwww.epfl.ch/demo/jlocalnormalization/
This is especially useful for correct non-uniform illumination or shading artifacts.
Похоже, это алгоритм выравнивания освещённности, аналогичный
http://www.djvu-soft.narod.ru/bookscanlib/016.htmKuan Filter
The basic kuan filter for denoising speckle noise affected images.
http://www.mathworks.com/matlabcentral/fileexchange/7839-kuan-filterBlueNile - Image Frequency Domain Filtering
Есть картиночка, иллюстрирующая действие фильтра.
This software enables an automatic as well as manual filtering of images in the frequency domain (pattern suppression & emphasis, image smoothing and edge enhancing). See application examples & download PC version at
http://mywebpage.netscape.com/atanasiuvlad/bluenile/
http://www.mathworks.com/matlabcentral/fileexchange/4127-bluenile-image-frequency-domain-filteringComplex Diffusion
Denoise images (gray level, can be extended for co,or) based on the concepts of linear and nonlinear diffusion. Will not introduce any blocky effects as in the case of 2nd order PDEs.
Ref :Guy Gilboa, Nir Sochen and Yehoshua Y Zeevi, Image Enhancement and Denoising by Complex Diffusion Processes, IEEE Trans. On Pattern Analysis and Machine Imtelligence, Vol. 26, No. 8, Aug. 2004
http://www.mathworks.com/matlabcentral/fileexchange/7688-complex-diffusionImage Denoising using Fourth Order PDE
PDEs are very good candidates for image denoising. One of the most commonly used PDE based denoising technique is the second order non linear PDE proposed by Perona and Malik in 90s and its various versions. One probelm with the second order PDEs is the it may arise blocky effects in the image. This can be avoided by using fourth order PDEs.
Ref : Yu-Li You, M. Kaveh, Fourth Order Partial Differential Equations for Noise Removal?, IEEE Trans. Image Processing, vol. 9, no. 10, pp 1723-1730, October 2000
http://www.mathworks.com/matlabcentral/fileexchange/7683-image-denoising-using-fourth-order-pdeRelaxed Median
Better filter for impulse noise than normal median filter.
Ref:
Abdessamad Ben Hamza, Pedro L Luque-Escamilla, Jose Martinez Aroza and Ramon Roman Roldan, Removing Noise and Preserving Details with Relaxed Median Filters, Journal of Mathematical Imaging and Vision 11, 161-177,1999.
http://www.mathworks.com/matlabcentral/fileexchange/7672-relaxed-mediangen_susan
GEN_SUSAN - Generalized SUSAN 2-D filtering SUSAN filtering with filter kernel W scaled with generalized Gaussian of intensity difference. Different prefiltering functions can be selected as well as width and exponent of the intensity scaling. GEN_SUSAN can produce filtering with caracteristics similar to wiener2 and medfilt2 and "everything inbetween"
http://www.mathworks.com/matlabcentral/fileexchange/6842-gensusanf_threshold
Есть картиночка, иллюстрирующая действие фильтра.
Demonstrates image grayscale thresholding operation in the frequency domain via a binary lifting algorithm.
http://www.mathworks.com/matlabcentral/fileexchange/6542-fthresholdmagicwand2
Есть картиночка, иллюстрирующая действие фильтра.
A function which simulates Photoshop's magic wand tool. It allows selecting of connected groups of pixels whose colors are within a predefined tolerance of some reference pixels.
Both image and reference pixels may be interactively obtained. The current version is based on Phung's magicwand, but it is much faster and interactive.
http://www.mathworks.com/matlabcentral/fileexchange/6034-magicwand2Gamma Correction
This is a small function to calculate the Gamma Correction for a input image file.
http://www.mathworks.com/matlabcentral/fileexchange/5347-gamma-correctionSimulating Photoshop's magic wand tool
Есть картиночка, иллюстрирующая действие фильтра.
The function (written entirely in MATLAB) allows the selection of connected pixels whose colors are within a defined tolerance of reference pixels.
http://www.mathworks.com/matlabcentral/fileexchange/4698-simulating-photoshops-magic-wand-toolGrayscale Dilation and Erosion
Grayscale erosion and dilation: a very fast implementation.
http://www.mathworks.com/matlabcentral/fileexchange/4163-grayscale-dilation-and-erosionBinary Dilation and Erosion
A faster implementation of binary dilation and erosion.
http://www.mathworks.com/matlabcentral/fileexchange/4152-binary-dilation-and-erosionRotate Image
http://www.mathworks.com/matlabcentral/fileexchange/4071-rotate-image