如何从内存中读取原始图像 (YUV 4:2:2) 格式的图像数据
How to Read raw (YUV 4:2:2) format Image data from the memory
>我正在尝试从读取缓冲区读取原始 YUV 4:2:2 (720p( 数据,我将读取缓冲区的物理地址映射到虚拟地址。
mem 是指向读取缓冲区基址的指针。我尝试使用下面提到的代码,但它返回空图像,请有人帮我从内存中读取原始 YUV 4:2:2 格式的图像数据。
我已经尝试了下面提到的代码,但我返回的是空图像
cv::Mat img(1,1280 , numCols,CV_8U1, mem);
//mem -> mem is a pointer to Read buffer which have raw YUV 4:2:2 image data .
//len-> Frame resolution (1280 * 720 * 3) (720p)
if (img.empty())
{
cout << "Image is not loaded" << endl;
return 0;
}
cv::imshow("img",img);
cv::waitKey();
原始 YUV 4:2:2 图像的大小 = 2 * 高度 * 宽度。您需要创建:
cv::Mat img(2 * height, width, CV_8UC1, mem, sizeOfRowInBytes);
Y 通道将位于第一个高度*大小的行字节中。之后将是紫外线通道:
- 一半与
你行,一半与V行;
一半与你行,一半与V行;
。
高度。一半与你行,一半与V行。
相关文章:
- OpenCV(C++)处理来自JavaScript / Web Assembly的图像数据
- VTK 图像数据,访问数组中的 1 个图像
- 处理来自IMFSourceReader和IMFSample的图像数据
- 如何返回定义良好的内存部分?例如来自图像数据的像素的颜色值
- 如何从amd gpus的显示输出中获取图像数据
- 如何将OpenCV图像数据从Python转换为C++?
- 以高数据速率发送图像数据超过提升::asio::udp?
- 如何将图像数据从搜索窗口中移动到本地存储器OpenCL
- 如何从内存中读取原始图像 (YUV 4:2:2) 格式的图像数据
- 如何使用JNI + OpenCV + NDK获取原始的android相机传感器图像数据
- 将图像数据尽快写入磁盘
- 输入层类型:图像数据在窗口咖啡cpp中给出空白输出
- Debbuger 用于可视化图像数据
- 显示图像数据
- C - 将UINT8_T*将图像数据转换为双**图像数据
- 如何以最佳方式将高分辨率图像数据存储在无符号字符*中C++
- 如何访问 win32 缩略图的图像数据
- 强制 WIC 将图像数据视为 RGB
- 为 ppm/pgm 图像数据创建存储
- 从数据库中以 blob 数据类型形式存储的原始图像数据中检索 CImage 对象