Как сделать так, чтобы ограничивающие блоки тензорного потока отображались каждые "n" секунд? - PullRequest
1 голос
/ 26 сентября 2019

В настоящее время я играю с Tensorflow Object Detection Api со своим собственным набором данных.Я хочу «скрыть» границы обнаружения для каждых 5 кадров.Таким образом, эти ограничивающие рамки будут отображаться как «мигающие», и они будут привлекать гораздо больше внимания при использовании инфраструктуры обнаружения.

Я уже испортил visualization_utils.py и попытался получитьдругой метод визуализации ограничивающих рамок для этой цели и использование его с циклом while:

def draw_bounding_box_every5(image,
                         ymin,
                         xmin,
                         ymax,
                         xmax,
                         count,                            
                         use_normalized_coordinates=True):


#while True:

  count+=1

  draw = ImageDraw.Draw(image)
  im_width, im_height = image.size

  ## with the "if" below, I'm aiming to have only 1 bounding box to display from every 5 frames.##

  if(count %5 == 0):
      if use_normalized_coordinates:
          (left, right, top, bottom) = (xmin * im_width, xmax * im_width,
                                        ymin * im_height, ymax * im_height)       
      else:
          (left, right, top, bottom) = (xmin, xmax, ymin, ymax)
      draw.line([(left, top), (left, bottom), (right, bottom),
                (right, top), (left, top)])



      print("line drawed")

Если я не использую , пока True loop в начале, Tensorflow продолжит отображатьобнаруженные объекты, как и ожидалось.Но когда я использую это, он падает.Я предполагаю создание бесконечного цикла перед отображением ограничивающих рамок, отключая некоторые функции обратного вызова при рисовании.Если кто-нибудь знает, как сделать мигающие ограничивающие рамки, я весь в ушах.

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...