diff options
| author | Stanislaw Halik <sthalik@misaki.pl> | 2021-09-25 06:04:31 +0200 | 
|---|---|---|
| committer | Stanislaw Halik <sthalik@misaki.pl> | 2021-09-26 11:22:50 +0200 | 
| commit | 663269bcbdf98a6b6645f0792a2aaae3a6816162 (patch) | |
| tree | 9522639fef67881e892f8bd78cb82c1706379510 /tracker-pt/module | |
| parent | ba5603ada3d2314e0e75838763c2ac9f583fc3dc (diff) | |
tracker/{pt,wii}: skip more widget drawing when minimized
Diffstat (limited to 'tracker-pt/module')
| -rw-r--r-- | tracker-pt/module/point_extractor.cpp | 12 | ||||
| -rw-r--r-- | tracker-pt/module/point_extractor.h | 4 | 
2 files changed, 11 insertions, 5 deletions
diff --git a/tracker-pt/module/point_extractor.cpp b/tracker-pt/module/point_extractor.cpp index 5e57ef34..2f84bf86 100644 --- a/tracker-pt/module/point_extractor.cpp +++ b/tracker-pt/module/point_extractor.cpp @@ -282,7 +282,10 @@ static void draw_blobs(cv::Mat& preview_frame, const blob* blobs, unsigned nblob      }  } -void PointExtractor::extract_points(const pt_frame& frame_, pt_preview& preview_frame_, std::vector<vec2>& points) +void PointExtractor::extract_points(const pt_frame& frame_, +                                    pt_preview& preview_frame_, +                                    bool preview_visible, +                                    std::vector<vec2>& points)  {      const cv::Mat& frame = frame_.as_const<Frame>()->mat; @@ -402,9 +405,10 @@ end:          b.pos[1] = pos[1] + rect.y;      } -    draw_blobs(preview_frame_.as<Frame>()->mat, -               blobs.data(), blobs.size(), -               frame_gray.size()); +    if (preview_visible) +        draw_blobs(preview_frame_.as<Frame>()->mat, +                   blobs.data(), blobs.size(), +                   frame_gray.size());      // End of mean shift code. At this point, blob positions are updated with hopefully less noisy less biased values. diff --git a/tracker-pt/module/point_extractor.h b/tracker-pt/module/point_extractor.h index 9c97b6ce..ab906414 100644 --- a/tracker-pt/module/point_extractor.h +++ b/tracker-pt/module/point_extractor.h @@ -33,7 +33,9 @@ class PointExtractor final : public pt_point_extractor  public:      // extracts points from frame and draws some processing info into frame, if draw_output is set      // dt: time since last call in seconds -    void extract_points(const pt_frame& frame, pt_preview& preview_frame, std::vector<vec2>& points) override; +    void extract_points(const pt_frame& frame, +                        pt_preview& preview_frame, bool preview_visible, +                        std::vector<vec2>& points) override;      PointExtractor(const QString& module_name);  private:      static constexpr int max_blobs = 16;  | 
