1. 绘图函数
OpenCV的绘图函数可以在任意深度的图像上工作,但大多数情况下,这些绘图函数只对图像的前三个通道有影响。
如果是单通道图像,则默认只影响第一个通道。大多数绘图函数都支持操作对象的颜色、宽度、线型(与指向平滑度有关)和亚像素对齐等参数。
OpenCV对多通道进行色彩渲染时使用了BGR的顺序。
画直线或者其他图形(虚线、圆、矩形等)的函数通常可以接受宽度(thickness)和线型(lineType)的参数。lineType参数的值只能是4,8或者cv::LINE_AA,lineType参数表示直线是4邻域连接或者8邻域连接或者是平滑处理。thickness参数指定线宽的像素数。对于圆、矩形和其他封闭图形,thickness参数可以被设置为cv::FILLED,这时,整个图形会被用边界一样的颜色填充满。
如下所列出的绘图算法中,端点(直线)、中心点(圆)和角点(矩形)等通常都规定为整型值。这些算法都支持使用shift参数进行亚像素对齐。当shift参数有效时,这个值将被用来指定整数参数的小数位数。例如,要画一个圆,设置圆心为(5,5),但是又把shift参数设为1,这样就会得到一个圆心(2.5,2.5)的圆。该参数在平滑处理中比较明显。
函数 | 描述 |
cv::circle | 画一个简单圆 |
cv::clipLine | 判断一条直线是否在给定的矩形内 |
cv::ellipse | 画一个椭圆(可以倾斜,或者只有部分圆弧) |
cv::ellipse2Poly | 计算一个近似椭圆的多边形 |
cv::fillConvexPoly | 画一个填充的简单多边形 |
cv::fillPoly | 画一个填充的任意多边形 |
cv::line | 画一个简单直线 |
cv::rectangle | 画一个简单矩形 |
cv::polyLines | 画多重折线 |
cv::LineIterator | 迭代器类,可以获取线段的像素数 |
2. 文本操作
OpenCV提供的文本绘制函数如下:
函数名称 | 描述 |
cv::putText() | 在图像中绘制指定的文字 |
cv::getTextSize() | 获取一个文字的宽度和高度 |
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/46159.html