scalar 白色 字体颜色
时间: 2023-10-11 16:10:12 浏览: 45
好的,以下是白色的 scalar:
`scalar = 5`
`scalar = 3.14`
`scalar = -10`
`scalar = 0`
`scalar = 2.5e-3`
`scalar = -7.8e6`
注意,这些是在黑色背景上的白色字体,如果您的背景不同,可能需要调整字体颜色。
相关问题
cv::Mat image = cv::Mat::ones(pixelHeight, pixelWidth, CV_8UC3) * 255;为什么生成蓝色的,不是白底的怎么改为白色的
`cv::Mat::ones(pixelHeight, pixelWidth, CV_8UC3) * 255` 的作用是生成一个每个像素值都为 255 的 `CV_8UC3` 格式的图像,也就是一个全白图像。但是在 `putText` 函数中,`cv::Scalar(0, 0, 0)` 表示字体颜色为黑色。因此,在生成图像时会将黑色字体放在全白图像上,生成的图像会是黑底白字的。
要生成白底黑字的图像,只需将 `cv::Scalar(0, 0, 0)` 更改为 `cv::Scalar(255, 255, 255)`,表示字体颜色为白色即可。最终的代码如下:
```
cv::Mat image = cv::Mat::ones(pixelHeight, pixelWidth, CV_8UC3) * 255;
int tmp = 57;
for(int i = 0; i < 4; i++) {
cv::putText(image, nativeText, cv::Point((int)x, (int)y + i * 57), cv::FONT_HERSHEY_SIMPLEX, size,
cv::Scalar(255, 255, 255), 3, cv::LINE_AA,false);
}
```
cv::Rect r = get_rect(color_img, res_box.bbox); cv::Point2i tl = r.tl(); cv::Point2i br = r.br(); resized_box = {float(tl.x), float(tl.y), float(br.x), float(br.y)}; cv::rectangle(color_img, r, cv::Scalar(0x27, 0xC1, 0x36), 2); cv::putText(color_img, class_names[res_box.class_id], cv::Point(r.x, r.y - 1), cv::FONT_HERSHEY_PLAIN, 1.2, cv::Scalar(0xFF, 0xFF, 0xFF), 2);
这段代码涉及到使用OpenCV进行图像处理和绘制的过程。
首先,`get_rect` 函数从 `color_img` 图像中获取一个矩形区域 `r`,该矩形区域是通过 `res_box.bbox` 定义的。
然后,通过 `r.tl()` 和 `r.br()` 分别获取矩形 `r` 的左上角和右下角的像素坐标,并将它们分别赋值给 `tl` 和 `br`。
接下来,将获取到的坐标转换为浮点数,并将它们组成一个新的矩形 `resized_box`。
然后,使用 `cv::rectangle` 函数在 `color_img` 图像上绘制一个矩形框,使用 `cv::Scalar(0x27, 0xC1, 0x36)` 设置框的颜色为绿色,线宽为2。
最后,使用 `cv::putText` 函数在 `color_img` 图像上添加类别名称文本,文本位置为矩形 `r` 的左上角,使用 `cv::FONT_HERSHEY_PLAIN` 字体,字体大小为1.2,颜色为白色,线宽为2。
这段代码的目的是从图像中提取矩形区域,并在图像上绘制矩形框和添加类别名称文本。