Changes between Version 6 and Version 7 of libpipi/research/filters


Ignore:
Timestamp:
08/21/2008 01:39:43 PM (16 years ago)
Author:
Sam Hocevar
Comment:

reorganise sections

Legend:

Unmodified
Added
Removed
Modified
  • libpipi/research/filters

    v6 v7  
    22
    33= Gaussian filtering =
    4 
    5 Current code:
    6  * [/browser/libpipi/trunk/pipi/filter/blur.c]
    7  * [/browser/libpipi/trunk/pipi/filter/convolution_template.h]
    8  * [/browser/libpipi/trunk/pipi/filter/convolution.c]
    94
    105The usual way to create a Gaussian kernel is to evaluate a Gaussian function at the center of each cell:
     
    2116}}}
    2217
     18=== Code ===
     19 * [/browser/libpipi/trunk/pipi/filter/blur.c]
     20 * [/browser/libpipi/trunk/pipi/filter/convolution_template.h]
     21 * [/browser/libpipi/trunk/pipi/filter/convolution.c]
     22
    2323= Median filtering =
    24 
    25 Current code:
    26  * [/browser/libpipi/trunk/pipi/filter/median.c]
    2724
    2825There are several ways to optimise a median filter.
     
    3128
    3229The second idea is to optimise the median selection. The most naive method is to bubble-sort the neighbourhood values and select the middle point, which has complexity O(n²). Improving on the sort algorithm by using eg. heapsort or quicksort, reduces the complexity to O(n.log2(n)). But since we’re only interested in the median and not in ordering the rest of the data, we can use an efficient median selection algorithm. This operation can be done in fewer than 3n tests ![1] but the practical implementation is extremely complex.
     30
     31=== Code ===
     32 * [/browser/libpipi/trunk/pipi/filter/median.c]
    3333
    3434=== Links ===
     
    4242
    4343= Dilate / erode =
    44 
    45 Current code:
    46  * [/browser/libpipi/trunk/pipi/filter/dilate.c]
    4744
    4845Erosion and dilation already work, but only for nearest pixels.
     
    6360}}}
    6461
     62=== Code ===
     63 * [/browser/libpipi/trunk/pipi/filter/dilate.c]
     64
    6565=== Links ===
    66 
    6766 * [http://ostermiller.org/dilate_and_erode.html Efficiently Implementing Dilate and Erode Image Functions]