完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
使用的是3.0版本的SDK,程序执行到该函数时,总是提示“未分配设备内存,不支持BMCV”,同时 bmcv_image_jpeg_enc 函数也因为相似的理由报错。
请问,在soc模式下,假如有一cv::Mat对象,应该如何将其转变为bm_image呢? 我了解到贵司有提供问题的描述性解答,但是我按照自己的理解来修改代码时依然无法解决该问题,因此请问能否额外提供一些简短的例程? 多谢解答! |
|
相关推荐
1个回答
|
|
在soc模式下,可以使用以下代码将cv::Mat对象转换为bm_image:
```cpp #include "bmodel_interface.h" bm_image mat2bm_image(const cv::Mat& mat) { // 创建bm_image对象 bm_image bm_img; bm_img.data_type = BM_PIXEL_FORMAT_BGR888; bm_img.height = mat.rows; bm_img.width = mat.cols; bm_img.data_size = mat.rows * mat.cols * 3; bm_img.data = (void*)mat.data; // 返回转换后的bm_image对象 return bm_img; } ``` 然后,在soc模式下调用bm_image相关函数时,可以将cv::Mat对象转换为bm_image对象: ```cpp // 将cv::Mat转换为bm_image cv::Mat cv_image; // 假设这是需要转换的cv::Mat对象 bm_image bm_img = mat2bm_image(cv_image); // 在soc模式下调用相应的BMCV函数 bmcv_image_convert_to(&bm_img, ...); bmcv_image_crop(&bm_img, ...); bmcv_image_jpeg_enc(&bm_img, ...); ``` 注意,在使用bm_image对象之前,需要确保cv::Mat对象的数据已经分配了内存,可以使用`cv::Mat::data`成员获取数据指针。 |
|
|
|
只有小组成员才能发言,加入小组>>
H264硬编码CVI_VENC_StartRecvFrame报错的原因?怎么解决?
582浏览 2评论
使用bm-smi查看信息时发现没有程序运行但是设备内存被占用是怎么回事?
331浏览 1评论
339浏览 1评论
SE5盒子如何修改IP?执行bm_set_ip提示没有该命令?
330浏览 1评论
691浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-4 06:56 , Processed in 0.517817 second(s), Total 80, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号