|
|
|
@ -5,6 +5,7 @@ |
|
|
|
|
#include "calibPipeline.hpp" |
|
|
|
|
|
|
|
|
|
#include <opencv2/highgui.hpp> |
|
|
|
|
#include <opencv2/imgproc.hpp> |
|
|
|
|
|
|
|
|
|
#include <stdexcept> |
|
|
|
|
|
|
|
|
@ -58,7 +59,7 @@ PipelineExitStatus CalibPipeline::start(std::vector<cv::Ptr<FrameProcessor> > pr |
|
|
|
|
if(!mCapture.isOpened()) |
|
|
|
|
throw std::runtime_error("Unable to open video source"); |
|
|
|
|
|
|
|
|
|
cv::Mat frame, processedFrame; |
|
|
|
|
cv::Mat frame, processedFrame, resizedFrame; |
|
|
|
|
while(mCapture.grab()) { |
|
|
|
|
mCapture.retrieve(frame); |
|
|
|
|
if(mCaptureParams.flipVertical) |
|
|
|
@ -67,7 +68,15 @@ PipelineExitStatus CalibPipeline::start(std::vector<cv::Ptr<FrameProcessor> > pr |
|
|
|
|
frame.copyTo(processedFrame); |
|
|
|
|
for (std::vector<cv::Ptr<FrameProcessor> >::iterator it = processors.begin(); it != processors.end(); ++it) |
|
|
|
|
processedFrame = (*it)->processFrame(processedFrame); |
|
|
|
|
cv::imshow(mainWindowName, processedFrame); |
|
|
|
|
if (std::fabs(mCaptureParams.zoom - 1.) > 0.001f) |
|
|
|
|
{ |
|
|
|
|
cv::resize(processedFrame, resizedFrame, cv::Size(), mCaptureParams.zoom, mCaptureParams.zoom); |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
resizedFrame = std::move(processedFrame); |
|
|
|
|
} |
|
|
|
|
cv::imshow(mainWindowName, resizedFrame); |
|
|
|
|
char key = (char)cv::waitKey(CAP_DELAY); |
|
|
|
|
|
|
|
|
|
if(key == 27) // esc
|
|
|
|
|