Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Наблюдение с использованием отслеживания

Компоненты и расходные материалы

Обработка Arduino
× 1
Arduino UNO
× 1
Камера (общая)
× 1
Сервоприводы (Tower Pro MG996R)
× 1

Приложения и онлайн-сервисы

IDE Arduino

Об этом проекте

Отслеживание объектов - важная задача в области компьютерного зрения. Распространение мощных компьютеров, доступность высококачественных и недорогих видеокамер, а также возрастающая потребность в автоматизированном видеоанализе вызвали большой интерес к алгоритмам слежения за объектами. В видеоанализе есть три ключевых этапа:обнаружение интересных движущихся объектов, отслеживание таких объектов от кадра к кадру и анализ дорожек объектов для распознавания их поведения. Поэтому использование отслеживания объектов уместно в следующих задачах:

1. Распознавание на основе движения, то есть идентификация человека на основе походки, автоматический объект

обнаружение и т.д .;

2. Автоматическое наблюдение, то есть наблюдение за местом действия для обнаружения подозрительных действий или

маловероятные события;

3. Индексирование видео, то есть автоматическое аннотирование и поиск видео в мультимедиа

базы данных;

4. Взаимодействие человека с компьютером, то есть распознавание жестов, отслеживание взгляда для данных

ввод в компьютеры и т.д .;

5. Мониторинг трафика, то есть сбор статистики трафика в реальном времени для направления потока трафика.

6. Автомобильная навигация, то есть планирование пути на основе видео и возможности уклонения от препятствий. В простейшей форме слежение можно определить как задачу оценки траектории объекта в плоскости изображения, когда он движется по сцене. Другими словами, трекер присваивает одинаковые метки отслеживаемым объектам в разных кадрах видео. Кроме того, в зависимости от области отслеживания, средство отслеживания также может предоставлять информацию, ориентированную на объект, такую ​​как ориентация, площадь или форма объекта.

Этот проект посвящен методу обнаружения и отслеживания объектов в реальном времени, в котором мы используем камеру видеонаблюдения для идентификации и отслеживания цели в зоне обзора камеры из комнаты наблюдения. Наряду с программным отслеживанием система также будет отслеживать объект на сцене с помощью установленной на лазере роботизированной руки. Роботизированная рука работает таким образом, что покрывает каждую координату в видеокадре своим движением панорамирования и наклона.

Ссылка на файл САПР -

Код

  • mouse_drag_fina_larduino_workinh_code.ino
  • facetracking_procesing_final_code.pde
  • mouse_drag_fina_larduino_workinh_code.ino
mouse_drag_fina_larduino_workinh_code.ino Arduino
Это код обработки, который передает координаты мыши в Arduino и регулирует сервопривод в соответствии с положением указателя мыши
 ///////////////////// Код обработки / //////////////////////////////// import processing.serial. *; import processing.video. *; import java.awt . *; import gab.opencv. *; Захват видео; OpenCV opencv; Serial Com7; float fpan, ftilt; int pan, tilt, x, y; int [] inBytes =new int [3]; void setup () {size (500 500); String portName =Serial.list () [0]; Com7 =новый последовательный порт (this, portName, 9600); видео =новый захват (это, 640/2, 480/2); opencv =новый OpenCV (это, 640/2, 480/2); opencv.loadCascade (OpenCV.CASCADE_FRONTALFACE); video.start (); // Com7 =новый Serial (this, Serial.list () [1], 9600); фон (0,0,0); эллипс (ширина / 2, ширина / 2,10,10);} void draw () {scale (2); opencv.loadImage (видео); noFill (); ход (0, 255, 0); strokeWeight (3); изображение (видео, 0, 0); Прямоугольник [] faces =opencv.detect (); println (faces.length); для (int я =0; я  0) {inBytes [0] =inBytes [1]; inBytes [1] =inBytes [2]; inBytes [2] =Com7.read (); если (inBytes [2] ==255) {println (inBytes [0] + "," + inBytes [1]); // фон (0,0,0); // эллипс (ширина - inBytes [0] * ширина / 180, inBytes [1] * ширина / 180,10,10);}}} void captureEvent (Capture c) {c.read ();} 
facetracking_procesing_final_code.pde Arduino
Этот код отслеживает лицо человека в диапазоне просмотра
 ///////////////////// Код обработки ////////////// /////////////////// import processing.serial. *; import processing.video. *; import java.awt. *; import gab.opencv. *; Захватить видео; OpenCV opencv; Последовательный Com7; float fpan, ftilt; int pan, tilt, x, y; int [] inBytes =new int [3]; void setup () {size (500 500); String portName =Serial.list () [0]; Com7 =новый последовательный порт (this, portName, 9600); видео =новый захват (это, 640/2, 480/2); opencv =новый OpenCV (это, 640/2, 480/2); opencv.loadCascade (OpenCV.CASCADE_FRONTALFACE); video.start (); // Com7 =новый Serial (this, Serial.list () [1], 9600); фон (0,0,0); эллипс (ширина / 2, ширина / 2,10,10);} void draw () {scale (2); opencv.loadImage (видео); noFill (); ход (0, 255, 0); strokeWeight (3); изображение (видео, 0, 0); Прямоугольник [] faces =opencv.detect (); println (faces.length); для (int я =0; я  0) {inBytes [0] =inBytes [1]; inBytes [1] =inBytes [2]; inBytes [2] =Com7.read (); если (inBytes [2] ==255) {println (inBytes [0] + "," + inBytes [1]); // фон (0,0,0); // эллипс (ширина - inBytes [0] * ширина / 180, inBytes [1] * ширина / 180,10,10);}}} void captureEvent (Capture c) {c.read ();} 
mouse_drag_fina_larduino_workinh_code.ino Arduino
Это код Arduino для сервомеханизма
 #include  byte inBytes [3]; Servo panservo; Servo tiltservo; int panangle =90; int tiltangle =90; void setup () {Serial.begin (9600); panservo.attach (9); tiltservo.attach (11);} void loop () {if (Serial.available ()> 0) {inBytes [0] =inBytes [1]; inBytes [1] =inBytes [2] ]; inBytes [2] =Serial.read (); if (inBytes [2] ==255) {Serial.write (inBytes, 3); panangle =inBytes [0]; tiltangle =inBytes [1]; panservo.write (панорамирование); tiltservo.write (tiltangle);}}} 
Открыть библиотеку резюме для обработки
Установите эту библиотеку, чтобы этот код работал https://github.com/atduskgreg/opencv-processing

Изготовленные на заказ детали и корпуса


Производственный процесс

  1. Температурный профиль Raspberry Pi с использованием LabVIEW
  2. Удаленный мониторинг погоды с помощью Raspberry Pi
  3. SensorTag для Blynk с использованием Node-RED
  4. Отслеживание Raspberry Pi Ball
  5. Датчик движения с использованием Raspberry Pi
  6. Автоматическое отслеживание объекта обзора
  7. Робот, использующий Raspberry Pi и Bridge Shield
  8. Робот, управляемый Wi-Fi и использующий Raspberry Pi
  9. С# — строки
  10. Определение точности отслеживания динамических объектов