From 8fea5d15d1900df7cfb36e8a1b65d07b2fbe65ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Sch=C3=B6nberger?= Date: Sat, 10 Nov 2012 13:49:52 +0100 Subject: [PATCH] Change data type of pop variable to float --- skimage/filter/rank/_core16.pxd | 2 +- skimage/filter/rank/_core16.pyx | 8 ++--- skimage/filter/rank/_core8.pxd | 2 +- skimage/filter/rank/_core8.pyx | 8 ++--- skimage/filter/rank/_crank16.pyx | 30 ++++++++--------- skimage/filter/rank/_crank16_bilateral.pyx | 4 +-- skimage/filter/rank/_crank16_percentiles.pyx | 16 ++++----- skimage/filter/rank/_crank8.pyx | 34 ++++++++++---------- skimage/filter/rank/_crank8_percentiles.pyx | 16 ++++----- 9 files changed, 60 insertions(+), 60 deletions(-) diff --git a/skimage/filter/rank/_core16.pxd b/skimage/filter/rank/_core16.pxd index f6f85202..92c6f7d6 100644 --- a/skimage/filter/rank/_core16.pxd +++ b/skimage/filter/rank/_core16.pxd @@ -6,7 +6,7 @@ cdef int int_min(int a, int b) # 16 bit core kernel receives extra information about data bitdepth -cdef void _core16(np.uint16_t kernel(Py_ssize_t *, Py_ssize_t, np.uint16_t, +cdef void _core16(np.uint16_t kernel(Py_ssize_t *, float, np.uint16_t, Py_ssize_t, Py_ssize_t, Py_ssize_t, float, float, Py_ssize_t, Py_ssize_t), np.ndarray[np.uint16_t, ndim=2] image, diff --git a/skimage/filter/rank/_core16.pyx b/skimage/filter/rank/_core16.pyx index 79fefe2b..d3715f47 100644 --- a/skimage/filter/rank/_core16.pyx +++ b/skimage/filter/rank/_core16.pyx @@ -17,19 +17,19 @@ cdef inline int int_min(int a, int b): return a if a <= b else b -cdef inline void histogram_increment(Py_ssize_t * histo, Py_ssize_t * pop, +cdef inline void histogram_increment(Py_ssize_t * histo, float * pop, np.uint16_t value): histo[value] += 1 pop[0] += 1 -cdef inline void histogram_decrement(Py_ssize_t * histo, Py_ssize_t * pop, +cdef inline void histogram_decrement(Py_ssize_t * histo, float * pop, np.uint16_t value): histo[value] -= 1 pop[0] -= 1 -cdef void _core16(np.uint16_t kernel(Py_ssize_t *, Py_ssize_t, np.uint16_t, +cdef void _core16(np.uint16_t kernel(Py_ssize_t *, float, np.uint16_t, Py_ssize_t, Py_ssize_t, Py_ssize_t, float, float, Py_ssize_t, Py_ssize_t), np.ndarray[np.uint16_t, ndim=2] image, @@ -74,7 +74,7 @@ cdef void _core16(np.uint16_t kernel(Py_ssize_t *, Py_ssize_t, np.uint16_t, # define local variable types cdef Py_ssize_t r, c, rr, cc, s, value, local_max, i, even_row # number of pixels actually inside the neighborhood (float) - cdef Py_ssize_t pop + cdef float pop # allocate memory with malloc cdef Py_ssize_t max_se = srows * scols diff --git a/skimage/filter/rank/_core8.pxd b/skimage/filter/rank/_core8.pxd index 08391eaf..503d2df0 100644 --- a/skimage/filter/rank/_core8.pxd +++ b/skimage/filter/rank/_core8.pxd @@ -12,7 +12,7 @@ cdef np.uint8_t is_in_mask(Py_ssize_t rows, Py_ssize_t cols, # 8 bit core kernel receives extra information about data inferior and superior # percentiles -cdef void _core8(np.uint8_t kernel(Py_ssize_t *, Py_ssize_t, np.uint8_t, float, +cdef void _core8(np.uint8_t kernel(Py_ssize_t *, float, np.uint8_t, float, float, Py_ssize_t, Py_ssize_t), np.ndarray[np.uint8_t, ndim=2] image, np.ndarray[np.uint8_t, ndim=2] selem, diff --git a/skimage/filter/rank/_core8.pyx b/skimage/filter/rank/_core8.pyx index 3dabe9ec..cfb011ac 100644 --- a/skimage/filter/rank/_core8.pyx +++ b/skimage/filter/rank/_core8.pyx @@ -16,13 +16,13 @@ cdef inline np.uint8_t uint8_min(np.uint8_t a, np.uint8_t b): return a if a <= b else b -cdef inline void histogram_increment(Py_ssize_t * histo, Py_ssize_t * pop, +cdef inline void histogram_increment(Py_ssize_t * histo, float * pop, np.uint8_t value): histo[value] += 1 pop[0] += 1 -cdef inline void histogram_decrement(Py_ssize_t * histo, Py_ssize_t * pop, +cdef inline void histogram_decrement(Py_ssize_t * histo, float * pop, np.uint8_t value): histo[value] -= 1 pop[0] -= 1 @@ -41,7 +41,7 @@ cdef inline np.uint8_t is_in_mask(Py_ssize_t rows, Py_ssize_t cols, return 0 -cdef void _core8(np.uint8_t kernel(Py_ssize_t *, Py_ssize_t, np.uint8_t, float, +cdef void _core8(np.uint8_t kernel(Py_ssize_t *, float, np.uint8_t, float, float, Py_ssize_t, Py_ssize_t), np.ndarray[np.uint8_t, ndim=2] image, np.ndarray[np.uint8_t, ndim=2] selem, @@ -77,7 +77,7 @@ cdef void _core8(np.uint8_t kernel(Py_ssize_t *, Py_ssize_t, np.uint8_t, float, cdef Py_ssize_t r, c, rr, cc, s, value, local_max, i, even_row # number of pixels actually inside the neighborhood (float) - cdef Py_ssize_t pop + cdef float pop # allocate memory with malloc cdef Py_ssize_t max_se = srows * scols diff --git a/skimage/filter/rank/_crank16.pyx b/skimage/filter/rank/_crank16.pyx index 9c4b8fe1..ce300cdd 100644 --- a/skimage/filter/rank/_crank16.pyx +++ b/skimage/filter/rank/_crank16.pyx @@ -14,7 +14,7 @@ from skimage.filter.rank._core16 cimport _core16 # ----------------------------------------------------------------- -cdef inline np.uint16_t kernel_autolevel(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_autolevel(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -37,7 +37,7 @@ cdef inline np.uint16_t kernel_autolevel(Py_ssize_t * histo, Py_ssize_t pop, return (imax - imin) -cdef inline np.uint16_t kernel_bottomhat(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_bottomhat(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -51,7 +51,7 @@ cdef inline np.uint16_t kernel_bottomhat(Py_ssize_t * histo, Py_ssize_t pop, return (g - i) -cdef inline np.uint16_t kernel_equalize(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_equalize(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -70,7 +70,7 @@ cdef inline np.uint16_t kernel_equalize(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_gradient(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_gradient(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -91,7 +91,7 @@ cdef inline np.uint16_t kernel_gradient(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_maximum(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_maximum(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -106,7 +106,7 @@ cdef inline np.uint16_t kernel_maximum(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_mean(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -123,7 +123,7 @@ cdef inline np.uint16_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, cdef inline np.uint16_t kernel_meansubstraction(Py_ssize_t * histo, - Py_ssize_t pop, + float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, @@ -141,7 +141,7 @@ cdef inline np.uint16_t kernel_meansubstraction(Py_ssize_t * histo, return (0) -cdef inline np.uint16_t kernel_median(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_median(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -159,7 +159,7 @@ cdef inline np.uint16_t kernel_median(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_minimum(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_minimum(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -174,7 +174,7 @@ cdef inline np.uint16_t kernel_minimum(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_modal(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_modal(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -192,7 +192,7 @@ cdef inline np.uint16_t kernel_modal(Py_ssize_t * histo, Py_ssize_t pop, cdef inline np.uint16_t kernel_morph_contr_enh(Py_ssize_t * histo, - Py_ssize_t pop, + float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, @@ -218,7 +218,7 @@ cdef inline np.uint16_t kernel_morph_contr_enh(Py_ssize_t * histo, return (0) -cdef inline np.uint16_t kernel_pop(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_pop(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -226,7 +226,7 @@ cdef inline np.uint16_t kernel_pop(Py_ssize_t * histo, Py_ssize_t pop, return (pop) -cdef inline np.uint16_t kernel_threshold(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_threshold(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -242,7 +242,7 @@ cdef inline np.uint16_t kernel_threshold(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_tophat(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_tophat(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -256,7 +256,7 @@ cdef inline np.uint16_t kernel_tophat(Py_ssize_t * histo, Py_ssize_t pop, return (i - g) -cdef inline np.uint16_t kernel_entropy(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_entropy(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, diff --git a/skimage/filter/rank/_crank16_bilateral.pyx b/skimage/filter/rank/_crank16_bilateral.pyx index 98bc5683..1fb81a2d 100644 --- a/skimage/filter/rank/_crank16_bilateral.pyx +++ b/skimage/filter/rank/_crank16_bilateral.pyx @@ -13,7 +13,7 @@ from skimage.filter.rank._core16 cimport _core16 # ----------------------------------------------------------------- -cdef inline np.uint16_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_mean(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -35,7 +35,7 @@ cdef inline np.uint16_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_pop(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_pop(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, diff --git a/skimage/filter/rank/_crank16_percentiles.pyx b/skimage/filter/rank/_crank16_percentiles.pyx index e5dc2ab7..8b45d46a 100644 --- a/skimage/filter/rank/_crank16_percentiles.pyx +++ b/skimage/filter/rank/_crank16_percentiles.pyx @@ -13,7 +13,7 @@ from skimage.filter.rank._core16 cimport _core16, int_min, int_max # ----------------------------------------------------------------- -cdef inline np.uint16_t kernel_autolevel(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_autolevel(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -46,7 +46,7 @@ cdef inline np.uint16_t kernel_autolevel(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_gradient(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_gradient(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -74,7 +74,7 @@ cdef inline np.uint16_t kernel_gradient(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_mean(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -101,7 +101,7 @@ cdef inline np.uint16_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, cdef inline np.uint16_t kernel_mean_substraction(Py_ssize_t * histo, - Py_ssize_t pop, + float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, @@ -129,7 +129,7 @@ cdef inline np.uint16_t kernel_mean_substraction(Py_ssize_t * histo, cdef inline np.uint16_t kernel_morph_contr_enh(Py_ssize_t * histo, - Py_ssize_t pop, + float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, @@ -165,7 +165,7 @@ cdef inline np.uint16_t kernel_morph_contr_enh(Py_ssize_t * histo, return (0) -cdef inline np.uint16_t kernel_percentile(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_percentile(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -185,7 +185,7 @@ cdef inline np.uint16_t kernel_percentile(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_pop(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_pop(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, @@ -205,7 +205,7 @@ cdef inline np.uint16_t kernel_pop(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint16_t kernel_threshold(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint16_t kernel_threshold(Py_ssize_t * histo, float pop, np.uint16_t g, Py_ssize_t bitdepth, Py_ssize_t maxbin, Py_ssize_t midbin, float p0, float p1, diff --git a/skimage/filter/rank/_crank8.pyx b/skimage/filter/rank/_crank8.pyx index 6fee8a9f..7398b26f 100644 --- a/skimage/filter/rank/_crank8.pyx +++ b/skimage/filter/rank/_crank8.pyx @@ -14,7 +14,7 @@ from skimage.filter.rank._core8 cimport _core8 # ----------------------------------------------------------------- -cdef inline np.uint8_t kernel_autolevel(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_autolevel(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -38,7 +38,7 @@ cdef inline np.uint8_t kernel_autolevel(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_bottomhat(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_bottomhat(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -51,7 +51,7 @@ cdef inline np.uint8_t kernel_bottomhat(Py_ssize_t * histo, Py_ssize_t pop, return (g - i) -cdef inline np.uint8_t kernel_equalize(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_equalize(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -69,7 +69,7 @@ cdef inline np.uint8_t kernel_equalize(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_gradient(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_gradient(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -89,7 +89,7 @@ cdef inline np.uint8_t kernel_gradient(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_maximum(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_maximum(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -103,7 +103,7 @@ cdef inline np.uint8_t kernel_maximum(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_mean(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -118,7 +118,7 @@ cdef inline np.uint8_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_meansubstraction(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_meansubstraction(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -133,7 +133,7 @@ cdef inline np.uint8_t kernel_meansubstraction(Py_ssize_t * histo, Py_ssize_t po return (0) -cdef inline np.uint8_t kernel_median(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_median(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -150,7 +150,7 @@ cdef inline np.uint8_t kernel_median(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_minimum(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_minimum(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -164,7 +164,7 @@ cdef inline np.uint8_t kernel_minimum(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_modal(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_modal(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -180,7 +180,7 @@ cdef inline np.uint8_t kernel_modal(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_morph_contr_enh(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_morph_contr_enh(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -203,14 +203,14 @@ cdef inline np.uint8_t kernel_morph_contr_enh(Py_ssize_t * histo, Py_ssize_t pop return (0) -cdef inline np.uint8_t kernel_pop(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_pop(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): return (pop) -cdef inline np.uint8_t kernel_threshold(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_threshold(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -225,7 +225,7 @@ cdef inline np.uint8_t kernel_threshold(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_tophat(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_tophat(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -238,7 +238,7 @@ cdef inline np.uint8_t kernel_tophat(Py_ssize_t * histo, Py_ssize_t pop, return (i - g) -cdef inline np.uint8_t kernel_noise_filter(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_noise_filter(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -262,7 +262,7 @@ cdef inline np.uint8_t kernel_noise_filter(Py_ssize_t * histo, Py_ssize_t pop, return min_i -cdef inline np.uint8_t kernel_entropy(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_entropy(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): cdef Py_ssize_t i @@ -278,7 +278,7 @@ cdef inline np.uint8_t kernel_entropy(Py_ssize_t * histo, Py_ssize_t pop, return e*10 -cdef inline np.uint8_t kernel_otsu(Py_ssize_t * histo, Py_ssize_t pop, np.uint8_t g, +cdef inline np.uint8_t kernel_otsu(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): cdef Py_ssize_t i diff --git a/skimage/filter/rank/_crank8_percentiles.pyx b/skimage/filter/rank/_crank8_percentiles.pyx index 4a11bdc4..d5072c81 100644 --- a/skimage/filter/rank/_crank8_percentiles.pyx +++ b/skimage/filter/rank/_crank8_percentiles.pyx @@ -13,7 +13,7 @@ from skimage.filter.rank._core8 cimport _core8, uint8_max, uint8_min # ----------------------------------------------------------------- -cdef inline np.uint8_t kernel_autolevel(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_autolevel(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): cdef int i, imin, imax, sum, delta @@ -45,7 +45,7 @@ cdef inline np.uint8_t kernel_autolevel(Py_ssize_t * histo, Py_ssize_t pop, return (128) -cdef inline np.uint8_t kernel_gradient(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_gradient(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): cdef int i, imin, imax, sum, delta @@ -70,7 +70,7 @@ cdef inline np.uint8_t kernel_gradient(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_mean(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): cdef int i, sum, mean, n @@ -93,7 +93,7 @@ cdef inline np.uint8_t kernel_mean(Py_ssize_t * histo, Py_ssize_t pop, cdef inline np.uint8_t kernel_mean_substraction(Py_ssize_t * histo, - Py_ssize_t pop, + float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): @@ -117,7 +117,7 @@ cdef inline np.uint8_t kernel_mean_substraction(Py_ssize_t * histo, cdef inline np.uint8_t kernel_morph_contr_enh(Py_ssize_t * histo, - Py_ssize_t pop, + float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): cdef int i, imin, imax, sum, delta @@ -148,7 +148,7 @@ cdef inline np.uint8_t kernel_morph_contr_enh(Py_ssize_t * histo, return (0) -cdef inline np.uint8_t kernel_percentile(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_percentile(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): cdef int i @@ -165,7 +165,7 @@ cdef inline np.uint8_t kernel_percentile(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_pop(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_pop(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): cdef int i, sum, n @@ -182,7 +182,7 @@ cdef inline np.uint8_t kernel_pop(Py_ssize_t * histo, Py_ssize_t pop, return (0) -cdef inline np.uint8_t kernel_threshold(Py_ssize_t * histo, Py_ssize_t pop, +cdef inline np.uint8_t kernel_threshold(Py_ssize_t * histo, float pop, np.uint8_t g, float p0, float p1, Py_ssize_t s0, Py_ssize_t s1): cdef int i