IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit

computes an output image associated to histogram equalization of an input image More...

IPSDKIPLINTENSITYTRANSFORM_API ipsdk::image::ImagePtr ipsdk::imaproc::itrans::equalize3dImg (const ipsdk::image::ImageConstPtr &pInImg, const ipsdk::imaproc::attr::RangeConstPtr &pInOutputRange)
 wrapper function for equalization of 3d volumes of input image In this version of the function, the histogram of the image is automatically computed, with a bin width of 1.0 More...
 
IPSDKIPLINTENSITYTRANSFORM_API void ipsdk::imaproc::itrans::equalize3dImg (const ipsdk::image::ImageConstPtr &pInImg, const ipsdk::imaproc::attr::RangeConstPtr &pInOutputRange, const ipsdk::image::ImagePtr &pOutImg)
 wrapper function for equalization of 3d volumes of input image In this version of the function, the histogram of the image is automatically computed, with a bin width of 1.0 More...
 
IPSDKIPLINTENSITYTRANSFORM_API ipsdk::image::ImagePtr ipsdk::imaproc::itrans::equalize3dImg (const ipsdk::image::ImageConstPtr &pInImg, const ipsdk::imaproc::attr::HistogramDataConstPtr &pInHistogram, const ipsdk::imaproc::attr::RangeConstPtr &pInOutputRange)
 wrapper function for equalization of 3d volumes of input image histogram used perform the equalization is provided as argument of the function More...
 
IPSDKIPLINTENSITYTRANSFORM_API void ipsdk::imaproc::itrans::equalize3dImg (const ipsdk::image::ImageConstPtr &pInImg, const ipsdk::imaproc::attr::HistogramDataConstPtr &pInHistogram, const ipsdk::imaproc::attr::RangeConstPtr &pInOutputRange, const ipsdk::image::ImagePtr &pOutImg)
 wrapper function for equalization of 3d volumes of input image histogram used perform the equalization is provided as argument of the function More...
 
IPSDKIPLINTENSITYTRANSFORM_API ipsdk::image::ImagePtr ipsdk::imaproc::itrans::equalize3dImg (const ipsdk::image::ImageConstPtr &pInImg, const ipsdk::imaproc::attr::PlanIndexedHistogramDataConstPtr &pInHistogram, const ipsdk::imaproc::attr::RangeConstPtr &pInOutputRange)
 wrapper function for equalization of 3d volumes of input image histograms used perform the equalization are provided as argument of the function More...
 
IPSDKIPLINTENSITYTRANSFORM_API void ipsdk::imaproc::itrans::equalize3dImg (const ipsdk::image::ImageConstPtr &pInImg, const ipsdk::imaproc::attr::PlanIndexedHistogramDataConstPtr &pInHistogram, const ipsdk::imaproc::attr::RangeConstPtr &pInOutputRange, const ipsdk::image::ImagePtr &pOutImg)
 wrapper function for equalization of 3d volumes of input image histograms used perform the equalization are provided as argument of the function More...
 

Detailed Description

computes an output image associated to histogram equalization of an input image

This algorithm applies, for each 3D volume of the input image, the intensities look-up table resulting from a histogram equalization computed using:

See also
Equalization LUT computation for details on histograms equalization.
http://en.wikipedia.org/wiki/Equalization
http://en.wikipedia.org/wiki/Histogram_equalization

Attributes description

Attribute description for algorithm :

Name ToolTip Default Initializer
ipsdk::imaproc::attr::InImg3d [Input] 3d image for operation X
ipsdk::imaproc::attr::InOptPIHistogram [Input Optional] Plan indexed collection of histogram properties X
ipsdk::imaproc::attr::OutPIHistogram [Output] Plan indexed collection of histogram properties ipsdk::imaproc::fromImageButVolume (_pOutPIHistogram, _pInImg3d)
ipsdk::imaproc::attr::InOutputRange [Input] output image intensity range for algorithm X
ipsdk::imaproc::attr::OutImg [Output] image for processing operation ipsdk::imaproc::duplicateInOut (_pOutImg, _pInImg3d)

Global Rule description

Global rule description for algorithm :
ipsdk::imaproc::matchSize (_pInImg3d,_pOutImg) && (ipsdk::imaproc::matchImageRange<ipsdk::imaproc::attr::Range::Min>(_pOutImg,_pInOutputRange) && ipsdk::imaproc::matchImageRange<ipsdk::imaproc::attr::Range::Max>(_pOutImg,_pInOutputRange)) && 
ipsdk::imaproc::is2d (_pOutPIHistogram) && 
ipsdk::imaproc::matchImagePlans (_pOutPIHistogram,_pInImg3d,eImagePlansMatchPolicy::eIPMP_CT) && 
ipsdk::processor::ifIsSet (_pInOptPIHistogram,
 ipsdk::imaproc::is2d (_pInOptPIHistogram) && 
 ((ipsdk::imaproc::isGrey (_pInOptPIHistogram) && 
   ipsdk::imaproc::isSingle (_pInOptPIHistogram)) || 
  ipsdk::imaproc::matchImagePlans (_pInOptPIHistogram,_pInImg3d,eImagePlansMatchPolicy::eIPMP_CT)))

