Мультимедийное Программирование OpenCV. Serdar Orazdurdyyev

Чтение книги онлайн.

Читать онлайн книгу Мультимедийное Программирование OpenCV - Serdar Orazdurdyyev страница 5

Автор:
Жанр:
Серия:
Издательство:
Мультимедийное Программирование OpenCV - Serdar Orazdurdyyev

Скачать книгу

style="font-size:15px;">      Класс(class), используемый для представления image(изображения).

      • 

      Mat (строки, столбцы, тип, скаляр (rows, cols, type, Scalar))

      строки: размер строки (rows: row size)

      столбцы: размер столбца (cols : column size)

      тип: тип данных (type : data type)

      Скаляр: матричное значение (Scalar : matrix value)

      #include <opencv2/opencv.hpp>

      using namespace cv;

      using namespace std;

      int main()

      {

      float data[] = {

            1.2f, 2.3f, 3.2f,

            4.5f, 5.f, 6.5f,

      };

      Mat m1(2, 3, CV_8U);

      Mat m2(2, 3, CV_8U, Scalar(300));

      Mat m3(2, 3, CV_32F, data);

      Size sz(2, 3);

      Mat m4(Size(2, 3), CV_64F);

      Mat m5(sz, CV_32F, data);

      cout << "[m1] =" << endl << m1 << endl;

      cout << "[m2] =" << endl << m2 << endl;

      cout << "[m3] =" << endl << m3 << endl << endl;

      cout << "[m4] =" << endl << m4 << endl;

      cout << "[m5] =" << endl << m5 << endl;

      return 0;

      }

      #include <opencv2/opencv.hpp>

      using namespace cv;

      using namespace std;

      int main()

      {

      Mat m1(4, 3, CV_32FC3);

      cout << “Dimension = " << m1.dims << endl;

      cout << “Rows = " << m1.rows << endl;

      cout << “Columns = " << m1.cols << endl << endl;

      cout << “Channels = " << m1.channels() << endl;

      cout << “Data Type = " << m1.depth() << endl;

      cout << “Matrix Size = " << m1.size() << endl << endl;

      cout << “Total Data Number = " << m1.total() << endl;

      return 0;

      }

      #include <opencv2/opencv.hpp>

      using namespace cv;

      using namespace std;

      int main()

      {

      Mat m1(2, 3, CV_8U, 2);

      Mat m2(2, 3, CV_8U, Scalar(10));

      Mat m3 = m1 + m2;

      Mat m4 = m2 – 6;

      Mat m5 = m1;

      cout << "[m2] =" << endl << m2 << endl;

      cout << "[m3] =" << endl << m3 << endl;

      cout << "[m4] =" << endl << m4 << endl << endl;

      cout << "[m1] =" << endl << m1 << endl;

      cout << "[m5] =" << endl << m5 << endl << endl;

      m5 = 100;

      cout << "[m1] =" << endl << m1 << endl;

      cout << "[m5] =" << endl << m5 << endl;

      return 0;

      }

      • Копирование исходной матрицы в другую матрицу / Copy original matrix to another matrix

      • Матовый клон () / Mat clone ()

      • void copy To (матрица целей, матрица маски) / void copy To

      (objective matrix, mask matrix)

      – 

      mask matrix : Копирование только ненулевых элементов (elemen)

      • 

      void convertTo (objective matrix, data type)

      – 

      data type : data type, которые вы хотите изменить

      #include <opencv2/opencv.hpp>

      using namespace cv;

      using namespace std;

      int main()

      {

      double data[] = {

            1.1, 2.2, 3.3, 4.4,

            5.5, 6.6, 7.7, 8.9,

            9.9, 10, 11, 12

      };

      Mat m1(3, 4, CV_64F, data);

      Mat m2 = m1.clone(); // copy m1 to m2

      Mat

Скачать книгу