c++ - OpenCV、Dlib - Mat 对象输出为黑色图像

标签 c++ opencv opencv3.0 mat dlib

我有 4 channel 垫对象。 我正在尝试(作为流程的一部分)将其转换为 dlib 数据(进行一些更改),然后返回到 Mat

出于某种原因,最终输出是全黑的。我正努力在运行时方面尽可能高效。

cv::Mat image;
cv::cvtColor(image, image, CV_RGBA2BGR); //convert to 3 channels
//COPY pointer saves runtime
dlib::array2d<dlib::rgb_pixel> dlibimg;
dlib::assign_image(dlibimg, dlib::cv_image<dlib::bgr_pixel>(cvimg));
image = dlib::toMat(dlibimg); //black

有什么建议吗,为什么输出全黑?

最佳答案

dlib::array2d<dlib::rgb_pixel> dlibimg应该是

`dlib::array2d<dlib::rgb_alpha_pixel> dlibimg`  

因为您已经给出了 4 channel Mat 图像。

关于c++ - OpenCV、Dlib - Mat 对象输出为黑色图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37516675/

相关文章:

c++ - 在 C++ 中使用 `{}` 聚合初始化 union

c++ - 显示控制台和 win32 GUI

c++ - 二叉搜索树问题

python-3.x - PyCharm:为 SIFT、SURF 等操作安装非自由 OpenCV 模块

android - 在 Android Studio 中为 OpenCv 库启用 Gradle 缩小

c++获取txt文件中的一行数据

c++ - 如何使用 C++ Mat 类 ptr 对象的基本 C 包装器打印 Mat 元素

python - Python 2.7中的OpenCV 3在使用Brute-Force Matcher时出现错误

Python:如何使用opencv选择边框之间的图像部分

c++ - 在 OpenCV 中设置像素值(奇怪的结果)