huago-corrcet_tools/HuaGoCorrect/ImageApplyResize.cpp

56 lines
1.0 KiB
C++
Raw Normal View History

2020-08-31 08:08:50 +00:00
#include "StdAfx.h"
#include "ImageApplyResize.h"
CImageApplyResize::CImageApplyResize()
: m_fx(1.0)
, m_fy(1.0)
, m_type(ResizeType::RATIO)
{
}
CImageApplyResize::CImageApplyResize(ResizeType type, const cv::Size& size, double fx, double fy)
: m_type(type)
, m_dSize(size)
, m_fx(fx)
, m_fy(fy)
{
}
CImageApplyResize::~CImageApplyResize(void)
{
}
void CImageApplyResize::apply(cv::Mat& pDib,int side)
{
#ifdef LOG
FileTools::write_log("imgprc.txt", "enter CImageApplyResize apply");
#endif // LOG
if (pDib.empty())
{
#ifdef LOG
FileTools::write_log("imgprc.txt", "exit CImageApplyResize apply");
#endif // LOG
return;
}
if (m_type == ResizeType::RATIO)
cv::resize(pDib, pDib, cv::Size(0, 0), m_fx, m_fy);
else
cv::resize(pDib, pDib, m_dSize);
#ifdef LOG
FileTools::write_log("imgprc.txt", "exit CImageApplyResize apply");
#endif // LOG
}
void CImageApplyResize::apply(std::vector<cv::Mat>& mats, bool isTwoSide)
{
if (mats.empty()) return;
apply(mats[0], 0);
if (isTwoSide && mats.size() > 1)
apply(mats[1], 1);
}