#endif
#endif
#define MagickEpsilon (1.0e-16)
-#define MagickHuge (1.0/MagickEpsilon)
+#define MagickHuge 3.40282347e+38F
#define MagickPI 3.14159265358979323846264338327950288419716939937510L
#define QuantumScale ((double) 1.0/(double) QuantumRange)
*channel_statistics;
MagickStatusType
- initialize,
status;
QuantumAny
(void) ResetMagickMemory(channel_statistics,0,(MaxPixelChannels+1)*
sizeof(*channel_statistics));
for (i=0; i <= (ssize_t) MaxPixelChannels; i++)
+ {
channel_statistics[i].depth=1;
- initialize=MagickTrue;
+ channel_statistics[i].maxima=(-MagickHuge);
+ channel_statistics[i].minima=MagickHuge;
+ }
for (y=0; y < (ssize_t) image->rows; y++)
{
register const Quantum
continue;
}
}
- if (initialize != MagickFalse)
- {
- channel_statistics[channel].minima=(double) p[i];
- channel_statistics[channel].maxima=(double) p[i];
- initialize=MagickFalse;
- }
- else
- {
- if ((double) p[i] < channel_statistics[channel].minima)
- channel_statistics[channel].minima=(double) p[i];
- if ((double) p[i] > channel_statistics[channel].maxima)
- channel_statistics[channel].maxima=(double) p[i];
- }
+ if ((double) p[i] < channel_statistics[channel].minima)
+ channel_statistics[channel].minima=(double) p[i];
+ if ((double) p[i] > channel_statistics[channel].maxima)
+ channel_statistics[channel].maxima=(double) p[i];
channel_statistics[channel].sum+=p[i];
channel_statistics[channel].sum_squared+=(double) p[i]*p[i];
channel_statistics[channel].sum_cubed+=(double) p[i]*p[i]*p[i];