Add width and height parameters to Initialized()'s input parameters
authorTae-Young Chung <ty83.chung@samsung.com>
Tue, 19 Oct 2021 04:21:09 +0000 (13:21 +0900)
committer엘무럿/선행S/W Lab(생활가전)/Principal Engineer/삼성전자 <e.talipov@samsung.com>
Tue, 14 Dec 2021 02:21:04 +0000 (11:21 +0900)
Signed-off-by: Tae-Young Chung <ty83.chung@samsung.com>
src/dfs_opencv.cpp
src/dfs_opencv_private.h

index c3299fbd6da5105ff965a176e929c5ad6d97b189..9fb7397b62b153e44ee081b04eb27fa8e97a4726 100644 (file)
@@ -37,7 +37,7 @@ namespace DfsAdaptationImpl
                mStereoParam(),
                mIsStereoCalibrated(false),
                mUpdateStereoCalibration(false),
-               mImageSize(640, 480)
+               mImageSize(cv::Size(0,0))
        {
                LOGI("ENTER");
                mCalibFilePath += std::string(DEFAULT_STEREO_CALIB_FILE_NAME);
@@ -145,12 +145,12 @@ namespace DfsAdaptationImpl
                LOGI("LEAVE");
 
        }
-       void DfsOCV::Initialize(DfsParameter& param)
+       void DfsOCV::Initialize(DfsParameter& param, size_t width, size_t height)
        {
                LOGI("ENTER");
 
                mDfsParam = param;
-
+               mImageSize = cv::Size(width, height);
                mDfsOcv = cv::StereoSGBM::create(1, mNumDisparities, mBlockSize);
 
                this->SetParameters();
@@ -194,6 +194,7 @@ namespace DfsAdaptationImpl
 
                LOGI("ENTER");
        }
+
        void DfsOCV::Run(DfsData& base, DfsData& extra)
        {
                LOGI("ENTER");
@@ -202,6 +203,11 @@ namespace DfsAdaptationImpl
                        throw std::runtime_error("invalid data pointer");
                }
 
+               if (cv::Size(base.width, base.height) != mImageSize ||
+                       cv::Size(extra.width, extra.height) != mImageSize) {
+                       throw std::runtime_error("invalid size");
+               }
+
                int baseCvType = ConvertDfsDataTypeToCV(base.type);
                int extraCvType = ConvertDfsDataTypeToCV(extra.type);
                if (baseCvType < 0 || extraCvType < 0) {
index 7cce5d5c92168f2c85ecebe388ffd3b265f7c93f..3e71d87c9261982969cfc9afb387e79a1e8d6394 100644 (file)
@@ -99,7 +99,7 @@ namespace DfsAdaptationImpl
                DfsOCV();
                ~DfsOCV();
 
-               void Initialize(DfsParameter& param) override;
+               void Initialize(DfsParameter& param, size_t width, size_t height) override;
                void Run(DfsData& base, DfsData& extra) override;
 
                DfsData& GetDepthData() override;