Example of Python code :

Example imports

import PyIPSDK
import PyIPSDK.IPSDKIPLIntensityTransform as itrans

Code Example

# opening of input images
inImg = PyIPSDK.loadTiffImageFile(inputImgPath)
# definition of equalization range
equalizeRange = PyIPSDK.createRange(0.2, 252)
# equalization image computation (output image allocated by the algorithm)
autoOutImg = itrans.equalize3dImg(inImg, equalizeRange)

Example of C++ code :

Example informations

Associated library

IPSDKIPLIntensityTransform

Header file

#include <IPSDKIPL/IPSDKIPLIntensityTransform/Processor/Equalize3dImg/Equalize3dImg.h>

Code Example

// create a target range for operation
RangePtr pInOutputRange(boost::make_shared<Range>());
pInOutputRange->setValue<Range::Min>(fOutMin);
pInOutputRange->setValue<Range::Max>(fOutMax);
// Sample with a generated output image
// ------------------------------------
ImagePtr pAutoOutImg = equalize3dImg(pInImg, pInOutputRange);
// Sample with a provided output image
// -----------------------------------
equalize3dImg(pInImg, pInOutputRange, pOutImg);
See also
Equalize3dImgLvl1

Function Documentation

◆ equalize3dImg() [1/6]

IPSDKIPLINTENSITYTRANSFORM_API ipsdk::image::ImagePtr ipsdk::imaproc::itrans::equalize3dImg ( const ipsdk::image::ImageConstPtr pInImg,
const ipsdk::imaproc::attr::RangeConstPtr pInOutputRange 
)

wrapper function for equalization of 3d volumes of input image In this version of the function, the histogram of the image is automatically computed, with a bin width of 1.0

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionon failure

◆ equalize3dImg() [2/6]

IPSDKIPLINTENSITYTRANSFORM_API ipsdk::image::ImagePtr ipsdk::imaproc::itrans::equalize3dImg ( const ipsdk::image::ImageConstPtr pInImg,
const ipsdk::imaproc::attr::HistogramDataConstPtr pInHistogram,
const ipsdk::imaproc::attr::RangeConstPtr pInOutputRange 
)

wrapper function for equalization of 3d volumes of input image histogram used perform the equalization is provided as argument of the function

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionon failure

◆ equalize3dImg() [3/6]

IPSDKIPLINTENSITYTRANSFORM_API ipsdk::image::ImagePtr ipsdk::imaproc::itrans::equalize3dImg ( const ipsdk::image::ImageConstPtr pInImg,
const ipsdk::imaproc::attr::PlanIndexedHistogramDataConstPtr pInHistogram,
const ipsdk::imaproc::attr::RangeConstPtr pInOutputRange 
)

wrapper function for equalization of 3d volumes of input image histograms used perform the equalization are provided as argument of the function

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionon failure

◆ equalize3dImg() [4/6]

IPSDKIPLINTENSITYTRANSFORM_API void ipsdk::imaproc::itrans::equalize3dImg ( const ipsdk::image::ImageConstPtr pInImg,
const ipsdk::imaproc::attr::RangeConstPtr pInOutputRange,
const ipsdk::image::ImagePtr pOutImg 
)

wrapper function for equalization of 3d volumes of input image In this version of the function, the histogram of the image is automatically computed, with a bin width of 1.0

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionon failure

◆ equalize3dImg() [5/6]

IPSDKIPLINTENSITYTRANSFORM_API void ipsdk::imaproc::itrans::equalize3dImg ( const ipsdk::image::ImageConstPtr pInImg,
const ipsdk::imaproc::attr::HistogramDataConstPtr pInHistogram,
const ipsdk::imaproc::attr::RangeConstPtr pInOutputRange,
const ipsdk::image::ImagePtr pOutImg 
)

wrapper function for equalization of 3d volumes of input image histogram used perform the equalization is provided as argument of the function

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionon failure

◆ equalize3dImg() [6/6]

IPSDKIPLINTENSITYTRANSFORM_API void ipsdk::imaproc::itrans::equalize3dImg ( const ipsdk::image::ImageConstPtr pInImg,
const ipsdk::imaproc::attr::PlanIndexedHistogramDataConstPtr pInHistogram,
const ipsdk::imaproc::attr::RangeConstPtr pInOutputRange,
const ipsdk::image::ImagePtr pOutImg 
)

wrapper function for equalization of 3d volumes of input image histograms used perform the equalization are provided as argument of the function

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionon failure