From 6d0da8396cc07f9eee0b367dba6fd522d6a6be3f Mon Sep 17 00:00:00 2001 From: dirk Date: Sun, 9 Nov 2014 11:56:45 +0000 Subject: [PATCH] Added entropy to ChannelStatistics in Magick++. --- Magick++/lib/Magick++/Statistic.h | 4 ++++ Magick++/lib/Statistic.cpp | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/Magick++/lib/Magick++/Statistic.h b/Magick++/lib/Magick++/Statistic.h index be3eacf1f..43876af4f 100644 --- a/Magick++/lib/Magick++/Statistic.h +++ b/Magick++/lib/Magick++/Statistic.h @@ -149,6 +149,9 @@ namespace Magick // Depth size_t depth() const; + // Entropy + double entropy() const; + // Does object contain valid channel statistics? bool isValid() const; @@ -196,6 +199,7 @@ namespace Magick PixelChannel _channel; double _area; size_t _depth; + double _entropy; double _kurtosis; double _maxima; double _mean; diff --git a/Magick++/lib/Statistic.cpp b/Magick++/lib/Statistic.cpp index 97f6c3ea4..fdb4193d8 100644 --- a/Magick++/lib/Statistic.cpp +++ b/Magick++/lib/Statistic.cpp @@ -279,6 +279,7 @@ Magick::ChannelStatistics::ChannelStatistics(void) : _channel(SyncPixelChannel), _area(0.0), _depth(0.0), + _entropy(0.0), _kurtosis(0.0), _maxima(0.0), _mean(0.0), @@ -298,6 +299,7 @@ Magick::ChannelStatistics::ChannelStatistics( : _channel(channelStatistics_._channel), _area(channelStatistics_._area), _depth(channelStatistics_._depth), + _entropy(channelStatistics_._entropy), _kurtosis(channelStatistics_._kurtosis), _maxima(channelStatistics_._maxima), _mean(channelStatistics_._mean), @@ -331,6 +333,11 @@ size_t Magick::ChannelStatistics::depth() const return(_depth); } +double Magick::ChannelStatistics::entropy() const +{ + return(_entropy); +} + bool Magick::ChannelStatistics::isValid() const { return(_channel != SyncPixelChannel); @@ -396,6 +403,7 @@ Magick::ChannelStatistics::ChannelStatistics(const PixelChannel channel_, : _channel(channel_), _area(channelStatistics_->area), _depth(channelStatistics_->depth), + _entropy(channelStatistics_->entropy), _kurtosis(channelStatistics_->kurtosis), _maxima(channelStatistics_->maxima), _mean(channelStatistics_->mean), -- 2.40.0