From 5be152baf1d464cbd0651b8b7157890272210f66 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Thu, 2 May 2024 16:47:11 +0800 Subject: [PATCH] Fix: relative_hsv_count was counting pixels in 3 channels causing lots of predict_current_fleet() mis-detection --- module/map_detection/grid_predictor.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/module/map_detection/grid_predictor.py b/module/map_detection/grid_predictor.py index 37cfb4e47..58fe44b23 100644 --- a/module/map_detection/grid_predictor.py +++ b/module/map_detection/grid_predictor.py @@ -159,8 +159,9 @@ class GridPredictor: cv2.cvtColor(image, cv2.COLOR_RGB2HSV, dst=image) lower = (h[0] / 2, s[0] * 2.55, v[0] * 2.55) upper = (h[1] / 2 + 1, s[1] * 2.55 + 1, v[1] * 2.55 + 1) - cv2.inRange(image, lower, upper, dst=image) - count = image[image > 0].shape[0] + # Don't set `dst`, output image is (50, 50) but `image` is (50, 50, 3) + image = cv2.inRange(image, lower, upper) + count = cv2.countNonZero(image) return count def predict_enemy_scale(self):