
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:05


Всем привет, В этом руководстве я покажу вам прогресс, достигнутый в моем проекте отслеживания объектов. Здесь вы можете найти предыдущее руководство: https://www.instructables.com/id/Object-Tracking/, а здесь вы можете найти плейлисты YouTube со всеми видео и пояснения к коду:
Итак, мы, наконец, можем перейти от чисто программного обеспечения и мира кодирования к реальному миру, поставив камеру на крепление и перемещая крепление, чтобы следовать за объектом, давайте посмотрим, как!
Шаг 1: Крепление камеры:

Это крепление для камеры, которое мы собираемся использовать. Он не полностью совместим с веб-камерой, и способ, которым я закрепил камеру на креплении, НЕМНОГО, мягко говоря, рудиментарный: D
Но пока это подойдет, и в будущем я, вероятно, напечатаю какой-нибудь адаптер на 3d-принтере или построю его полностью с нуля.
Этот тип крепления часто называют «креплением для панорамирования и наклона», поскольку они имеют 2 двигателя для управления панорамированием (вращение в горизонтальной плоскости) и наклоном (вращение вокруг оси y или «вверх-вниз»), как показано на картина.
Шаг 2: Arduino и RC-сервомоторы:

Для управления креплением мы будем использовать 2 сервомотора RC и один Arduino Uno.
На картинке вы можете увидеть необходимые подключения:
Сервопривод наклона: земля - макетная плата
VCC - макет VCC
сигнал - вывод D6
Сервопривод панорамирования: земля - макетная плата
VCC - макет VCC
сигнал - вывод D5
Шаг 3: Код Matlab:

Arduino будет полностью управляться с помощью Matlab, используя набор инструментов arduino от Matlab.
В этом разделе вы можете найти код:
blueCircleFollow2.m - это «основная» функция, K_proportional1.m - это вспомогательный скрипт, вызываемый из другого скрипта, он в основном содержит пропорциональный контроллер.
Используемый подход к управлению показан на рисунке: исходная позиция, в которой мы хотим, чтобы круг объекта находился в центре экрана, пропорциональный контроллер будет воздействовать на сигнал управления сервоприводами, чтобы получить ошибку, определенную как центр изображения - круг. центр, до 0.
Шаг 4: Представления:

Здесь вы можете найти два видео, показывающих, как работают алгоритм и контроллер.
В первом, более длинном видео, более подробно объясняются код, структура и стратегия управления, второе видео - это отрывок из первого, содержащий только видео системы, отслеживающей объект.
Как видите, алгоритм более чем способен следовать за объектом, когда он перемещается, но я считаю, что есть возможности для улучшений, введя более сложный контроллер, чем просто пропорциональный (coff PID coff coff) и несколько других идей.
Если у вас есть какие-либо вопросы, не стесняйтесь задавать их в комментариях, и если вы хотите увидеть следующие шаги, подпишитесь на мой канал на YouTube, я буду размещать все там!
Рекомендуемые:
Отслеживание объектов OpenCV: 3 шага

Отслеживание объектов Opencv: обнаружение движущихся объектов - это метод, используемый в компьютерном зрении и обработке изображений. Несколько последовательных кадров из видео сравниваются различными методами, чтобы определить, обнаружен ли какой-либо движущийся объект. Обнаружение движущихся объектов использовалось для
Обнаружение визуальных объектов с помощью камеры (TfCD): 15 шагов (с изображениями)

Обнаружение визуальных объектов с помощью камеры (TfCD): когнитивные сервисы, которые могут распознавать эмоции, лица людей или простые объекты, в настоящее время все еще находятся на ранней стадии разработки, но с машинным обучением эта технология все больше развивается. Мы можем ожидать увидеть больше этой магии в
Отслеживание головы с помощью веб-камеры: 3 шага

Отслеживание головы с помощью веб-камеры: это похоже на отслеживание головы с помощью wiimote, но все, что требуется, это компьютер и веб-камера, даже моя веб-камера очень низкого качества работает
Добавление разъема синхронизации ПК к кабелю Nikon Sc-28 TTL (используйте автоматические настройки для включения вспышки камеры и включения вспышки выключения камеры !!): 4 шага

Добавьте разъем синхронизации ПК к кабелю Nikon Sc-28 Ttl (используйте автоматические настройки для включения вспышки камеры и запуска вспышки выключения камеры !!): в этой инструкции я покажу вам, как удалить один из этих надоедливых проприетарных 3-контактных разъемов TTL на сторона кабеля TTL снятого с камеры Nikon SC-28 и замените его стандартным разъемом синхронизации ПК. это позволит вам использовать специальную вспышку, s
Как создать уровень подсветки камеры для зеркальной камеры: 4 шага (с изображениями)

Как повысить уровень освещенности камеры для зеркальной камеры: вы когда-нибудь снимали в условиях низкой освещенности и замечали, что ваши снимки не соответствуют уровню? Ну, конечно, есть! В последнее время я много работал с фотографией с длительной выдержкой, и когда я выхожу в поле с гориллоподом, я бегаю