分类: 编程

10 篇文章

waitKey() 函数
waitKey() 是 OpenCV 中一个关键但常被误解的函数,它在图像处理和计算机视觉应用中扮演着核心角色。本文将全面解析这个函数的工作原理和多种高级用法。 函数基础 原型与参数 int cv::waitKey(int delay = 0); delay: 等待时间(毫秒) delay = 0:…
OpenCV图像颜色空间转换
在计算机视觉中,颜色空间转换是基础操作。OpenCV 提供了强大的颜色空间转换功能,主要通过 cv::cvtColor() 函数实现。以下是详细指南: 核心函数 #include <opencv2/opencv.hpp> void cv::cvtColor( cv::InputArray…
OpenCV学习笔记
软件安装和环境配置 mat容器 mat类数据读取 mat支持的运算 图像读取显示保存 image watch的使用 视频加载与摄像头使用 图像颜色空间变化 多通道分离与合并 图像像素对比 图像像素逻辑操作 图像二值化 LUT查找表 图像尺寸变化 仿射变化 透视变化 绘制图形 ROI区域截取 高斯图像…
指针步长访问mat类数据
在 OpenCV 中,使用 mat.data 指针结合步长(step)进行直接内存访问是最底层、最高效的矩阵访问方式。这种方式需要手动计算元素位置,但能实现极致性能。以下是详细解析和正确使用方法: 1. 核心概念与公式 访问元素位置的通用计算公式: // 多维度通用公式(以3维矩阵为例) uchar…
mat数据读取
OpenCV 的 Mat 类提供了多种灵活的数据读取方式,不同的方法在 效率、安全性 和 适用场景 上各有优劣。以下是详细的分类解析和代码示例: 1. 高效指针访问(推荐用于大规模数据) (1) 单通道连续内存访问 cv::Mat mat(100, 100, CV_8UC1); // 单通道灰度图 …
ORM 框架
什么是 ORM 框架? ORM(Object-Relational Mapping,对象关系映射)是一种编程技术,用于在面向对象编程语言中,将对象与关系型数据库中的表进行映射。ORM 框架自动处理对象与数据库之间的转换,开发者可以通过操作对象来间接操作数据库,而无需直接编写 SQL 语句。 为什么使…
你好,三角形
在学习此节之前,建议将这三个单词先记下来: 顶点数组对象:Vertex Array Object,VAO 顶点缓冲对象:Vertex Buffer Object,VBO 元素缓冲对象:Element Buffer Object,EBO 或 索引缓冲对象 Index Buffer Object,IBO…
你好窗口
确认glfw可正常使用 创建一个.cpp文件,首先引入必要的头文件,确保在包含GLFW之前先包含GLAD #include <glad/glad.h>#include <GLFW/glfw3.h> 实例化glfw窗口 接下来我们创建main函数,在这个函数中我们将会实例化GL…
创建窗口
绘制效果前需创建OpenGL上下文和窗口,因系统差异,OpenGL将其抽象化,让开发者自行处理窗口创建、上下文定义和用户输入。GLUT、SDL、SFML和GLFW等库简化了相关操作,教程选用GLFW。 下载GLFW源码 官方:https://www.glfw.org/download.html 选择…
OpenGL简介
OpenGL是一个跨平台的图形渲染接口,通过API函数让开发者控制硬件资源,实现二维和三维图形渲染。 早期OpenGL使用效率较低的立即渲染模式(固定管线),方便但缺乏灵活性。从OpenGL 3.2起,核心模式(Core Profile)废弃了旧特性,鼓励使用现代函数以提高效率和灵活性。现代函数要求…