скачать книгу бесплатно
Объявление класса Size_ (Declaration of Size_ Class)
Size_<int> <==> Size2i <==> Size;
Size_<float> <==> Size2f;
Size_<double> <==> Size2d;
•
Бывший)
•
Ex)
Size_<int> sz1(100, 200);
Size_<float> sz2(192.3f, 25.3f);
Size_<double> sz3(100.2, 30.9);
Size sz4(120, 69);
Size2f sz5(0.3f, 0.f);
Size2d sz6(0.25, 0.6);
Прямой_класс / Rect_ Class
•
класс шаблона для представления rectangle(прямоугольников)
•
((Начальная точка_x, Начальная точка_y), (Конечная точка_x, Конечная точка_y))
•
((Начальная точка_x, Начальная точка_y), Ширина, Высота)
•
Объявление класса Rect_ (Declaration of Rect_ Class)
Rect_<int> <==> Rect2i <==> Rect;
Rect_<float> <==> Rect2f;
Rect_<double> <==> Rect2d;
•
Бывший)
•
Ex)
Size2d sz(100.5, 60.6);
Point2f pt1(20.f, 30.f), pt2(100.f, 200.f);
Rect_<int> rect1(10, 10, 30, 50);
// column, row, width, height
Rect_<float> rect2(pt1, pt2);
Rect_<double> rect3(Point2d(20.5, 10), sz);
Век-класс / Vec Class
•
Шаблонный класс(template class) для вектора(Vector) чисел с небольшим количеством элементов.
•
Укажите data type(тип данных) и количество element(элементов) между < и >.
Vec<uchar, 2> <==> Vec2b
Vec<int, 3> <==> Vec3i
Vec<float, 4> <==> Vec4f
Vec<double, 5> <==> Vec5d
•
Ex)
Vec<int, 2> v1(5, 12);
Vec<double, 3> v2(40, 130.7, 125.6);
Vec2b v3(10, 10);
Vec6f v4(40.f, 230.25f, 525.6f);
Vec3i v5(200, 230, 250);
Скаляр_класс / Scalar_ Class
•
Укажите четыре значения в качеств data type(типа данных), чтобы указать значение яркости pixel(пикселя)
•
Сохраните четыре значения Blue, Green, Red, Alpha(transparency).
•
Установите в 0, если при инициализации (Initialization) не указано значение
•
Scalar_<double> <==> Scalar
•
Ex)
Scalar_<uchar> red(0, 0, 255);
Scalar_<int> blue(255, 0, 0);
Scalar_<double> color1(500);
Scalar_<float> color2(100.f, 200.f, 125.9f);
Мат Класс / Mat Class
•
Класс(class), используемый для представления image(изображения).
•
Mat (строки, столбцы, тип, скаляр (rows, cols, type, Scalar))
строки: размер строки (rows: row size)
столбцы: размер столбца (cols : column size)
тип: тип данных (type : data type)
Скаляр: матричное значение (Scalar : matrix value)
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main()
{
float data[] = {
1.2f, 2.3f, 3.2f,
4.5f, 5.f, 6.5f,
};
Mat m1(2, 3, CV_8U);
Mat m2(2, 3, CV_8U, Scalar(300));
Mat m3(2, 3, CV_32F, data);
Size sz(2, 3);
Mat m4(Size(2, 3), CV_64F);
Mat m5(sz, CV_32F, data);
cout << "[m1] =" << endl << m1 << endl;
cout << "[m2] =" << endl << m2 << endl;
cout << "[m3] =" << endl << m3 << endl << endl;
cout << "[m4] =" << endl << m4 << endl;
cout << "[m5] =" << endl << m5 << endl;
return 0;
}
#include <opencv2/opencv.hpp>
using namespace cv;