Mat class
: openCV에서 가장 많이 사용되는 클래스로 행렬을 나타낼 때 사용한다.
Mat 클래스의 여러가지 특징
- 2차원 행렬뿐만 아니라 고차원 행렬 표현
- 한 개 이상의 채널을 가질 수 있다.
- 정수, 실수, 복소수 등으로 구성된 행렬 또는 벡터를 저장할 수 있다.
- 그레이스케일 또는 컬러 영상을 저장할 수 있다.
- 경우에 따라 벡터 필드, 포인트 클라우드, 텐서, 히스토그램 등 정보를 저장하기도 한다.
=> 2차원 영상 데이터를 저장하고 처리하는 용도로 가장 많이 사용되고 있다.
Mat 클래스의 멤버 변수(public)
- Mat::dims 행렬의 차원을 나타냄, 영상과 같은 2차원의 경우 값이 2
- Mat::rows 행렬의 행 개수, 영상의 경우 세로 픽셀 크기 (3차원 이상의 경우 -1)
- Mat::cols 행렬의 열 개수, 영상의 경우 가로 픽셀 크기 (3차원 이상의 경우 -1)
- Mat::size 3차원 이상 행렬의 크기 정보
- Mat::data 행렬의 원소 데이터가 저장되어 있는 주소를 가리키는 포인터형 변수, 아무것도 없는 상태일 땐 NULL 값
더 자세한 설명은 openCV 문서 페이지에서 확인 가능합니다.
https://docs.opencv.org/3.4/d3/d63/classcv_1_1Mat.html
OpenCV: cv::Mat Class Reference
n-dimensional dense array class More... #include Mat () CV_NOEXCEPT Mat (int rows, int cols, int type) Mat (Size size, int type) Mat (int rows, int cols, int type, const Scalar &s) Mat (Size size, int type, const Scalar &s) Mat (
docs.opencv.org
더보기
본 내용은 < OpenCV 4로 배우는 컴퓨터 비전과 머신 러닝(저자 : 황선규) > 내용을 참고하여 작성되었습니다.
https://book.naver.com/bookdb/book_detail.nhn?bid=14722394
'프로그래밍 > 컴퓨터 비전 with openCV' 카테고리의 다른 글
영상의 필터링 (0) | 2022.04.16 |
---|---|
Mat 클래스 ( 행렬의 복사와 부분 행렬 추출 ) (0) | 2022.03.21 |
Mat 클래스 ( 행렬의 생성과 초기화 ) (0) | 2022.03.17 |
Mat 클래스 ( 개요 - Mat 행렬의 깊이, 채널, 타입 ) (0) | 2022.03.17 |