Lines Matching refs:histogram
174 histogram[256]; member
877 static void DerivativeHistogram(const double *histogram, in DerivativeHistogram() argument
888 derivative[0]=(-1.5*histogram[0]+2.0*histogram[1]-0.5*histogram[2]); in DerivativeHistogram()
889 derivative[n]=(0.5*histogram[n-2]-2.0*histogram[n-1]+1.5*histogram[n]); in DerivativeHistogram()
894 derivative[i]=(histogram[i+1]-histogram[i-1])/2.0; in DerivativeHistogram()
969 *histogram[MaxDimension], in GetImageDynamicThreshold() local
982 histogram[i]=(ssize_t *) AcquireQuantumMemory(256UL,sizeof(**histogram)); in GetImageDynamicThreshold()
983 extrema[i]=(short *) AcquireQuantumMemory(256UL,sizeof(**histogram)); in GetImageDynamicThreshold()
984 if ((histogram[i] == (ssize_t *) NULL) || (extrema[i] == (short *) NULL)) in GetImageDynamicThreshold()
989 histogram[i]=(ssize_t *) RelinquishMagickMemory(histogram[i]); in GetImageDynamicThreshold()
999 InitializeHistogram(image,histogram,exception); in GetImageDynamicThreshold()
1000 (void) OptimalTau(histogram[Red],Tau,0.2f,DeltaTau, in GetImageDynamicThreshold()
1002 (void) OptimalTau(histogram[Green],Tau,0.2f,DeltaTau, in GetImageDynamicThreshold()
1004 (void) OptimalTau(histogram[Blue],Tau,0.2f,DeltaTau, in GetImageDynamicThreshold()
1192 histogram[i]=(ssize_t *) RelinquishMagickMemory(histogram[i]); in GetImageDynamicThreshold()
1223 static void InitializeHistogram(const Image *image,ssize_t **histogram, in InitializeHistogram() argument
1241 histogram[Red][i]=0; in InitializeHistogram()
1242 histogram[Green][i]=0; in InitializeHistogram()
1243 histogram[Blue][i]=0; in InitializeHistogram()
1252 histogram[Red][(ssize_t) ScaleQuantumToChar(GetPixelRed(image,p))]++; in InitializeHistogram()
1253 histogram[Green][(ssize_t) ScaleQuantumToChar(GetPixelGreen(image,p))]++; in InitializeHistogram()
1254 histogram[Blue][(ssize_t) ScaleQuantumToChar(GetPixelBlue(image,p))]++; in InitializeHistogram()
1507 static double OptimalTau(const ssize_t *histogram,const double max_tau, in OptimalTau() argument
1573 ScaleSpace(histogram,tau,zero_crossing[i].histogram); in OptimalTau()
1574 DerivativeHistogram(zero_crossing[i].histogram,derivative); in OptimalTau()
1585 zero_crossing[i].histogram[j]=(double) histogram[j]; in OptimalTau()
1586 DerivativeHistogram(zero_crossing[i].histogram,derivative); in OptimalTau()
1648 value=zero_crossing[k].histogram[index]; in OptimalTau()
1653 if (zero_crossing[k].histogram[x] > value) in OptimalTau()
1655 value=zero_crossing[k].histogram[x]; in OptimalTau()
1660 if (zero_crossing[k].histogram[x] < value) in OptimalTau()
1662 value=zero_crossing[k].histogram[x]; in OptimalTau()
1716 static void ScaleSpace(const ssize_t *histogram,const double tau, in ScaleSpace() argument
1746 sum+=(double) histogram[u]*gamma[MagickAbsoluteValue(x-u)]; in ScaleSpace()
1812 *histogram[MaxDimension]; in SegmentImage() local
1823 histogram[i]=(ssize_t *) AcquireQuantumMemory(256,sizeof(**histogram)); in SegmentImage()
1825 if ((histogram[i] == (ssize_t *) NULL) || (extrema[i] == (short *) NULL)) in SegmentImage()
1830 histogram[i]=(ssize_t *) RelinquishMagickMemory(histogram[i]); in SegmentImage()
1841 InitializeHistogram(image,histogram,exception); in SegmentImage()
1842 (void) OptimalTau(histogram[Red],Tau,0.2,DeltaTau,smooth_threshold == 0.0 ? in SegmentImage()
1844 (void) OptimalTau(histogram[Green],Tau,0.2,DeltaTau,smooth_threshold == 0.0 ? in SegmentImage()
1846 (void) OptimalTau(histogram[Blue],Tau,0.2,DeltaTau,smooth_threshold == 0.0 ? in SegmentImage()
1860 histogram[i]=(ssize_t *) RelinquishMagickMemory(histogram[i]); in SegmentImage()