본문 바로가기

Programming

OpenCV - CvType (Mat datatype) 오픈cv 매트릭스 데이터타입

 OpenCV - CV_Type (Mat datatype) 

 오픈cv - CV_Type 매트릭스 데이터타입


 Mat 으로 반환되는 함수의 경우는 바로 Mat 에 변수명으로 받아도 되지만..

가끔 Mat 자체를 정해진 사이즈로 미리 만들어놓고 수정해가며 사용하는 경우가 많다. Mat.ones or Mat.zeros 를 쳐보면 뒤에 Size 객체를 넣는 함수와, 가로세로 길이를 직접 입력하는 두가지가 있다. 난 가로세로 직접 넣는게 편한 듯.

e.g.

Mat.ones(rows, cols, datatype);     

// rows * cols 사이즈의 matrix를 만들고 1로 채워준다. 들어가는 데이터타입은 CvType.CV_${해당비트} 로 정한다.

Mat.zeros(rows, cols, datatype);

// rows * cols 사이즈의 matrix를 만들고 0으로 채워준다. 들어가는 데이터타입은 CvType.CV_${해당비트} 로 정한다.


이때, 뒤에 type이 들어가는데

사실 그때그때 보면서 하면 되지만 헷갈려서 찾아봄..

푸리에변환 시에는 최소 32F로 해야 하는듯.. 2차원으로 실수와 허수를 나타낸다.

아래는 아마 C++에서의 OpenCV 내용인 것 같은데 (stackoverflow 에서 긁어옴)

Java 에서는 숫자도 붙고 종류도 더 많은 것 같다. 그건 나중에 찾아봄.



CV_8U - 8-bit unsigned integers ( 0..255 )

CV_8S - 8-bit signed integers ( -128..127 )

CV_16U - 16-bit unsigned integers ( 0..65535 )

CV_16S - 16-bit signed integers ( -32768..32767 )

CV_32S - 32-bit signed integers ( -2147483648..2147483647 )

CV_32F - 32-bit floating-point numbers ( -FLT_MAX..FLT_MAX, INF, NAN )

CV_64F - 64-bit floating-point numbers ( -DBL_MAX..DBL_MAX, INF, NAN )



8-bit unsigned integer (uchar)

8-bit signed integer (schar)

16-bit unsigned integer (ushort)

16-bit signed integer (short)

32-bit signed integer (int)

32-bit floating-point number (float)

64-bit floating-point number (double)



enum { CV_8U=0, CV_8S=1, CV_16U=2, CV_16S=3, CV_32S=4, CV_32F=5, CV_64F=6 };



something else..


2018/10/16 - [Programming/Image Processing] - OpenCV (Java) How to change Mat to Image, and save 2 (OpenCV Mat 에서 Image 변환, 저장) 2

2018/10/16 - [Programming/Image Processing] - OpenCV (Java) How to change Mat to Image, and save (OpenCV Mat 에서 Image 변환, 저장)


2018/10/16 - [Programming/Java] - Java enum class 자바 이넘 클래스 (Singleton design pattern 처럼 사용방법)

2018/10/11 - [Programming/Design Pattern ] - Design pattern - Singleton (디자인패턴 - 싱글턴)


2018/10/08 - [Algorithm/Code Signal (Code Fights)] - Aracade Intro #12 SortByHeight

2018/10/06 - [Algorithm/Code Signal (Code Fights)] - Aracade Intro #11 IsLucky

2018/10/03 - [Algorithm/Code Signal (Code Fights)] - Aracade Intro #10 CommonCharacterCount


2018/10/02 - [Programming/Image Processing] - OpenCV Java/C++ FourierFastTransferShift(fftshift) 푸리에 변환 후 위치 재설정 함수 (Matlab - fftshift) - (1)