#include <ipl98/cpp/image.h> #include <ipl98/cpp/algorithms/mask_operation.h> #include <ipl98/cpp/algorithms/morphology.h> using namespace ipl; class Ip { public: /** * This is a method for computing the difference between two CImages. * * @param One The reference CImage * @param Two The alarm CImage * @return A CImage which is the differce image * */ ipl::CImage ComputeDiff(CImage* One, CImage* Two); /** * Method that performs a intensity correction of the images. * * @param One The reference CImage * @param Two The alarm CImage */ void HistoEqImages(CImage* One, CImage* Two); /** * Method for finding several histogram-related variables. * * @param img1 The reference CImage * @param img2 The alarm CImage * @param minP The minimum intensity found in the alarm CImage * @param maxP The maximum intensity found in the alarm CImage * @param avgP1 The average intensity found in the reference CImage * @param avgP2 The average intensity found in the alarm CImage * @param changeP The change in average intensity between the two CImages */ void FindingHistoVar(CImage* img1, CImage* img2, int* minP, int* maxP, double* avgP1, double* avgP2, double* changeP); /** * Method that finsd information about the objects found in the difference image. * * @param Img The difference CImage * @param nrObjects The number of objects found in the image * @param largestObject The size of the largest object found in the difference CImage * @param avgObject The average size of all objects found in the difference CImage */ void CountNrOfObjects(CImage* Img, long* nrObjects, long* largestObject, double* avgObject); /** * Method that converts a RGB-CImage to grayscale. * * @param One The CImage that is going to be converted * @param sizex The x-size of the CImage * @param sizey The y-size of the CImage * @return The converted CImage in grayscale */ ipl::CImage ConvertRGBtoGray(CImage* One, int* sizex, int* sizey); /** * Method that controls the flow in the image processing module. * */ void InitializeStart(); //void main(); };