AI-система мониторинга стройки с дронами: разработка и внедрение

Мы разрабатываем и внедряем AI-системы мониторинга строительных площадок с дронами. Каждую минуту на стройке меняются десятки параметров, а традиционный метод контроля — еженедельный обход с фотофиксацией — даёт субъективные данные и пропускает до 30% дефектов. Дрон с AI-анализом решает проблему: он

Направления AI-разработки

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1441
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1301
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    998
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1267
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    713
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    1003

Мы разрабатываем и внедряем AI-системы мониторинга строительных площадок с дронами. Каждую минуту на стройке меняются десятки параметров, а традиционный метод контроля — еженедельный обход с фотофиксацией — даёт субъективные данные и пропускает до 30% дефектов. Дрон с AI-анализом решает проблему: он фиксирует объективную картину, сравнивает с планом и формирует отчёт без участия человека. Это структурированные данные для принятия решений. Мы работаем на объектах от 5000 м². Кейс: сеть гипермаркетов сократила время инспекции с 8 часов до 40 минут, сэкономив 70% бюджета на контроль.

Проблемы, которые решаем

  • Ручная инспекция пропускает дефекты. По статистике, при визуальном осмотре прораб находит 60-70% трещин и сколов. AI-детекция (YOLOv8) даёт 92% точности.
  • Учёт техники и рабочих — хаос. На площадке с 10 кранами и 50 рабочими человек тратит 4 часа на перекличку. AI подсчитывает объекты за 15 минут с точностью 96%.
  • Прогресс стройки — субъективная оценка. BIM-модель и фактические ортофото расходятся на 10-15%. Мы автоматизируем сравнение и формируем объективные метрики.
  • Нарушения безопасности фиксируются постфактум. Каски, ограждения, работа на высоте — AI детектирует нарушения в реальном времени с привязкой к GPS.

"AI-мониторинг позволил нам сократить время инспекции на 80% и снизить процент брака на 15%" — прораб сети гипермаркетов.

Как AI-система обрабатывает данные с дрона?

Pipeline состоит из пяти шагов:

  1. Планирование миссии: дрон автоматически облетает площадку по сетке с перекрытием 60-80%.
  2. Фотограмметрия: из снимков строится ортофото и 3D-модель (Agisoft, OpenCV).
  3. Семантическая сегментация: модель YOLO детектирует объекты, а EfficientNet классифицирует этапы строительства.
  4. Сравнение с предыдущим облётом: вычисляется прогресс по зонам и отклонения от BIM.
  5. Отчёт: автоматически генерируется дашборд с тепловыми картами, графиками и фотопримерами.

Пример реализации детектора на PyTorch:

import numpy as np import cv2 from ultralytics import YOLO from pathlib import Path import json from datetime import datetime class ConstructionDroneMonitor: def __init__(self, project_config: dict): # Детектор для стройплощадки self.detector = YOLO(project_config['model_path']) # Классы: crane, excavator, concrete_mixer, scaffolding, # worker, pile, rebar, formwork, brickwork, concrete_poured self.equipment_classes = project_config['equipment_classes'] self.material_classes = project_config['material_classes'] # Эталонный план + зоны self.site_plan = project_config['site_plan'] self.gps_calibration = project_config['gps_calibration'] def process_flight_mission(self, images_dir: str, flight_log: dict) -> dict: """ Обрабатываем серию снимков одного облёта. flight_log содержит GPS-координаты для каждого снимка. """ images = sorted(Path(images_dir).glob('*.jpg')) all_detections = [] for img_path in images: frame = cv2.imread(str(img_path)) if frame is None: continue img_name = img_path.name gps = flight_log.get(img_name, {}) results = self.detector(frame, conf=0.4) img_detections = self._process_detections( results, frame, gps, str(img_path) ) all_detections.extend(img_detections) # Агрегируем по типам и зонам summary = self._aggregate_detections(all_detections) return summary def _process_detections(self, results, frame: np.ndarray, gps: dict, img_path: str) -> list: detections = [] for box in results[0].boxes: cls = self.detector.model.names[int(box.cls)] bbox = list(map(int, box.xyxy[0])) conf = float(box.conf) # Пиксели → GPS-координаты через проективное преобразование cx = (bbox[0] + bbox[2]) // 2 cy = (bbox[1] + bbox[3]) // 2 lat, lon = self._px_to_gps(cx, cy, gps, frame.shape) detections.append({ 'class': cls, 'confidence': conf, 'bbox': bbox, 'lat': lat, 'lon': lon, 'source_image': img_path }) return detections def _px_to_gps(self, px: int, py: int, gps: dict, frame_shape: tuple) -> tuple: """ Преобразование пикселей в GPS. Упрощённо: для точной геопривязки нужен RTK-GPS + GCP. """ if not gps: return None, None fov = gps.get('fov', 84) # DJI Phantom 4: 84° altitude = gps.get('altitude', 50) # метры drone_lat = gps.get('lat', 0) drone_lon = gps.get('lon', 0) h, w = frame_shape[:2] # Ground footprint gsd = (altitude * 2 * np.tan(np.radians(fov/2))) / w dx_m = (px - w/2) * gsd dy_m = (h/2 - py) * gsd lat = drone_lat + dy_m / 111320 lon = drone_lon + dx_m / (111320 * np.cos(np.radians(drone_lat))) return lat, lon def _aggregate_detections(self, detections: list) -> dict: summary = { 'equipment_count': {}, 'workers_on_site': 0, 'zones_progress': {}, 'timestamp': datetime.now().isoformat() } for det in detections: cls = det['class'] if cls in self.equipment_classes: summary['equipment_count'][cls] = \ summary['equipment_count'].get(cls, 0) + 1 elif cls == 'worker': summary['workers_on_site'] += 1 return summary 

