Conscience Core
yolov8_utils.h
Go to the documentation of this file.
1 #pragma once
2 #include<iostream>
3 #include <numeric>
4 #include<opencv2/opencv.hpp>
5 
6 #define ORT_OLD_VISON 13
7 
9 struct OutputSeg {
10  int id;
11  float confidence;
12  cv::Rect box;
13  cv::Mat boxMask;
14 };
15 struct MaskParams {
16  int netWidth = 640;
17  int netHeight = 640;
18  float maskThreshold = 0.5;
19  cv::Size srcImgShape;
20  cv::Vec4d params;
21 
22 };
23 bool CheckModelPath(std::string modelPath);
24 bool CheckParams(int netHeight, int netWidth, const int* netStride, int strideSize);
25 void DrawPred(cv::Mat& img,
26  std::vector<OutputSeg> result,
27  std::vector<std::string> classNames,
28  std::vector<cv::Scalar> color,
29  bool isVideo = false
30 );
31 void LetterBox(const cv::Mat& image, cv::Mat& outImage,
32  cv::Vec4d& params, //[ratio_x,ratio_y,dw,dh]
33  const cv::Size& newShape = cv::Size(640, 640),
34  bool autoShape = false,
35  bool scaleFill = false,
36  bool scaleUp = true,
37  int stride = 32,
38  const cv::Scalar& color = cv::Scalar(114, 114, 114));
39 void GetMask(const cv::Mat& maskProposals, const cv::Mat& maskProtos, std::vector<OutputSeg>& output, const MaskParams& maskParams);
40 void GetMask2(const cv::Mat& maskProposals, const cv::Mat& maskProtos, OutputSeg& output, const MaskParams& maskParams);
41 
42 
43 
44 }
conscience_core::detector_engine::yolov8::MaskParams::srcImgShape
cv::Size srcImgShape
Definition: yolov8_utils.h:19
conscience_core::detector_engine::yolov8
Definition: yolov8.cpp:7
conscience_core::detector_engine::yolov8::OutputSeg::id
int id
Definition: yolov8_utils.h:10
conscience_core::detector_engine::yolov8::MaskParams::params
cv::Vec4d params
Definition: yolov8_utils.h:20
conscience_core::detector_engine::yolov8::MaskParams::netWidth
int netWidth
Definition: yolov8_utils.h:16
conscience_core::detector_engine::yolov8::LetterBox
void LetterBox(const cv::Mat &image, cv::Mat &outImage, cv::Vec4d &params, const cv::Size &newShape, bool autoShape, bool scaleFill, bool scaleUp, int stride, const cv::Scalar &color)
Definition: yolov8_utils.cpp:24
conscience_core::detector_engine::yolov8::CheckModelPath
bool CheckModelPath(std::string modelPath)
Definition: yolov8_utils.cpp:16
conscience_core::detector_engine::yolov8::GetMask
void GetMask(const cv::Mat &maskProposals, const cv::Mat &maskProtos, std::vector< OutputSeg > &output, const MaskParams &maskParams)
Definition: yolov8_utils.cpp:80
conscience_core::detector_engine::yolov8::DrawPred
void DrawPred(Mat &img, vector< OutputSeg > result, std::vector< std::string > classNames, vector< Scalar > color, bool isVideo)
Definition: yolov8_utils.cpp:180
conscience_core::detector_engine::yolov8::MaskParams::netHeight
int netHeight
Definition: yolov8_utils.h:17
conscience_core::detector_engine::yolov8::GetMask2
void GetMask2(const Mat &maskProposals, const Mat &maskProtos, OutputSeg &output, const MaskParams &maskParams)
Definition: yolov8_utils.cpp:114
conscience_core::detector_engine::yolov8::OutputSeg::box
cv::Rect box
Definition: yolov8_utils.h:12
conscience_core::detector_engine::yolov8::MaskParams
Definition: yolov8_utils.h:15
conscience_core::detector_engine::yolov8::OutputSeg
Definition: yolov8_utils.h:9
conscience_core::detector_engine::yolov8::MaskParams::maskThreshold
float maskThreshold
Definition: yolov8_utils.h:18
conscience_core::detector_engine::yolov8::OutputSeg::boxMask
cv::Mat boxMask
Definition: yolov8_utils.h:13
conscience_core::detector_engine::yolov8::CheckParams
bool CheckParams(int netHeight, int netWidth, const int *netStride, int strideSize)
Definition: yolov8_utils.cpp:9
conscience_core::detector_engine::yolov8::OutputSeg::confidence
float confidence
Definition: yolov8_utils.h:11