OpenCV学习记录(C++版本)

HighGUI组件

  1. 图像的载入:imread()函数
    Mat imread(const string& filename, int flag = 1)其中flag=1代表读入RGB彩色图像,-1表示读取原始图像,0表示读取灰度图(TODO表格)

  2. 图像的显示:imshow()函数(改变窗口大小)
    imshow时改变窗口大小,
    ScreenShot from CSDN

string winname = "Wind";
namedWindow(winname, 0);//这个0是何意义呢?
resizeWindow(winname, 640, 480);

void imshow(const string& winname, InputArray mat)
waitKey()函数原型 int cv:waitKey(int delay=0)

  • delay ≤0 无限延时
  • delay > 0时,延时delay 毫秒
    • 延时期间,如果有键按下,则返回键值(Esc对应的键值为27)
      • 没有键按下,则返回-1
  1. 图像的保存:imwrite()函数
    OpenCV彩色图像的存储顺序为BGR
    OpenCV保存视频的格式只能为AVI

  2. cvtColor 将图像转换到另一个颜色空间cvtColor(src, dst, code)
    应用场景:

    • COLOR_BGR2RBG
    • COLOR_BGR2GRAY 将彩色图转换为灰度图
    • COLOR_BGR2YCrCb 对彩色图像的亮度通道进行处理

数据结构与基本绘图

  1. 在图像的指定坐标点处画一个圆圈:cv::circle(img, Point, radius, color)
    必选参数为:图像、点坐标、圆的半径和颜色
    其中typedef Point2i Point 构造函数Point(x, y)
  2. 在图像中两点画一条直线:cv::line(img, point1, point2, color)
    必选参数:图像,点1和点2,颜色;可选参数:thinkness, lineType和shift是啥
  3. Rectangle()
  4. putText()
  5. Size(width, height) 图像的尺寸/大小

  • Linux下查看OpenCV版本号 pkg-config --modversion opencv
原文地址:https://www.cnblogs.com/Todd-Qi/p/10891549.html