Skip to content

Commit 03a6cee

Browse files
authored
* Prevent too small explain map size in tiling * Fix zero saliency map problem in cpp tiler
1 parent 958770b commit 03a6cee

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

model_api/cpp/tilers/src/detection.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,8 +161,8 @@ ov::Tensor DetectionTiler::merge_saliency_maps(const std::vector<std::unique_ptr
161161
size_t map_h = image_saliency_map.get_shape()[shape_shift + 1];
162162
size_t map_w = image_saliency_map.get_shape()[shape_shift + 2];
163163

164-
float ratio_h = static_cast<float>(map_h) / tile_size;
165-
float ratio_w = static_cast<float>(map_w) / tile_size;
164+
float ratio_h = static_cast<float>(map_h) / std::min(tile_size, static_cast<size_t>(image_size.height));
165+
float ratio_w = static_cast<float>(map_w) / std::min(tile_size, static_cast<size_t>(image_size.width));
166166

167167
size_t image_map_h = static_cast<size_t>(image_size.height * ratio_h);
168168
size_t image_map_w = static_cast<size_t>(image_size.width * ratio_w);

model_api/python/openvino/model_api/tilers/detection.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,9 @@ def _merge_saliency_maps(self, saliency_maps, shape, tiles_coords):
167167
map_h, map_w = image_saliency_map.shape[1:]
168168

169169
image_h, image_w, _ = shape
170-
ratio = map_h / self.tile_size, map_w / self.tile_size
170+
ratio = map_h / min(image_h, self.tile_size), map_w / min(
171+
image_w, self.tile_size
172+
)
171173

172174
image_map_h = int(image_h * ratio[0])
173175
image_map_w = int(image_w * ratio[1])

0 commit comments

Comments
 (0)