top of page
Search
carmelitaharly

Matlab Code For Keller Box Method







































The Keller Box method is an image processing algorithm used in cellular automaton image processing to segment an image. Modification is made to the area in which a pixel's grey-scale value changes rapidly over a short distance, such as edge detection. A function can be used so that it will return 1 if such a change is detected and 0 otherwise. The series of images below demonstrates how this function can be applied for different shapes: square, circle, diamond and triangle. The four images below illustrate a square, circle, diamond and triangle respectively. Square and circles are fairly easy to segment as they have small features; however, the other shapes contain much larger features resulting in the need for a larger function such as a kernel. The kernel can be used as an image processing technique for image segmentation where large features are concerned. The Keller Box method was developed by Yannick Versley and Jerome Voisin in 2002 and was named after the American mathematician Richard M. Keller who also developed this algorithm. For each pixel of an image, find the edge pixels that changed their grey scale value, by applying the function to the neighbour pixels. There are two possible results: The second case contains "stable pixels" which means that they remain consistent across iterations of the function. Calculate the count of "stable pixels" in every tile. The bottom row of pixels has more than one pixel with high counts. There are many isolated blue dots in the granite columns that run parallel to each other. As shown at 2, 4 and 6, these tiles start with different numbers of blue dots because they cannot be very well segmented using this method. In the final image as shown at 7, all tiles have been segmented as well as possible. For example, if the neighbour pixels resulted in a count of two stable pixels, then put a 1 in that tile's 4x4 matrix. Then take the grey scale value of every pixel in that tile and calculate the average. This is because each pixel should have a similar grey scale value within a close range, so an average will work well for this purpose. Multiply this resulting number by 2 and put it in its 4x4 matrix. Repeat this process for every tile and save your results to memory or to file which can be later converted to an image file format such as .jpg or . png This entire process is repeated, but with a different function and a higher threshold value. If the function's output is 1, then add the grey scale value of every pixel in that tile to a running total (which should be added to memory or file). Repeat this process for every iteration of this function. For every iteration, the threshold value used to determine edge pixels changes. The results of these should be saved in memory or to file by converting them into an image file format such as .jpg or .png. This entire procedure can also be combined into 1 program and used to segment an image by keeping track of multiple iterations and thresholds during runtime. eccc085e13

0 views0 comments

Recent Posts

See All

Comentarios


bottom of page