Spec-Zone.ru › TensorFlow C++ 2.9

tensorflow::ops::CombinedNonMaxSuppression

#include <image_ops.h>

Жадно выбирает подмножество прямоугольных областей в порядке убывания оценки.

Краткое описание

Данная операция выполняет не максимальное подавление (non_max_suppression) для каждого набора входных данных, по всем классам. Удаляет прямоугольные области, имеющие высокую степень перекрытия (intersection-over-union, IOU) с ранее выбранными прямоугольными областями. Прямоугольные области задаются в виде [y1, x1, y2, x2], где (y1, x1) и (y2, x2) — координаты любой пары диагональных вершин прямоугольной области, и координаты могут быть нормализованными (т. е. лежать в интервале [0, 1]) или абсолютными. Заметим, что этот алгоритм не зависит от того, где находится начало координат в системе координат. Также обратите внимание, что этот алгоритм инвариантен к ортогональным преобразованиям и трансляциям системы координат; таким образом, трансляция или отражение системы координат приводят к выбору тех же прямоугольных областей алгоритмом. Результатом этой операции является тензор с окончательными прямоугольными областями, оценками и классами, полученный после выполнения не максимального подавления.

Аргументы:

  • scope: Объект Scope
  • boxes: Четырёхмерный тензор с плавающей точкой формы [batch_size, num_boxes, q, 4]. Если q равно 1, то используются одинаковые прямоугольные области для всех классов; в противном случае, если q равно числу классов, используются прямоугольные области, специфичные для каждого класса.
  • scores: Трехмерный тензор с плавающей точкой формы [batch_size, num_boxes, num_classes] представляющий единственную оценку, соответствующую каждой прямоугольной области (каждая строка прямоугольных областей).
  • max_output_size_per_class: Скалярный целочисленный тензор, представляющий максимальное число прямоугольных областей, которые должны быть выбраны подавлением не максимальных значений (non-max suppression) для каждого класса.
  • max_total_size: Скалярный int32, представляющий максимальное число прямоугольных областей, сохраняемых по всем классам. Обратите внимание, что установка этого значения в большое число может привести к ошибке исчерпания памяти (OOM error) в зависимости от рабочей нагрузки системы.
  • iou_threshold: 0-мерный тензор с плавающей точкой, представляющий порог для определения того, слишком ли сильно перекрываются прямоугольные области с точки зрения IOU.
  • score_threshold: 0-мерный тензор с плавающей точкой, представляющий порог для определения, когда следует удалить прямоугольные области на основе оценки.

Дополнительные атрибуты (см. Attrs):

  • pad_per_class: Если false, выходные прямоугольные области, оценки и классы заполняются/обрезаются до max_total_size. Если true, выходные прямоугольные области, оценки и классы заполняются до max_size_per_class*num_classes, если это значение превышает max_total_size, то оно обрезается до max_total_size. По умолчанию false.
  • clip_boxes: Если true, предполагается, что координаты прямоугольных областей лежат в интервале [0, 1] и выходные прямоугольные области обрезаются, если они выходят за пределы [0, 1]. Если false, обрезка не выполняется, и координаты прямоугольных областей выводятся в исходном виде.

Возвращаемые значения:

  • Output nmsed_boxes: [batch_size, max_detections, 4] тензор с плавающей точкой float32, содержащий прямоугольные области, после подавления не максимальных значений.
  • Output nmsed_scores: [batch_size, max_detections] тензор с плавающей точкой float32, содержащий оценки для прямоугольных областей.
  • Output nmsed_classes: [batch_size, max_detections] тензор с плавающей точкой float32, содержащий классы для прямоугольных областей.
  • Output valid_detections: [batch_size] тензор int32, указывающий количество действительных распознаваний для каждого элемента в наборе данных. Только верхние num_detections[i] элементы в nms_boxes[i], nms_scores[i] и nms_class[i] являются действительными. Остальные элементы — это заполнение нулями.
Конструкторы и деструкторы
CombinedNonMaxSuppression(const ::tensorflow::Scope & scope, ::tensorflow::Input boxes, ::tensorflow::Input scores, ::tensorflow::Input max_output_size_per_class, ::tensorflow::Input max_total_size, ::tensorflow::Input iou_threshold, ::tensorflow::Input score_threshold)
CombinedNonMaxSuppression(const ::tensorflow::Scope & scope, ::tensorflow::Input boxes, ::tensorflow::Input scores, ::tensorflow::Input max_output_size_per_class, ::tensorflow::Input max_total_size, ::tensorflow::Input iou_threshold, ::tensorflow::Input score_threshold, const CombinedNonMaxSuppression::Attrs & attrs)
Общедоступные атрибуты
nmsed_boxes
::tensorflow::Output
nmsed_classes
::tensorflow::Output
nmsed_scores
::tensorflow::Output
operation
Operation
valid_detections
::tensorflow::Output
Общедоступные статические функции
ClipBoxes(bool x)
Attrs
PadPerClass(bool x)
Attrs
Структуры
tensorflow::ops::CombinedNonMaxSuppression::Attrs

Дополнительные атрибуты для настройки CombinedNonMaxSuppression.

Общедоступные атрибуты

nmsed_boxes

::tensorflow::Output nmsed_boxes

nmsed_classes

::tensorflow::Output nmsed_classes

nmsed_scores

::tensorflow::Output nmsed_scores

operation

Operation operation

valid_detections

::tensorflow::Output valid_detections

Общедоступные функции

CombinedNonMaxSuppression

 CombinedNonMaxSuppression(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input boxes,
  ::tensorflow::Input scores,
  ::tensorflow::Input max_output_size_per_class,
  ::tensorflow::Input max_total_size,
  ::tensorflow::Input iou_threshold,
  ::tensorflow::Input score_threshold
)

CombinedNonMaxSuppression

 CombinedNonMaxSuppression(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input boxes,
  ::tensorflow::Input scores,
  ::tensorflow::Input max_output_size_per_class,
  ::tensorflow::Input max_total_size,
  ::tensorflow::Input iou_threshold,
  ::tensorflow::Input score_threshold,
  const CombinedNonMaxSuppression::Attrs & attrs
)

Общедоступные статические функции

ClipBoxes

Attrs ClipBoxes(
  bool x
)

PadPerClass

Attrs PadPerClass(
  bool x
)

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/cc/class/tensorflow/ops/combined-non-max-suppression

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API