imshow() 在 C++ 年使用 OpenCV 3.2 产生了奇怪的结果
imshow() producing weird results with OpenCV 3.2 in C++
我正在从我的Kinect中获取RGB数据,并试图将其放入OpenCV矩阵中。数据保存在"src"中:
Mat matrixImageRGBA(w, h, CV_8UC4);
memcpy(matrixImageRGBA.data, src, sizeof(byte) * w * h * 4);
但是,当我使用"imshow"查看图像时,它会水平平铺四次。我正在使用以下命令:
imshow("Window", matrixImageRGBA);
waitKey(500);
有没有人知道这里可能有什么问题?这让我发疯了。
谢谢!
你有w
和h
倒退。根据文档,构造函数将height
作为第一个参数:
Mat (int rows, int cols, int type)
另外,我建议使用此构造函数:
Mat(int rows, int cols, int type, void *data, size_t step=AUTO_STEP)
而不是复制到data
字段(因为您在每行的末尾不使用填充,请使用默认AUTO_STEP
for step
(。
相关文章:
- 尝试将字符串/字符转换为整数会产生意外结果
- 为什么使用 SPI 时,全局缓冲区变量产生的结果与局部缓冲区变量不同
- 产生相同结果的随机数生成器
- imshow() 在 C++ 年使用 OpenCV 3.2 产生了奇怪的结果
- 这种方法是否对分支的预测产生了影响
- 执行递增和递减时"cout"链接会产生意外结果
- 功能模板与Variadic模板过载:Intel C 编译器版本18产生的结果不同于其他编译器.英特尔是错误的
- 第一个字符串元素的地址产生意外结果
- 为什么在std :: string上尺寸运算符会产生意外结果
- 为什么这个C++程序的输出在cmd中产生了巨大的混乱
- C++程序产生了许多错误
- 为什么此 MEX 函数会产生意外结果
- gluLookAt似乎产生了错误的观点,OpenGL
- 两个单精度浮点向量的点积在 CUDA 内核中产生的结果与在主机上的结果不同
- zlib compress() 产生了可怕的压缩率
- 正则表达式匹配产生意外结果
- C函数调用产生的结果与C++函数调用不同
- "Truncation from int to char"不产生任何结果
- C++中的右移产生异常结果(无符号64位)
- Lorenz示例中的odeint和VecCL在不同的设备上产生了不同的结果