我正在尝试创建一个函数,使得在OpenCV 3.1中可以设置QImage的对比度/亮度。这在发布模式下完美运行,但在调试模式下不起作用(返回空白图像):
你看到可能存在的问题了吗?
编辑 我的.pro文件(两个相关的dll在bin目录中)。
QImage getNewImage(QImage *img, float contrast, float brightness)
{
// Convert image to temporary cv::Mat with a deep copy
// Output format is BGRA
cv::Mat temp(img->height(),img->width(),CV_8UC4,(uchar*)img->bits(),img->bytesPerLine());
temp.convertTo(temp, -1, contrast, brightness);
cv::cvtColor(temp, temp, CV_BGRA2RGB);
// Convert back to QImage RGB
QImage dest((const uchar *) temp.data, temp.cols, temp.rows, temp.step, QImage::Format_RGB888);
return dest;
}
你看到可能存在的问题了吗?
编辑 我的.pro文件(两个相关的dll在bin目录中)。
INCLUDEPATH += ../lib/opencv/include
CONFIG(debug, debug|release) {
LIBS += ../lib/opencv/opencv_world310d.lib
} else {
LIBS += ../lib/opencv/opencv_world310.lib
}
包括:
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>