zoukankan      html  css  js  c++  java
  • opencv笔记二(矩阵边界填充)

    矩阵的边界填充类型

    Mat C =(Mat_<uchar>(3,3)<<1,2,3,4,5,6,7,8,9);
        uchar *data = NULL;
        for (int row = 0; row < C.rows; row++)
        {
            data = (uchar *)C.ptr<uchar>(row);
            cout << "[";
            for (int col = 0; col < C.cols; col++)
            {
                cout << (int)data[col] << " ";
            }
            cout << "]"  << endl;
        }
        Mat D;
        copyMakeBorder(C, D, 2, 2, 2, 2, BORDER_REPLICATE);
        for (int row = 0; row < D.rows; row++)
        {
            data = (uchar *)D.ptr<uchar>(row);
            cout << "[";
            for (int col = 0; col < D.cols; col++)
            {
                cout << (int)data[col] << " ";
            }
            cout << "]"  << endl;
        }
        cout << endl;
    View Code

    结果

    其他填充类型:

    //! Various border types, image boundaries are denoted with `|`
    //! @see borderInterpolate, copyMakeBorder
    enum BorderTypes {
        BORDER_CONSTANT    = 0, //!< `iiiiii|abcdefgh|iiiiiii`  with some specified `i`
        BORDER_REPLICATE   = 1, //!< `aaaaaa|abcdefgh|hhhhhhh`
        BORDER_REFLECT     = 2, //!< `fedcba|abcdefgh|hgfedcb`
        BORDER_WRAP        = 3, //!< `cdefgh|abcdefgh|abcdefg`
        BORDER_REFLECT_101 = 4, //!< `gfedcb|abcdefgh|gfedcba`
        BORDER_TRANSPARENT = 5, //!< `uvwxyz|abcdefgh|ijklmno`
    
        BORDER_REFLECT101  = BORDER_REFLECT_101, //!< same as BORDER_REFLECT_101
        BORDER_DEFAULT     = BORDER_REFLECT_101, //!< same as BORDER_REFLECT_101
        BORDER_ISOLATED    = 16 //!< do not look outside of ROI
    };
    View Code
  • 相关阅读:
    谈谈程序员、技术主管和架构师
    PyPI教程
    python以下划线开头的变量和函数的作用
    csv和xlsx区别
    编码问题2 utf-8和Unicode的区别
    编码问题1
    洛谷 1404 平均数
    洛谷 1441 砝码秤重
    【模板】高斯消元法
    线段树练习题
  • 原文地址:https://www.cnblogs.com/walker-lin/p/11578470.html
Copyright © 2011-2022 走看看