Skip to content

Распознавание маркеров ArUco ​

Объявление экземпляра ​

После добавления блока Распознавание маркеров ArUco(ArucoMarker) в рабочую область в код Python автоматически вставляется следующее объявление экземпляра:

python
aruco_marker = ArucoMarker(0)
# Когда экземпляров несколько
aruco_marker_1 = ArucoMarker(1)

Параметры ​

НазваниеВидОписаниеДиапазон / ТипПо умолчанию
indexПункт выпадающего спискаНомер экземпляра (начиная с 0)Целое число 0 или больше0

Выбрать камеру ​

Задаёт камеру, используемую для распознавания маркеров ArUco.

device

Параметры ​

НазваниеВидОписаниеДиапазон / ТипПо умолчанию
unitПункт выпадающего спискаНазвание устройства камерыНазвание камеры в системе-

Python ​

python
aruco_marker = ArucoMarker(0)

aruco_marker.device('')

Установить макс. число маркеров ​

Задаёт, сколько маркеров можно распознать самое большее. Диапазон числа маркеров — от 0 до 10.

max_count

Параметры ​

НазваниеВидОписаниеДиапазон / ТипПо умолчанию
dataВвод (блок)Максимальное число маркеровЦелое число от 0 до 10-

Python ​

python
aruco_marker = ArucoMarker(0)

aruco_marker.max_count(5)

Распознать маркер один раз ​

Находит маркеры, которые сейчас на экране, и только один раз отмечает их области.

detect_once

Параметры ​

(нет)

Python ​

python
aruco_marker = ArucoMarker(0)

aruco_marker.detect_once()

Запустить / остановить непрерывное распознавание маркеров ​

Непрерывно отслеживает маркеры на экране и отмечает их области на изображении.

detect_continuous

Параметры ​

НазваниеВидОписаниеДиапазон / ТипПо умолчанию
unitПункт выпадающего спискаДействиезапустить(start), остановить(stop)-

Python ​

python
aruco_marker = ArucoMarker(0)

# unit = "start"
aruco_marker.detect_continuous()
# unit = "stop"
aruco_marker.stop()

Показать результат ​

Определяет, показывать ли на изображении с камеры результат распознавания маркеров.

display

Параметры ​

НазваниеВидОписаниеДиапазон / ТипПо умолчанию
onПункт выпадающего спискаОтображение ON / OFFпоказать(on=True), скрыть(off=False)TRUE

Python ​

python
aruco_marker = ArucoMarker(0)

aruco_marker.display(True)
aruco_marker.display(False)

Данные маркера ​

Возвращает положение и размер маркера с указанным ID.

marker_data

Параметры ​

НазваниеВидОписаниеДиапазон / ТипПо умолчанию
dataВвод (блок)ID маркераЦелое число 0 или больше-
unitПункт выпадающего спискаВид измеренияx, y, min_x, max_x, min_y, max_y, width, height, area, rotation-

Python ​

python
aruco_marker = ArucoMarker(0)

aruco_marker.marker(0, 'x')
aruco_marker.marker(3, 'area')

Расстояние между маркерами ​

Возвращает расстояние между двумя маркерами.

marker_to_marker

Параметры ​

НазваниеВидОписаниеДиапазон / ТипПо умолчанию
unit1Ввод (блок)ID первого маркераЦелое число 0 или больше-
unit2Ввод (блок)ID второго маркераЦелое число 0 или больше-
typeПункт выпадающего спискаВид расстояниярасстояние (пропущено или None), расстояние по горизонтали(horizontal), расстояние по вертикали(vertical)None

Python ​

python
aruco_marker = ArucoMarker(0)

aruco_marker.get_distance(0, 1)  # расстояние
aruco_marker.get_distance(0, 2, 'horizontal')  # расстояние по горизонтали

Маркер распознан ​

Найден ли маркер с указанным id

marker_detected

Параметры ​

НазваниеВидОписаниеДиапазон / ТипПо умолчанию
dataВвод (блок)ID маркераЦелое число 0 или больше-

Python ​

python
aruco_marker = ArucoMarker(0)

aruco_marker.marker_detected(0)