Проблема ручного подсчёта на стройке
Инвентаризация материалов на стройке вручную — источник ошибок и потерь. Арматура, кирпичи, мешки с цементом, трубы, листы фанеры — всё это можно пересчитать автоматически по фото с телефона или камеры дрона. Мы разрабатываем системы компьютерного зрения для AI-подсчёта стройматериалов под ключ: от сбора датасета до интеграции с вашей WMS или 1С. Заказчики экономят до 80% времени на инвентаризации и исключают человеческий фактор. Средняя экономия бюджетных средств достигает $14k–20k в год на один склад.
Как AI-система обрабатывает плотные штабели?
Классический детектор (например, YOLOv8) сбоит, когда объекты лежат вплотную: IoU > 0.6, NMS подавляет правильные детекции. Точность падает до 60–70%. Для таких случаев используем density estimation — подход, заимствованный из подсчёта толпы. Сеть предсказывает карту плотности, сумма пикселей которой ≈ количество объектов. Для мешков в штабелях точность поднимается до 91–95%. Density estimation превосходит YOLO детекцию в 1.3–1.5 раза по точности на плотных штабелях. Density estimation — метод, адаптированный для промышленного учёта.
class DensityBasedCounter: """ CSRNet или CrowdCounting подход, адаптированный для материалов. Вместо детекции каждого объекта предсказываем карту плотности. Сумма пикселей карты плотности ≈ количество объектов. """ def __init__(self, model_path: str): import torchvision.models as models # VGG16 backbone + density head self.model = self._build_csrnet() self.model.load_state_dict(torch.load(model_path)) self.model.eval() @torch.no_grad() def count(self, image: np.ndarray) -> dict: from torchvision import transforms transform = transforms.Compose([ transforms.ToTensor(), transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225]) ]) tensor = transform(cv2.cvtColor(image, cv2.COLOR_BGR2RGB)) tensor = tensor.unsqueeze(0) density_map = self.model(tensor)[0, 0].numpy() # Сумма карты плотности = количество объектов count = float(density_map.sum()) return { 'method': 'density_estimation', 'count': round(count), 'count_float': count, 'density_map': density_map } Почему density estimation точнее детектора для мешков?
Для насыпных материалов и объектов в плотных рядах классический детектор сбоит. YOLO детекция проигрывает density estimation: точность падает до 60–70% против 91–95% у метода плотности. Density map approach даёт более стабильные результаты на перекрывающихся объектах. В основе — архитектура CSRNet, изначально разработанная для подсчёта людей на изображениях, но отлично работающая и для стройматериалов.
Как мы собираем и размечаем датасет?
Для обучения требуется 1000–3000 размеченных фотографий материалов в разных ракурсах и условиях. Мы помогаем с организацией съёмки или принимаем готовые снимки. Чем разнообразнее датасет, тем выше точность. Разметка выполняется вручную квалифицированными операторами с использованием полигональной разметки. На каждый материал — кирпичи, арматура, мешки, трубы — мы создаём отдельную обучающую выборку. Это позволяет модели точно определять количество объектов даже при частичном перекрытии.
Кейс: инвентаризация склада арматуры (наш клиент)
Крупный дистрибьютор стройматериалов с складом 800 т арматуры в пачках, 6 типоразмеров (d8 до d32). Ручная инвентаризация: 2 человека, 8 часов в месяц. После внедрения: оператор фотографирует торцы пачек на планшет (20–30 фото за час). Модель подсчитывает количество прутков в каждой пачке: Hough circles для d12–d25, density estimation для d8.
- Точность подсчёта: ±2% от ручного пересчёта
- Время инвентаризации: 1.5 часа vs. 8 часов вручную
- Интеграция с 1С: автоматическое обновление остатков
- Годовая экономия: более $14k–20k
| Тип материала | Метод | Точность |
|---|---|---|
| Кирпичи в поддоне | YOLO детекция | 93–97% |
| Арматура (торец) | Hough circles | 95–98% |
| Мешки в штабеле | Density estimation | 91–95% |
| Листы OSB/фанера | YOLO + segmentation | 96–99% |
| Трубы (торец) | Ellipse fitting | 94–97% |
Как настроить AI-подсчёт для ваших материалов?
Процесс внедрения включает несколько этапов. Сначала мы проводим аудит вашего склада и типов материалов. Затем организуем фотосъёмку с разных точек и размечаем датасет. После обучения модели и тестирования на контрольной выборке развёртываем решение на вашем сервере или на edge-устройстве. Интеграция с учётной системой — финальный шаг. На каждом этапе мы предоставляем отчёт о точности и рекомендации по дообучению.
Что входит в разработку AI-системы подсчёта
- Аудит процесса: анализ текущих методов учёта, типов материалов и условий съёмки
- Сбор и разметка датасета: 3000+ изображений с полигональной разметкой
- Обучение модели: подбор архитектуры (YOLOv8, CSRNet, SAM) и гиперпараметров
- Разработка API: REST или gRPC для интеграции с вашей WMS/1С
- Тестирование: A/B тест на реальных данных, отчёт о точности
- Развёртывание: сервер (Docker, Kubernetes) или edge (Jetson, Raspberry Pi)
- Документация и обучение: инструкция для операторов, сессия 1 час
- Поддержка: 3 месяца гарантийного сопровождения
Типичные сложности при внедрении
- Разнообразие освещения: от яркого солнца до сумрака склада — требуется аугментация датасета.
- Перекрытие и загрязнение: грязь на объектах снижает точность — используем предобработку и фильтрацию.
- Разные партии: оттенки кирпичей могут отличаться — модель должна обобщать на цветовые вариации.
Сроки и стоимость
| Тип проекта | Срок |
|---|---|
| Счётчик одного типа материала | 2–4 недели |
| Мультиматериальная система (5+ типов) | 5–9 недель |
| С интеграцией в WMS/1С | 7–12 недель |
Стоимость разработки рассчитывается индивидуально и зависит от числа типов материалов, качества данных и сложности интеграции. Инвестиции обычно окупаются за 6–12 месяцев за счёт сокращения человеко-часов и снижения ошибок. Мы гарантируем точность не ниже 90% на пилотном проекте. Свяжитесь с нами для консультации — наш инженер оценит вашу задачу и предложит оптимальное решение. Закажите бесплатную предварительную оценку, чтобы обсудить детали вашего проекта.







