newtx/imgproc/algs/image_encoder.h

32 lines
753 B
C
Raw Normal View History

2024-02-27 04:03:51 +00:00
// encoder bmp to given format
//
// Date: 2024-02-26
#pragma once
#include <imgprc/img_processor.h>
#include <memory>
#include <vector>
class img_encoder : public image_processor
{
std::string fmt_ = ".jpg";
int jpeg_quality_ = 100;
std::vector<int> param_;
public:
img_encoder(bool weaker = false);
2024-02-27 04:03:51 +00:00
protected:
~img_encoder();
public:
virtual int set_value(const char* name/*nullptr for all options*/, void* val/*nullptr for restore*/) override;
public:
virtual image_processor* copy_weaker(void) override;
2024-02-27 04:03:51 +00:00
virtual int process(std::vector<PROCIMGINFO>& in, std::vector<PROCIMGINFO>& out) override;
public:
std::shared_ptr<std::vector<uchar>> encode(LPPACKIMAGE head, cv::Mat& mat);
};