2018-04-27 09:58:53 +08:00
|
|
|
#ifndef MYNTEYE_RECTIFY_PROCESSOR_H_ // NOLINT
|
|
|
|
#define MYNTEYE_RECTIFY_PROCESSOR_H_
|
|
|
|
#pragma once
|
|
|
|
|
2018-04-28 12:44:15 +08:00
|
|
|
#include <opencv2/core/core.hpp>
|
|
|
|
|
|
|
|
#include <memory>
|
2018-04-27 09:58:53 +08:00
|
|
|
#include <string>
|
|
|
|
|
|
|
|
#include "api/processor/processor.h"
|
2018-04-28 12:44:15 +08:00
|
|
|
#include "mynteye/types.h"
|
2018-04-27 09:58:53 +08:00
|
|
|
|
|
|
|
MYNTEYE_BEGIN_NAMESPACE
|
|
|
|
|
2018-04-28 12:44:15 +08:00
|
|
|
class Device;
|
|
|
|
|
2018-04-27 09:58:53 +08:00
|
|
|
class RectifyProcessor : public Processor {
|
|
|
|
public:
|
|
|
|
static constexpr auto &&NAME = "RectifyProcessor";
|
|
|
|
|
2018-04-28 12:44:15 +08:00
|
|
|
explicit RectifyProcessor(std::shared_ptr<Device> device);
|
2018-04-27 09:58:53 +08:00
|
|
|
virtual ~RectifyProcessor();
|
|
|
|
|
|
|
|
std::string Name() override;
|
|
|
|
|
2018-04-28 14:27:43 +08:00
|
|
|
cv::Mat R1, P1, R2, P2, Q;
|
|
|
|
cv::Mat map11, map12, map21, map22;
|
|
|
|
|
2018-04-27 09:58:53 +08:00
|
|
|
protected:
|
|
|
|
Object *OnCreateOutput() override;
|
2018-04-28 13:37:25 +08:00
|
|
|
bool OnProcess(
|
2018-04-27 09:58:53 +08:00
|
|
|
Object *const in, Object *const out, Processor *const parent) override;
|
2018-04-28 12:44:15 +08:00
|
|
|
|
|
|
|
private:
|
|
|
|
void InitParams(
|
|
|
|
Intrinsics in_left, Intrinsics in_right, Extrinsics ex_left_to_right);
|
2018-04-27 09:58:53 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
MYNTEYE_END_NAMESPACE
|
|
|
|
|
|
|
|
#endif // MYNTEYE_RECTIFY_PROCESSOR_H_ NOLINT
|