Ортофото и 3D-модель прогресса

class SiteProgressAnalyzer: """Сравнение ортофото текущей недели с предыдущей""" def compare_orthomap(self, current_path: str, previous_path: str) -> dict: current = cv2.imread(current_path) previous = cv2.imread(previous_path) if current.shape != previous.shape: previous = cv2.resize(previous, (current.shape[1], current.shape[0])) # Semantic segmentation для классификации зон # Классы: bare_ground, formwork, concrete, rebar, masonry, # roofing, scaffolding, finished current_seg = self._segment_site(current) previous_seg = self._segment_site(previous) # Прогресс по зонам progress_by_zone = {} for zone_name, zone_bbox in self.site_zones.items(): x1, y1, x2, y2 = zone_bbox curr_zone = current_seg[y1:y2, x1:x2] prev_zone = previous_seg[y1:y2, x1:x2] # Изменения в классе стадии строительства progress_score = self._compute_progress_delta(curr_zone, prev_zone) progress_by_zone[zone_name] = progress_score return progress_by_zone 

Почему AI-мониторинг точнее визуального осмотра?

Человек устает через 30 минут концентрации — средняя точность обнаружения трещин падает до 50%. AI использует ту же модель на всех кадрах, без вариаций. Дополнительно, геопривязка с RTK даёт точность координат ±10 см, что позволяет привязать дефект к конкретному элементу конструкции. Для сравнения: при ручном обходе средняя погрешность привязки к плану — 1-2 метра. AI-детекция в 1.5 раза точнее визуального осмотра.

Закажите демонстрацию системы на вашем объекте — оцените разницу сами.

Процесс внедрения

  1. Аналитика: изучаем объект, типы работ, доступные данные (планы, паспорта, предыдущие облёты).
  2. Сбор данных: выполняем 2-3 пилотных облёта для калибровки модели под условия освещения и погоду.
  3. Разметка: аннотируем дефекты (не менее 5000 объектов для обучения стабильной модели).
  4. Обучение: донастраиваем YOLOv8 на собранных данных, тестируем на держауте.
  5. Интеграция: связываем с вашей QMS, BIM-платформой или CRM.
  6. Деплой: запускаем в эксплуатацию с еженедельными облётами.
  7. Поддержка: обновляем модель раз в квартал на новых данных.

Что входит в работу

  • Архитектурная документация pipeline (MLOps pipeline, версионирование моделей)
  • Обучение ваших инженеров работе с системой
  • Ежемесячные отчёты о точности и рекомендации по улучшению
  • Техподдержка 24/7 в течение первого года

Сроки ориентировочно

Показатель Типичные значения
Время обработки одного облёта (400 фото) 15–25 мин
Точность детекции техники 92–96%
Точность подсчёта рабочих 85–93%
Точность геопривязки (с RTK) ±10–20 см
Тип проекта Срок
Детекция техники + рабочих из облёта 4–6 недель
Мониторинг прогресса + еженедельные отчёты 8–14 недель
Полная платформа с ортофото + 3D + BIM 14–22 недели

Стоимость рассчитывается индивидуально под ваш объект. Оценим проект за 1 день — свяжитесь с нами.

Типичные ошибки при внедрении

  • Отсутствие наземных контрольных точек (GCP) — геопривязка плывёт на метры, данные бесполезны.
  • Съёмка в пасмурную погоду без подсветки — качество детекции падает на 15-20%.
  • Мало размеченных данных — модель не обобщает, ложные срабатывания на 30%.
  • Игнорирование обновлений модели — устаревшая модель не видит новые материалы или этапы.

Мы поможем избежать этих ошибок: предоставляем чек-лист подготовки и проводим валидацию на ваших данных до запуска.

Получите консультацию

AI-мониторинг стройплощадки — это инструмент, который окупается за счёт снижения брака и оптимизации ресурсов. Свяжитесь с нами, чтобы обсудить ваш объект и получить пример отчёта для одной секции. Опыт 10+ проектов в разных климатических зонах — от жилых комплексов до промышленных объектов.