68 lines
1.4 KiB
C++
68 lines
1.4 KiB
C++
#include "ImageMatQueue.h"
|
|
#include "ImageApplyHeaders.h"
|
|
#include "stdarg.h"
|
|
|
|
ImageMatQueue::ImageMatQueue()
|
|
{
|
|
|
|
}
|
|
|
|
void ImageMatQueue::addProcess(ImageProcessMode option, ...)
|
|
{
|
|
va_list arg_ptr;
|
|
|
|
switch (option)
|
|
{
|
|
case AdjustColors:
|
|
va_start(arg_ptr, option);
|
|
m_list_proc.push_back(new CImageApplyOutHole(static_cast<float>(va_arg(arg_ptr, double)), static_cast<float>(va_arg(arg_ptr, double)),
|
|
va_arg(arg_ptr, int)));
|
|
break;
|
|
case AutoContrast:
|
|
break;
|
|
case AutoCrop:
|
|
break;
|
|
case BWBinaray:
|
|
break;
|
|
case Channel:
|
|
break;
|
|
case CustomCrop:
|
|
break;
|
|
case CustomGamma:
|
|
break;
|
|
case DetachNoise:
|
|
break;
|
|
case DiscardBlank:
|
|
break;
|
|
case OutHole:
|
|
break;
|
|
case RefuseInflow:
|
|
break;
|
|
case Resize:
|
|
break;
|
|
case Rotation:
|
|
break;
|
|
case Sharpen:
|
|
break;
|
|
case Split:
|
|
break;
|
|
case TextureRemoval:
|
|
break;
|
|
}
|
|
//va_arg(arg_ptr, int);
|
|
va_end(arg_ptr);
|
|
}
|
|
|
|
void ImageMatQueue::applyProcess(std::vector<cv::Mat>& mats)
|
|
{
|
|
for (size_t i = 0, length = m_list_proc.size(); i < length; i++)
|
|
m_list_proc[i]->apply(mats, true);
|
|
}
|
|
|
|
void ImageMatQueue::clearProcess()
|
|
{
|
|
for (CImageApply*& apply : m_list_proc)
|
|
delete apply;
|
|
m_list_proc.clear();
|
|
}
|