Проект разработки ПО для распознавания образов в сфере ритейла

Американская компания WorkFusion запускает на известной краудсорсинг-платформе Witology свой новый проект в области машинного обучения. Результатом работы должен стать готовый продукт – программа, которая позволит по фотографиям распознавать наличие товара на полках супермаркетов и корректность его выкладки.

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

К участию приглашаются:
• Студенты и аспиранты технических и математических специальностей
• Специалисты в сфере распознавания образов и computer vision
• Все желающие, кому интересна задача проекта

Условия проекта:
• Разработка алгоритмов распознавания изображений
• Разработка прототипов ПО
• Автор лучшего решения получит вознаграждение в размере 5000$
• Самые активные участники с перспективными идеями получат вознаграждение в размере 1000$ и 500$

Интеллектуальные компьютерные системы различного вида уже давно применяются ритейлерами в работе супермаркетов, а потому итоговый продукт довольно быстро займет свое место на рынке.

Для участия в проекте необходимо пройти регистрацию на нашем сайте — goo.gl/YRpwjW

Определение неправомерной вставки дополнительных кадров в видеопоток

Предположим, вы разрабатываете какую-нибудь технологию обработки видео информации, поступающей с видеокамеры в реальном времени. Технология готова, но как защитить ее? Вы хотите, чтобы пользователь мог выбрать варианты покупки вашего SDK для одной камеры, двух, трех и т.д. Конечно, нет проблем, если взаимодействие с видео вы встраиваете в SDK, но если такой возможности нет? В таком случае можно анализировать последовательность кадров, чтобы определить, принадлежат ли кадры текущему видеопотоку или нет. Данную возможность можно реализовать, используя реализованную в OpenCV технологию отличий. При реализации примера будем иметь в виду, что камера неподвижна и однонаправлена.
Поскольку неизвестно, как будет подделываться видеопоток (после каждого кадра или после последовательности кадров), то нельзя заниматься сравнением только последовательных кадров. Но можно чередовать сравнения, например один кадр – сравниваем с предыдущем, второй – с 5 кадром перед этим и т.п. После нахождения отличий можно посчитать процент измененного изображения и суммировать результат в единицу времени.


( Читать дальше )

Наложение изображения при помощи OpenCV

Однажды мне понадобилось совместить два изображения таким образом, чтобы было видно перемещение человека, т.е. не одна фигура на экране, а две – начальная и конечная позиция. Сразу же возникла идея не вручную это делать, а при помощи функции отличий OpenCV. Итак, изначально есть два изображения:



( Читать дальше )

Отличия от фона OpenCV

В OpenCV 2.2 есть отличный пример, демонстрирующий детектирование отличий от фона bgfg_segm. Листинг функции main представен ниже.
int main(int argc, char** argv)
{
    IplImage*       tmp_frame = NULL;
    CvCapture*      cap = NULL;
    bool update_bg_model = true;

    if( argc < 2 )
        cap = cvCaptureFromCAM(0);
    else
        cap = cvCaptureFromFile(argv[1]);
    help();
    
    if( !cap )
    {
        printf("can not open camera or video file\n");
        return -1;
    }
   


( Читать дальше )