Home OpenCV 행렬 생성
Post
Cancel

OpenCV 행렬 생성

해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다.

행렬 생성

행렬 초기화

  • cv::Mat img(int height, int width, string type)로 초기화하여 생성
1
2
3
4
5
6
7
8
9
10
11
12
#include "opencv2/opencv.hpp"

int main(void)
{
    cv::Mat img(360, 640, CV_8UC3);

    cv::imshow("debug", img);
    cv::waitKey();
    cv::destroyAllWindows();

    return 0;
}
  • 높이 360, 길이 640, RGB 3채널을 갖는 행렬 생성

cv::Mat::create

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include "opencv2/opencv.hpp"

int main(void)
{
    cv::Mat img2;
    img2.cv::Mat::create(cv::Size(640, 360), CV_8UC3);

    cv::imshow("debug", img2);
    cv::waitKey();
    cv::destroyAllWindows();

    return 0;
}

그 외

1
2
3
4
5
6
7
8
9
10
#include "opencv2/opencv.hpp"

int main(void)
{
    cv::Mat img3 = cv::Mat::zeros(360, 640, CV_8UC3);
    cv::Mat img4 = cv::Mat::ones(360, 640, CV_8UC3);
    cv::Mat img5 = cv::Mat::eyes(360, 640, CV_8UC3);

    return 0;
}
  • cv::Mat::zeros(int height, int width, flags): 0 으로 초기화 된 행렬 생성
  • cv::Mat::ones(int height, int width, flags): 1 로 초기화 된 행렬 생성
  • cv::Mat::eye(int height, int width, flags): 단위 행렬 (A x E = A 를 만족하는 행렬)
This post is licensed under CC BY 4.0 by the author.

OpenCV 행렬 복사

OpenCV 행렬 범위 참조