OpenCV断言错误mat.hpp第570行
OpenCV Assertion Error mat.hpp line 570
当我尝试实现此代码以调用稍后使用的所有颜色时。。它显示了一个错误。。有人知道这个代码出了什么问题吗。。tq
// Extracting pure colors to use in demo
const int ncolors = 16;
std::vector<Scalar> colors;
for (int n = 0; n < ncolors; ++n) {
Mat color(Size(1, 1), CV_32FC3);
color.at<float>(0) = (360) / ncolors * n;
color.at<float>(1) = 1.0;
color.at<float>(2) = 0.7;
cvtColor(color, color, CV_HSV2BGR);
color = color * 255;
colors.push_back(Scalar(color.at<float>(0), color.at<float>(1), color.at<float>(2)));
}
矩阵color
是一个有3个信道的1x1矩阵,因此您应该访问为:
color.at<Vec3f>(0)[0] = 360.f / ncolors * n;
color.at<Vec3f>(0)[1] = 1.f;
color.at<Vec3f>(0)[2] = 0.7f;
在构造Scalar时,应该以类似的方式访问它。
相关文章:
- 从命令行c++发送文本文件名
- 使用新行和不使用新行读取文件
- 从包含m行的文件中提取n行,必要时(惰性地)重复该文件
- 预处理器:插入结构名称中的前一个行号
- 为cl.exe(Visual Studio代码)指定命令行C++版本
- 使用一个考虑到std::map中键值的滚动或换行的键
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- MSVC多行宏编译器错误
- 如何在OMNET++中指定与命令行参数组合的输出文件名
- C++MySQL C api用户输入行
- 如何将 txt 文件中的行分隔为组件C++
- 无法通过空白将文本文件行分隔为矢量
- 我正在使用嵌套的while循环来解析具有多行的文本文件,但由于某种原因,它只通过第一行,我不知道为什么
- 如何找到锁定Linux futex的C++行
- 在fstream期间忽略空行
- 具有N列和N行的矩阵,列必须具有N-1、N-2等值
- 什么是"#include <boost/functional/hash.hpp> "?
- 遇到新行时,有没有办法停止istream_iterator
- opencv错误:在文件:Mat.inl.hpp第930行的cv::Mat::中断言失败
- OpenCV断言错误mat.hpp第570行