【经验分享】opencv Mat 转 darknet Image 数据结构

欢迎关注我的公众号【极智视界】获取更多我的笔记分享

大家好,我是极智视界。本文介绍了 opencv Mat 转 darknet Image 数据结构的方法,篇幅较短,纯属记录。

下面开始。

// opencv 的 cv::Mat 可以简单通过下述读图得到,也可以直接构造得到,这里使用读图得到
cv::Mat cv_img = cv::imread(imgfile);

int img_w = cv_img.cols;
int img_h = cv_img.rows;
int img_c = cv_img.channels;
unsigned char* imgdata = cv_img.data;
int setp = cv_img.step;

// darknet 的 image 可以直接构造得到
image dk_img = make_image(img_w, img_h, img_c);

// 开始转换 cv::Mat -> dk image
for (int y = 0; y < img_h; ++y) {
  for (int k = 0; k < img_c; ++k) {
    for (int x = 0; x < img_w; ++x) {
      dk_img.data[k * img_w * img_h + y * img_w + x] = imgdata[y * setp + x * 3 + k] / 255.0f;
    }
  }
}

好了,到此结束,希望我的分享能对你的学习有所帮助。

《【经验分享】opencv Mat 转 darknet Image 数据结构》

在这里插入图片描述

扫描下方二维码即可关注我的微信公众号【极智视界】,获取更多AI经验分享,让我们用极致+极客的心态来迎接AI !
【经验分享】opencv Mat 转 darknet Image 数据结构

版权声明:本文为博主极智视界原创文章,版权归属原作者,如果侵权,请联系我们删除!

原文链接:https://blog.csdn.net/weixin_42405819/article/details/123337719

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2022年3月7日 下午6:00
下一篇 2022年3月12日 上午10:20

相关推荐