2차원 점의 좌표 표현을 위한 클래스
맴버 변수 : x, y
맴버 함수 : dot()내적 계산, ddot() double타입 내적 계산, cross() 외적 계산, inside() 점이 사각형 안에 존재하는지 확인 등등...
다양한 사칙 연산에 대한 오버로딩 지원
std::cout출력을 위한 <<연산자 오버로딩 지원
Point_클래스의 다양한 예시를 살펴 보자.
Point pt1, pt2(4, 3), pt3(2, 4); // pt1 = [0, 0]
int a = 2;
pt1 = pt2 + pt3; // pt1 = [6, 7]
pt1 = pt2 - pt3; // pt1 = [2, -1]
pt1 = pt3 * a; // pt1 = [4, 8]
pt1 = a * pt3; // pt1 = [4, 8]
pt1 = pt3 / a; // pt1 = [1, 2]
pt1 = a / pt3; // Error! : 이러한 피연산자와 일치하는 "/" 연산자가 없습니다.
pt1 += pt2; // pt1 = [5, 5]
pt1 -= pt2; // pt1 = [1, 2]
pt1 *= a; // pt1 = [2, 4]
pt1 /= a; // pt1 = [1, 2]
double v = norm(pt2); // v = 5.0
// norm() : pt2로 만들어지는 대각선의 크기를 반환(벡터를 생각하자)
bool b1 = pt1 == pt2; // b1 = false
bool b2 = pt1 != pt2; // b2 = true
cout << pt1 << endl; // output : [1, 2]
영상 또는 사각형의 크기 표현을 위한 탬플릿 클래스
맴버 변수 : width, height
맴버 함수 : area() 면적 계산 함수
다양한 사칙 연산에 대한 오버로딩 지원
std::cout출력을 위한 <<연산자 오버로딩 지원
2차원 사각형 표현을 위한 탬플릿 클래스
맴버 변수 : x, y, width, height
맴버 함수 : tl() Top Left, br() Bottom Right, size() Width & Hight, area() 사각형의 크기 반환, contains() 어떤 점이 사각형 안에 포함되었는지 반환
다양한 사칙 연산에 대한 오버로딩 지원
std::cout출력을 위한 <<연산자 오버로딩 지원
Rect_클래스 예시
Rect rc1; // rc1 = [0x0 from (0, 0)]
Rect rc2(10, 10, 60, 40); // rc2 = [60x40 from (10, 10)]
Rect rc3 = rc1 + Size(50, 40); // rc3 = [50x40 from (0, 0)]
Rect rc4 = rc2 + Point(10, 10); // rc4 = [60x40 from (20, 20)]
Rect rc5 = rc3 & rc4; // rc5 = [30x20 from (20, 20)]
Rect rc6 = rc3 | rc4; // rc6 = [80x60 from (0, 0)]

start, endsize(), empty(), all()start, end)로 구성된다.typedef std::string cv::String
std::string클래스로 대체printf()함수와 비슷하게 사용 가능.C++의 std::vector와 같다.std::cout출력을 위한 <<연산자 오버로딩 지원[]연산자를 통해 원소에 접근 가능.Mat::data 맴버 변수 사용Mat::depth()맴버 함수를 이용하여 참조CV_<bit-depth>{U|S|F}CV_32S : 32bit, short 자료형Mat::channels()함수를 이용하여 참조C{N}C4 : 4채널Mat::type()함수를 이용하여 참조CV_<bit-depth>{U|S|F}C{N}CV_8UC1 : 8bit, uchar or Unsigned char, 1채널타입 = 깊이+채널Mat클래스 함수에 대해 여기서 더 알아보기
Mat클래스를 대체하는 프록시 클래스