算能科技
直播中

刘伟

7年用户 1669经验值
私信 关注
[问答]

如何将host上的bgr planar cv::Mat变成host上的BGR packed cv::Mat?

如何将host上的bgr planar cv::Mat变成host上的BGR packed cv::Mat?

回帖(1)

毕雅静

2023-9-20 09:41:23
首先,cv::Mat 支持的都是packed的数据,你的BGR plannar的数据,怎么会生成cv::Mat,如果你真有一组BGR plannar的数据,那你不应该将它直接赋值给cv::Mat,这样容易引起混乱,需要自己时刻谨记这个cv::Mat里的数据不是packed。OpenCV的标准用法,当你想从BGR packed得到planar,应当使用cv::split 分成3个cv::Mat;当你想从BGR planar到packed,那你应当有3个通道的cv::Mat,然后使用cv::Merge合成1个cv::Mat。 但是如果你觉得openCV实现的split和merge不够高效,那么可以考虑使用libyuv中基于ARM NEON指令做过优化的SplitRGB和MergeRGB。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分