Object Detection  5.0
Image Processing Using Qt and Opencv
utils.cpp
1 #include "utils.h"
2 using namespace Utilities;
3 Utils::Utils(QObject *parent) : QObject(parent)
4 {
5 
6 }
7 
8 cv::Scalar Utils::toScalar(QColor color)
9 {
10  return cv::Scalar(color.red(), color.green(), color.blue());
11 
12 }
13 
14 std::tuple<cv::Scalar, cv::Scalar> Utils::toRange(QColor color)
15 {
16  return std::make_tuple(cv::Scalar((color.hue() * 180.0/ 255.0) - 20, color.saturation() -50, color.saturation() - 50), cv::Scalar((color.hue() * 180.0/ 255.0) - 20, 255, 255));
17 }
18 
19 QImage Utils::toImage(const cv::Mat &m)
20 {
21  cv::Mat temp;
22  if(m.type() == CV_8UC3){
23  cv::cvtColor(m, temp, cv::COLOR_BGR2RGB);
24  return QImage(m.data, m.cols, m.rows, m.step, QImage::Format_RGB888).rgbSwapped();
25  }else {
26  return QImage(m.data, m.cols, m.rows, m.step, QImage::Format_Grayscale8);
27 
28  }
29 }