Проблема

Задача
Основная:
- Оценить «реальный» объем древесины, который приехал на ЦБК.
Дополнительно:
- Оценка качества баланса.
- Оценка сортности.
- Выявление неправильной укладки (расстояние между пачками).
Термины
КПД (коэффициент полнодревесности) — коэффициент пересчёта в нет объём (из объёма брутто в объём нетто).
ЦБК — целлюлозно-бумажный комбинат.
Баланс — вид круглой древесины.
Пачка — сложенная группа бревен в рамках лесовоза.

Штабель — группа бревен , сложенная на земле.

Раскатка — процесс разгрузки лесовоза с дальнейшим проведением замеров размеров и объёмов каждого бревна.

Как выглядит процесс сейчас

Дополнительные вводные:
- 100-150 лесовозов в день (а еще есть жд, кораблики).
- 1млрд+ ₽/год — объем потребления древесины.
- 10-15% — оценка убытков от неправильной оценки.
Как должен выглядеть

КПД (коэффициент полнодревесности)


Что влияет на КПД:
- сорт;
- диаметр;
- длина;
- качество укладки;
- снег;
- сучки́.
Решение
- рамка с камерами:

- торцы:

Что нужно:
Подсчитать объем для каждой пачки, для этого:
- разделить пачки;
- определить сорт;
- диаметры;
- длины;
- наличие льда и т.д.


Как решаем:
- Классическое CV
- DL
Сложности:
- снег, день/ночь, наличие/отсутствие манипулятора между
Как ищем КПД:
- ML (инфа по длине, сорту, диаметру) → Кпд
- Добавляем CV фичи (embedding-и, определенный сорт, детекция льда)
Проблема:
- ground truth → шумный
Результаты
- 100% точность определения сорта древесины
- 99%+ точность разделения на пачки
- 98%+ определение КПД vs. оператор
- 90%+ определение КПД vs. раскатка