histogram.c File Reference

#include "MagickCore/studio.h"
#include "MagickCore/cache-view.h"
#include "MagickCore/color-private.h"
#include "MagickCore/enhance.h"
#include "MagickCore/exception.h"
#include "MagickCore/exception-private.h"
#include "MagickCore/histogram.h"
#include "MagickCore/image.h"
#include "MagickCore/linked-list.h"
#include "MagickCore/list.h"
#include "MagickCore/memory_.h"
#include "MagickCore/monitor-private.h"
#include "MagickCore/pixel-accessor.h"
#include "MagickCore/prepress.h"
#include "MagickCore/quantize.h"
#include "MagickCore/registry.h"
#include "MagickCore/semaphore.h"
#include "MagickCore/splay-tree.h"
#include "MagickCore/statistic.h"
#include "MagickCore/string_.h"

Data Structures

struct  _NodeInfo
struct  _Nodes
struct  _CubeInfo

Defines

#define MaxTreeDepth   8
#define NodesInAList   1536
#define EvaluateImageTag   " Compute image colors... "
#define MaximumUniqueColors   1024
#define HistogramImageTag   "Histogram/Image"
#define UniqueColorsImageTag   "UniqueColors/Image"

Typedefs

typedef struct _NodeInfo NodeInfo
typedef struct _Nodes Nodes
typedef struct _CubeInfo CubeInfo

Functions

static CubeInfoGetCubeInfo (void)
static NodeInfoGetNodeInfo (CubeInfo *, const size_t)
static void DestroyColorCube (const Image *, NodeInfo *)
static size_t ColorToNodeId (const Image *image, const PixelInfo *pixel, size_t index)
static CubeInfoClassifyImageColors (const Image *image, ExceptionInfo *exception)
static void DefineImageHistogram (const Image *image, NodeInfo *node_info, PixelInfo **histogram)
static CubeInfoDestroyCubeInfo (const Image *image, CubeInfo *cube_info)
MagickExport PixelInfoGetImageHistogram (const Image *image, size_t *number_colors, ExceptionInfo *exception)
static MagickBooleanType CheckImageColors (const Image *image, ExceptionInfo *exception, size_t max_colors)
MagickExport MagickBooleanType IdentifyPaletteImage (const Image *image, ExceptionInfo *exception)
MagickExport MagickBooleanType IsHistogramImage (const Image *image, ExceptionInfo *exception)
MagickExport MagickBooleanType IsPaletteImage (const Image *image)
MagickExport MagickBooleanType MinMaxStretchImage (Image *image, const double black, const double white, const double gamma, ExceptionInfo *exception)
static int HistogramCompare (const void *x, const void *y)
MagickExport size_t GetNumberColors (const Image *image, FILE *file, ExceptionInfo *exception)
static void UniqueColorsToImage (Image *unique_image, CacheView *unique_view, CubeInfo *cube_info, const NodeInfo *node_info, ExceptionInfo *exception)
MagickExport ImageUniqueImageColors (const Image *image, ExceptionInfo *exception)

Define Documentation

#define EvaluateImageTag   " Compute image colors... "
#define HistogramImageTag   "Histogram/Image"

Referenced by GetNumberColors().

#define MaximumUniqueColors   1024

Referenced by IsHistogramImage().

#define MaxTreeDepth   8
#define NodesInAList   1536

Referenced by GetNodeInfo().

#define UniqueColorsImageTag   "UniqueColors/Image"

Referenced by UniqueColorsToImage().


Typedef Documentation

typedef struct _CubeInfo CubeInfo
typedef struct _NodeInfo NodeInfo
typedef struct _Nodes Nodes

Function Documentation

static MagickBooleanType CheckImageColors ( const Image image,
ExceptionInfo exception,
size_t  max_colors 
) [static]
static CubeInfo* ClassifyImageColors ( const Image image,
ExceptionInfo exception 
) [static]
static size_t ColorToNodeId ( const Image image,
const PixelInfo pixel,
size_t  index 
) [inline, static]
static void DefineImageHistogram ( const Image image,
NodeInfo node_info,
PixelInfo **  histogram 
) [static]
static void DestroyColorCube ( const Image image,
NodeInfo node_info 
) [static]
static CubeInfo* DestroyCubeInfo ( const Image image,
CubeInfo cube_info 
) [static]
static CubeInfo * GetCubeInfo ( void   )  [static]
MagickExport PixelInfo* GetImageHistogram ( const Image image,
size_t *  number_colors,
ExceptionInfo exception 
)
static NodeInfo * GetNodeInfo ( CubeInfo cube_info,
const size_t  level 
) [static]
MagickExport size_t GetNumberColors ( const Image image,
FILE *  file,
ExceptionInfo exception 
)
static int HistogramCompare ( const void *  x,
const void *  y 
) [static]
MagickExport MagickBooleanType IdentifyPaletteImage ( const Image image,
ExceptionInfo exception 
)
MagickExport MagickBooleanType IsHistogramImage ( const Image image,
ExceptionInfo exception 
)
MagickExport MagickBooleanType IsPaletteImage ( const Image image  ) 
MagickExport MagickBooleanType MinMaxStretchImage ( Image image,
const double  black,
const double  white,
const double  gamma,
ExceptionInfo exception 
)
static void UniqueColorsToImage ( Image unique_image,
CacheView unique_view,
CubeInfo cube_info,
const NodeInfo node_info,
ExceptionInfo exception 
) [static]
MagickExport Image* UniqueImageColors ( const Image image,
ExceptionInfo exception 
)

Generated on 26 Aug 2019 for MagickCore by  doxygen 1.6.1