关闭

[置顶] Dlib学习笔记:dlib array2d与 OpenCV Mat互转

标签: dlib array2dOpenCV Matarray2d转Matdlib array2d转换OpenCV
2428人阅读 评论(1) 收藏 举报
分类:

Dlib学习笔记:dlib array2d与 OpenCV Mat互转

尊重原创,转载请注明出处】 http://blog.csdn.net/guyuealian/article/details/77101603
    在Dlib库中图像存储是使用array2d类型,而在OpenCV是使用Mat类型,Dlib中提供了#include <dlib/opencv.h>,可实现dlib array2d与 OpenCV Mat的互转。其中toMat对象可将dlib的图像转为OpenCV的Mat类型,而cv_image对象可将OpenCV的Mat类型转为dlib类型的图像。详见官网:http://dlib.net/imaging.html#rgb_pixel 

//dlib::array2d is an image already, you can use it for any dlib's image functions
//load image:
dlib::array2d<dlib::rgb_pixel> img_rgb;//使用dlib载入彩色的RGB图像
dlib::load_image(img_rgb, "test_image.jpg");


//convert to greyscale:
dlib::array2d<unsigned char> img_gray;//使用dlib载入灰度图像
dlib::load_image(img_gray, "test_image.jpg");
//或者
dlib::assign_image(img_gray, img_rgb);


//converto to OpenCV Image (cv::Mat):
#include <dlib/opencv.h>
#include <opencv2/opencv.hpp>
cv::Mat img = dlib::toMat(img_rgb);//RGB图像
cv::Mat img = dlib::toMat(img_gray);//灰度图像


//get image from OpenCV:
#include <dlib/opencv.h>
#include <opencv2/opencv.hpp>
cv::Mat img = cv::imread("test_image.jpg")
dlib::cv_image<rgb_pixel> dlib_img(img); // only stores pointer, no deep copy
//Documentation is here. There are a lot of well-documented examples, you should start from them. Special example about array2ddlib array2d转 OpenCV Mat时颜色失真

dlib array2d转 OpenCV Mat时,会出现颜色失真的现象,其解决方法是:http://blog.csdn.net/guyuealian/article/details/77482549
1
0
查看评论

opencv中Mat与数组之间值传递的快速方法

1.将数组内容传递给Mat示例代码:unsigned char cbuf[height][width]; cv::Mat img(height, width, CV_8UC1, (unsigned char*)cbuf);2.将Mat中的内容传递给数组如果Mat中的数据是连续的,那么对于传递到一维v...
  • GH_HOME
  • GH_HOME
  • 2016-08-03 11:15
  • 13295

OpenCV Mat转dlib array2d

在做一个人脸检测相关的项目,用到dlib,一个OpenCV Mat转dlib array2d的小技巧,就不需要存盘再读出来了。
  • qq_26671711
  • qq_26671711
  • 2016-12-17 21:23
  • 1503

Dlib学习笔记:解决dlib array2d转 OpenCV Mat时颜色失真

解决dlib array2d转 OpenCV Mat时颜色失真 在Dlib库中图像存储是使用array2d类型,而在OpenCV是使用Mat类型,Dlib中提供了#include ,可实现dlib array2d与 OpenCV Mat的互转。其中toMat对象可将dlib的图像转为OpenCV...
  • guyuealian
  • guyuealian
  • 2017-08-22 17:17
  • 1384

dlib::array2d<unsigned char> 与 cv::Mat 互转

dlib::array2d is an image already, you can use it for any dlib's image functions load image: dlib::array2d img_rgb; dlib::load_image(img_rgb, &qu...
  • huixingshao
  • huixingshao
  • 2017-02-17 15:26
  • 3025

Dlib源码解析之一 matrix和array2d和image_view

image_view解析 之前使用dlib中load_image方法读取图像的时候,发现参数用matrix和array2d都是可以的。 使用matrix来表示图像: matrix img; load_image(img, argv[1]); 使用array2d来表示图...
  • qq_29573053
  • qq_29573053
  • 2017-11-06 13:26
  • 270

Dlib格式与Opencv之间的转化

Mat转matrixcv::Mat frame = cv::imread("123.jpg");matrix<dlib::rgb_pixel> img; assign_image(img,cv_image<rgb_pixel>(frame));dlib转m...
  • bleakie
  • bleakie
  • 2017-10-17 17:38
  • 623

Dlib提取Hog特征

效果如图… 关键点: 1.设置cell大小 2.其他的看代码 3.Dlib配置见: 地址 代码: #include #include #include using namespace std; using namespace...
  • zmdsjtu
  • zmdsjtu
  • 2017-08-09 12:33
  • 770

Dlib与Opencv的图像转换

dlib的图像格式是array2d,opencv的图像格式是mat。在dlib代码中使用opencv的图像格式的话,我目前想到两种方法。假设D盘下面有一张图像lenna.bmp。array2d的读存图,可用下面两行代码: load_image(arr2d的图像, 保存在电脑中的图像全路径); /...
  • yubin1277408629
  • yubin1277408629
  • 2016-12-10 21:06
  • 2857

机器学习实践系列之1 - dlib

Dlib 是一个机器学习库,采用C++编写(提供C++和python接口),里面包含 许多常用机器学习算法。         Dlib 目前已更新到 V19.2。下载及文档可以参见 官网地址: http://www.dlib.net/ml....
  • linolzhang
  • linolzhang
  • 2017-01-15 13:07
  • 2586

windows7 64位+vs2013+opencv3.2+dlib18.14环境的搭建

由于人脸检测以及人脸对齐需要用到opencv与dlib,所以我们先对程序运行的环境搭建进行一个简单的介绍,也相当于记录下自己的搭建过程,留着之后需要的时候参考。 笔者的系统为windows764位的系统,所以以下的操作都是基于此系统。环境需要的安装包: 1.  Visualstudio20...
  • ugly_scarecrow
  • ugly_scarecrow
  • 2017-08-21 11:10
  • 280
    个人资料
    • 访问:557847次
    • 积分:5919
    • 等级:
    • 排名:第5145名
    • 原创:106篇
    • 转载:51篇
    • 译文:1篇
    • 评论:175条
    博客专栏
    最新评论