SkillAgentSearch skills...

PropantCheckChallenge

Finding proppant granules count and sizes distribution by photo - rosneft competition

Install / Use

/learn @RedMoon32/PropantCheckChallenge
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Propant Check Challenge Solution

Данный репозиторий является решением для сорвенования RosneftPropantCheckChallenge (https://boosters.pro/championship/RPCC/overview) Команды Ne_Beite (7 место из 160 команд). Условие задачи: по фотографиям рассыпанных на листке гранул пропанта классифицировать их фракцию и количество.

Содержание

  1. Описание решения
  2. Запуск обучения
Ne_Beite
├── data
│   ├── labels
│   │   └── train.csv
│   └── train
├── models
│   ├── regr_tree.model
├── README
├── train_distributions.py
├── preprocess.py
├── hough.py
├── requirements.txt
└── run.py

Описание решения <a name="overview"></a>

С помощью методов из OpenCV мы вырезаем из фотографии внутренний прямоугольник с гранулами проппанта и запускаем cv2.HoughCircles() для поиска окружностей на картинке. Далее высчитываем средний радиус и делим количество пикселей на переднем плане на фото на площадь круга с средним радиусом. Это и будет количеством гранул в ответе. Для подсчёта распределения гранул по ситам строим распределения радиусов найденных окружностей и по ним обучаем DecisionTreeRegressor, который затем будет сконвертирован в нейронку Torch для предсказания распределения бинов.

Презентация решения: https://docs.google.com/presentation/d/1wQ5OYPsjdsp4QQN5kUn7LCuuPR50J25oFWSBCFwrIgE/edit?usp=sharing

Описание файлов

  • preprocess.py - предобработка фотографий (вырезка прямоугольников, настройка перспективы и яркости)
  • hough.py - методы для подсчета гранул и распределения радиусов
  • train_distributions.py - обучение распределений радиусов в размеры гранул

Запуск обучения <a name="training"></a>

  1. Для установки виртуального окружения и зависимостей:
    $ python -m venv env
    $ source env/bin/activate on Linux, $ env\Scripts\activate on Windows
    $ pip install -r requirements.txt
  2. Загрузите фотографии в папку data/train
  3. Для запуска процесса обучения и создания модели:
    (env) $ python run.py

Related Skills

View on GitHub
GitHub Stars8
CategoryDevelopment
Updated4mo ago
Forks2

Languages

Python

Security Score

72/100

Audited on Nov 11, 2025

No findings