AI-система візуального контролю якості продуктів харчування

AI-візуальний контроль якості продуктів харчування На виробничій лінії гниле яблуко в партії преміум-сорту може залишитися непоміченим — людське око втомлюється, увага падає до кінця зміни. Ми ставимо машинний зір на базі [computer vision](https://en.wikipedia.org/wiki/Computer_vision) та YOLOv8,

Напрямки 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-візуальний контроль якості продуктів харчування

На виробничій лінії гниле яблуко в партії преміум-сорту може залишитися непоміченим — людське око втомлюється, увага падає до кінця зміни. Ми ставимо машинний зір на базі computer vision та YOLOv8, який інспектує кожен продукт 24/7 без знижок на втому. Автоматизований візуальний контроль знижує кількість помилково пропущених дефектів на 80% і скорочує частку ручної праці до мінімуму. Система використовує три камери (верх + два боки) для багаторакурсної зйомки, що критично для дефектів на кшталт забоїв яблук, видимих лише під певним кутом. Точність детекції — до 98% для типових дефектів. Окупність системи — від 6 до 12 місяців при продуктивності від 5 тонн за зміну.

Основні складнощі візуального контролю

Освітлення — ключовий фактор. Забій яблука видно лише при певному куті світла. Рішення — багаторакурсна зйомка (3–4 камери) або поляризоване світло, яке пригнічує відблиски. Без правильного освітлення модель не відрізнить свіжий плід від битого.

Суб’єктивний стандарт. Оцінка свіжості риби за кольором зябер або прозорістю очей потребує навченої моделі на вузьких ознаках. Ми використовуємо мультиспектральні камери (NIR) для м’яса та птиці — у ближньому ІЧ діапазоні крововиливи видно незалежно від кольору шкіри.

Швидкість конвеєра. При швидкості 0.3 м/с і ширині стрічки 1.2 м потрібно обробити кадр за 15–20 мс. На Jetson Orin ми вкладаємося в 12 мс для 720p — з детекцією YOLOv8m та кольоровою перевіркою.

Як AI справляється з варіаціями освітлення?

Модель навчається на синтетично змінених зображеннях: додавання шуму, зміна яскравості, контрасту, імітація різних джерел світла. Також застосовується адаптивна нормалізація гістограми перед інференсом. У production-системі ми фіксуємо калібрування освітлення та моніторимо відхилення через спектрофотометр.

Чому точність залежить від розміру датасету?

Модель має бачити всі варіації дефекту: різний розмір, орієнтацію, освітлення. На 4200 зображеннях яблук (3 сорти) ми досягли recall 98.7% по гнилі. Якщо датасет менше 2000, модель перевчається і погано узагальнює. Оптимальний обсяг — 3000–5000 розмічених кадрів на продукт.

Типові задачі та методи

Приклад програмного коду для інспекції
import cv2 import numpy as np from ultralytics import YOLO import segmentation_models_pytorch as smp import torch from PIL import Image class FoodQualityInspector: def __init__(self, config: dict): self.detector = YOLO(config['detection_model']) self.seg_model = smp.Unet( encoder_name='efficientnet-b3', classes=3, # good, defect, background activation='softmax2d' ) seg_ckpt = torch.load(config['seg_model']) self.seg_model.load_state_dict(seg_ckpt) self.seg_model.eval() self.color_standards = config.get('color_standards', {}) self.defect_area_threshold = config.get('max_defect_ratio', 0.03) def inspect(self, image: np.ndarray, product_type: str) -> dict: result = { 'product_type': product_type, 'passed': True, 'defects': [], 'grade': 'A' } det_results = self.detector(image, conf=0.4) defect_area_total = 0 for box in det_results[0].boxes: cls = self.detector.model.names[int(box.cls)] bbox = list(map(int, box.xyxy[0])) area = ((bbox[2]-bbox[0]) * (bbox[3]-bbox[1])) img_area = image.shape[0] * image.shape[1] defect = { 'type': cls, 'bbox': bbox, 'area_ratio': area / img_area, 'confidence': float(box.conf) } result['defects'].append(defect) defect_area_total += area / img_area if product_type in self.color_standards: color_result = self._color_check(image, product_type) result['color_analysis'] = color_result if not color_result['in_range']: result['defects'].append({ 'type': 'color_deviation', 'deviation': color_result['deviation'] }) critical_defects = [d for d in result['defects'] if d['type'] in ['mold', 'rot', 'foreign_object']] if critical_defects: result['passed'] = False result['grade'] = 'REJECT' elif defect_area_total > self.defect_area_threshold: result['grade'] = 'C' elif result['defects']: result['grade'] = 'B' return result def _color_check(self, image: np.ndarray, product_type: str) -> dict: hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV) standard = self.color_standards[product_type] lower = np.array(standard['hsv_lower']) upper = np.array(standard['hsv_upper']) mask = cv2.inRange(hsv, lower, upper) in_range_ratio = mask.sum() / 255 / mask.size return { 'in_range': in_range_ratio > standard.get('min_ratio', 0.6), 'ratio': float(in_range_ratio), 'deviation': float(1 - in_range_ratio) } 

Специфіка за категоріями продуктів

Фрукти та овочі

Основні дефекти — гниль, забої, тріщини, сторонні включення. Ключова складність — забій яблука видно лише при певному освітленні. Рішення: багаторакурсна зйомка (3–4 камери) або поляризоване світло.

М’ясо та птиця

Крововиливи, забруднення, неповна обробка. Мультиспектральна камера (NIR діапазон) краще стандартного RGB для виявлення крововиливів.

Хліб та випічка

Тріщини скоринки, сторонні включення, недопік. Задача висококонтрастна — працює добре.

Риба

Свіжість визначається за кольором зябер, прозорістю очей. Потребує навченої моделі на специфічних ознаках.

Порівняння методів детекції за продуктами

Продукт Основні дефекти Рекомендована модель Додаткові датчики
Яблука Гниль, забій, тріщина YOLOv8 + ResNet Поляризоване світло
Курка Крововилив, неповна обробка EfficientDet NIR камера
Хліб Тріщини скоринки, включення YOLOv8 Стандартне RGB
Риба Колір зябер, прозорість очей EfficientNet-b4 NIR + висока роздільна здатність

Кейс: лінія сортування яблук, 8 т/год (з нашої практики)

Конвеєрна стрічка 1.2м шириною, швидкість 0.3 м/с, 3 камери (верх + 2 бокових). Задача — сортування на 3 категорії: Premium (без дефектів), Standard (дрібні), Juice (великі дефекти).

  • Модель: YOLOv8m, донавчений на 4200 зображеннях яблук (3 сорти)
  • Класи: bruise, rot_spot, scar, crack, size_small, size_large
  • Продуктивність: обробка 1 кадру 720p за 12ms на Jetson Orin

Результати після 2 тижнів експлуатації:

  • Точність класифікації Premium/Standard: 96.2%
  • Точність виявлення гнилі (recall): 98.7%
  • Втрати від неправильного сортування знизилися на 68% порівняно з ручним контролем, що призводить до значної економії

Що входить у роботу: доставка "під ключ"

  1. Аудит виробничої лінії — оцінка освітлення, швидкості конвеєра, доступного місця
  2. Збір та розмітка датасету — від 2000 зображень з анотаціями дефектів
  3. Навчання моделі — YOLOv8, EfficientNet або Transformer-based архітектура (вибір залежить від вимог до швидкості та точності)
  4. Інференс-інжиніринг — оптимізація для запуску на Jetson, GPU-сервері або хмарі (Triton, ONNX)
  5. Інтеграція з конвеєром — синхронізація камер, пульсація сортувальників, протоколи OPC UA/Modbus
  6. Документація та навчання операторів — інструкції, регламенти, дашборд
  7. Гарантія — 6 місяців підтримки моделі (донавчання при появі нового дефекту)

Терміни розробки

Продукт Термін розробки
Детектор дефектів одного продукту 4–6 тижнів
Мультипродуктова система (3–5 видів) 8–12 тижнів
З інтеграцією у виробничу лінію 10–16 тижнів

Консультація та пілотний проєкт

Для оцінки вашого проєкту зв’яжіться з нами — проведемо безкоштовний аудит лінії та запропонуємо рішення під ваш бюджет і терміни. Замовте пілотний проєкт на два тижні, щоб побачити точність на своїй продукції. Отримайте консультацію щодо впровадження AI-інспекції на вашій лінії.

Наш досвід: 10 впроваджених систем у харчовій промисловості, сертифікати на відповідність ISO 9001 та HACCP.