OpenCV 绘图与标注全解析
在图像处理和计算机视觉领域,我们常常需要对图像进行绘制和标注操作,比如绘制简单的图形、添加文本等。OpenCV 提供了丰富的函数来满足这些需求,下面我们就来详细了解一下。
绘图基础
在 OpenCV 中,我们可以绘制各种图形,如直线、正方形、圆形等。这些绘图函数可以处理任意深度的图像,但大多数情况下只影响前三个通道,对于单通道图像则默认只影响第一个通道。
在指定颜色时,通常使用 cv::Scalar 对象,虽然大多数时候只使用前三个值。OpenCV 采用 BGR 顺序将多通道图像转换为彩色渲染,这与 imshow() 函数一致。不过,你也可以不遵循这个约定。
绘制线条、圆形、矩形等图形的函数通常接受 thickness 和 lineType 参数。 thickness 表示线条的像素厚度,对于圆形、矩形等封闭图形, thickness 还可以设置为 cv::FILLED (即 -1),此时图形将被填充为与边缘相同的颜色。 lineType 表示线条的连接方式,有 4 连接、8 连接或抗锯齿三种选项。
绘图算法中,端点、中心点、角点等通常以整数指定,但可以通过 shift 参数实现亚像素对齐。例如,若指定圆心为 (5, 5), shift 设置为 1,则圆心实际为 (2.5, 2.5),这种效果通常比较微妙,对抗锯齿线条最为
超级会员免费看
订阅专栏 解锁全文

1020

被折叠的 条评论
为什么被折叠?



