@@ -236,39 +236,32 @@ ov::Tensor prepare_vis_position_ids(
236
236
size_t max_im_h = pixel_values.get_shape ().at (2 ), max_im_w = pixel_values.get_shape ().at (3 );
237
237
size_t max_nb_patches_h = max_im_h / patch_size, max_nb_patches_w = max_im_w / patch_size;
238
238
std::vector<float > boundaries (1 .0f * num_patches_per_side - 1 );
239
- OPENVINO_ASSERT (69 == boundaries.size ());
240
239
std::generate (boundaries.begin (), boundaries.end (), [num_patches_per_side, val = 0 .0f ]() mutable {
241
240
val += 1 .0f / num_patches_per_side;
242
241
return val;
243
242
});
244
- OPENVINO_ASSERT (2 .0f / num_patches_per_side == boundaries.at (1 ));
245
243
size_t position_ids_batch_elem = max_nb_patches_h * max_nb_patches_w;
246
244
ov::Tensor position_ids{ov::element::i64, {batch_size, position_ids_batch_elem}};
247
245
// throw std::runtime_error("");
248
246
int64_t * res_data = position_ids.data <int64_t >();
249
247
std::fill_n (res_data, position_ids.get_size (), 0 );
250
248
251
249
for (size_t batch_idx = 0 ; batch_idx < batch_size; ++batch_idx) {
252
- auto [nb_patches_h, nb_patches_w] = tgt_sizes.at (batch_idx);
250
+ size_t nb_patches_h = tgt_sizes.at (batch_idx).height ;
251
+ size_t nb_patches_w = tgt_sizes.at (batch_idx).widht ;
253
252
254
253
std::vector<float > fractional_coords_h (nb_patches_h);
255
- OPENVINO_ASSERT (26 == fractional_coords_h.size ());
256
254
std::generate (fractional_coords_h.begin (), fractional_coords_h.end (), [nb_patches_h, val = -1 .0f / nb_patches_h]() mutable {
257
255
val += 1 .0f / nb_patches_h;
258
256
return val;
259
257
});
260
- OPENVINO_ASSERT (0 .5f == fractional_coords_h.at (13 ));
261
258
std::vector<float > fractional_coords_w (nb_patches_w);
262
- OPENVINO_ASSERT (39 == fractional_coords_w.size ());
263
259
std::generate (fractional_coords_w.begin (), fractional_coords_w.end (), [nb_patches_w, val = -1 .0f / nb_patches_w]() mutable {
264
260
val += 1 .0f / nb_patches_w;
265
261
return val;
266
262
});
267
263
268
264
std::vector<int64_t > bucket_coords_h = bucket_size_right (fractional_coords_h, boundaries);
269
- if (std::vector<int64_t >{0 , 2 , 5 , 8 , 10 , 13 , 16 , 18 , 21 , 24 , 26 , 29 , 32 , 35 , 37 , 40 , 43 , 45 , 48 , 51 , 53 , 56 , 59 , 61 , 64 , 67 } != bucket_coords_h) {
270
- OPENVINO_THROW (" kek" );
271
- }
272
265
std::vector<int64_t > bucket_coords_w = bucket_size_right (fractional_coords_w, boundaries);
273
266
274
267
std::vector<int64_t > pos_ids (bucket_coords_h.size () * bucket_coords_w.size ());
0 commit comments