diff options
Diffstat (limited to 'samples/ObjectDetection/include/CvVideoFrameReader.hpp')
-rw-r--r-- | samples/ObjectDetection/include/CvVideoFrameReader.hpp | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/samples/ObjectDetection/include/CvVideoFrameReader.hpp b/samples/ObjectDetection/include/CvVideoFrameReader.hpp deleted file mode 100644 index 081f92620e..0000000000 --- a/samples/ObjectDetection/include/CvVideoFrameReader.hpp +++ /dev/null @@ -1,108 +0,0 @@ -// -// Copyright © 2020 Arm Ltd and Contributors. All rights reserved. -// SPDX-License-Identifier: MIT -// -#pragma once - - -#include "IFrameReader.hpp" -#include <opencv2/opencv.hpp> - -namespace od -{ - -class CvVideoFrameReader : - public IFrameReader<cv::Mat> -{ -public: - /** - * @brief Default constructor. - * - * Underlying open cv video capture object will be instantiated. - */ - CvVideoFrameReader() = default; - - ~CvVideoFrameReader() override = default; - - /** - *@brief Initialises reader to capture frames from video file. - * - * @param source path to the video file or image sequence. - * - * @throws std::runtime_error if init failed - */ - void Init(const std::string& source); - - std::shared_ptr <cv::Mat> ReadFrame() override; - - bool IsExhausted(const std::shared_ptr <cv::Mat>& frame) const override; - - /** - * Returns effective video frame width supported by the source/set by the user. - * Must be called after Init method. - * @return frame width - */ - int GetSourceWidth() const; - - /** - * Returns effective video frame height supported by the source/set by the user. - * Must be called after Init method. - * @return frame height - */ - int GetSourceHeight() const; - - /** - * Returns effective fps value supported by the source/set by the user. - * @return fps value - */ - double GetSourceFps() const; - - /** - * Will query OpenCV to convert images to RGB - * Copy is actually default behaviour, but the set function needs to be called - * in order to know whether OpenCV supports conversion from our source format. - * @return boolean, - * true: OpenCV returns RGB - * false: OpenCV returns the fourcc format from GetSourceEncoding - */ - bool ConvertToRGB(); - - /** - * Returns 4-character code of codec. - * @return codec name - */ - std::string GetSourceEncoding() const; - - /** - * Get the fourcc int from its string name. - * @return codec int - */ - int GetSourceEncodingInt() const; - - int GetFrameCount() const; - -private: - cv::VideoCapture m_capture; - - void CheckIsOpen(const std::string& source); -}; - -class CvVideoFrameReaderRgbWrapper : - public IFrameReader<cv::Mat> -{ -public: - CvVideoFrameReaderRgbWrapper() = delete; - CvVideoFrameReaderRgbWrapper(const CvVideoFrameReaderRgbWrapper& o) = delete; - CvVideoFrameReaderRgbWrapper(CvVideoFrameReaderRgbWrapper&& o) = delete; - - CvVideoFrameReaderRgbWrapper(std::unique_ptr<od::CvVideoFrameReader> reader); - - std::shared_ptr<cv::Mat> ReadFrame() override; - - bool IsExhausted(const std::shared_ptr<cv::Mat>& frame) const override; - -private: - std::unique_ptr<od::CvVideoFrameReader> m_reader; -}; - -}// namespace od
\ No newline at end of file |