Opencv 학습 노트 (2): Opencv 의 기본 데이터 형식 과 데이터 구조
Last Edit 2013/12/9
1. 매트릭스 데이터 형식 과 이미지 데이터 형식
매트릭스 데이터 형식: C 언어 에서 2 차원 데이터 중의 데이터 형식, 예 를 들 어 int, float, char 등 과 같다.Opencv 에서 행렬 의 데이터 형식 있다: (S: 기호 정수 가 있 고 U: 기호 정수 가 없 으 며 F: 부동 소수점)
CV_8UC1: 8 비트 기호 가 없 는 단일 채널 행렬;
CV_32FC2: 32 비트 부동 소수점 형 2 채널 행렬;
....
이 매트릭스 데이터 형식 은 일반적으로 분배 매트릭스 함수 에서 사 용 됩 니 다. CvMat * cvCreateMat (int rows, int cols, int type), 그 중에서 이 type 은 위의 매트릭스 데이터 형식 입 니 다.
이미지 데이터 형식: 일반적인 형식: IPLDEPTH_<8, 32, 64 > (S | U | F), 이 IPL 은 Intel Image Processing Library 의 약자 입 니 다.
IPL_DEPTH_8U; 8 비트 부호 없 는 정수;
IPL_DEPTH_32F: 32 비트 의 부동 소수점;
2. 상용 데이터 구조
1)CvPoint: 성형 점 만 정의 할 수 있 습 니 다.
4. 567913. 구분 에 주의 하 세 요. CvPoint, cvPoint, 하 나 는 데이터 형식 이 고 구조 함수 입 니 다.
2) CvPoint2D32f: 2 차원 부동 소수점 형의 점
CvPoint
,
typedef struct CvPoint
{
int x; /* X , 0 */
int y; /* y , 0 */
}
CvPoint;
/* */
inline CvPoint cvPoint( int x, int y );
/* CvPoint2D32f */
inline CvPoint cvPointFrom32f( CvPoint2D32f point )
3) CvPoint32f: 3 차원 부동 소수점 형의 점
CvPoint2D32f
,
typedef struct CvPoint2D32f
{
float x; /* X , 0 */
float y; /* Y , 0 */
}
CvPoint2D32f;
/* */
inline CvPoint2D32f cvPoint2D32f( double x, double y );
/* CvPoint */
inline CvPoint2D32f cvPointTo32f( CvPoint point );
4) CVsize: 픽 셀 단위 로 정 의 된 사각형 상자 크기 이지 만 이 사각형 상자 의 그림 위 치 를 가리 키 지 않 았 습 니 다.
typedef struct CvPoint3D32f
{
float x; /* x- , 0 */
float y; /* y- , 0 */
float z; /* z- , 0 */
}
CvPoint3D32f;
/* */
inline CvPoint3D32f cvPoint3D32f( double x, double y, double z );
5) CRect: 사각형 상자 의 오프셋 과 크기 를 정의 합 니 다. 위의 CSize 와 구분 하 십시오.
typedef struct CvSize
{
int width; /* */
int height; /* */
}
CvSize;
/* */
inline CvSize cvSize( int width, int height );
6) CVScalar: 1 ~ 4 개의 수 치 를 저장 할 수 있 는 배열
typedef struct CvRect
{
int x; /* x- */
int y; /* y- */
int width; /* */
int height; /* */
}
CvRect;
/* */
inline CvRect cvRect( int x, int y, int width, int height );
7) CvMat: 다 중 채널 매트릭스
typedef struct CvScalar
{
double val[4]
}
CvScalar;
/* : val0 val[0] val1 val[1], */
inline CvScalar cvScalar( double val0, double val1=0,double val2=0, double val3=0 );
/* : val0123 val[0]...val[3] */
inline CvScalar cvScalarAll( double val0123 );
/* : val0 val[0], 0 val[1],val[2],val[3] */
inline CvScalar cvRealScalar( double val0 );
8) IplImage: 이미지 구조, 이미지 정보 포함: 크기, 채널 수, 픽 셀 깊이, 이미지 배열 줄 크기
typedef struct CvMat
{
int type; /* CvMat (CV_MAT_MAGIC_VAL), */
int step; /* */
int* refcount; /* */
union
{
uchar* ptr;
short* s;
int* i;
float* fl;
double* db;
} data; /* data */
#ifdef __cplusplus
union
{
int rows;
int height;
};
union
{
int cols;
int width;
};
#else
int rows; /* */
int cols; /* */
#endif
} CvMat;
9) CvArr: 이것 은 이미지 구조의 일반적인 유형 으로 함수 의 매개 변수 에 사용 되 며 함수 가 서로 다른 이미지 데 이 터 를 받 아들 일 수 있 음 을 나타 낸다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Opencv 학습 노트 (2): Opencv 의 기본 데이터 형식 과 데이터 구조매트릭스 데이터 형식: C 언어 에서 2 차원 데이터 중의 데이터 형식, 예 를 들 어 int, float, char 등 과 같다.Opencv 에서 행렬 의 데이터 형식 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.