Pull to refresh
-12
0.1
Send message

Анализ лицевых экспрессий: от нейросетевой классификации эмоций к моделированию восприятия эксперта

Reading time12 min
Views3.5K

В последние два десятилетия появляются коммерческие варианты компьютерных систем для автоматизированного анализа выражения эмоций, такие как FaceReader (Noldus Information Technology, Нидерланды), EmoDetect (Нейроботикс, Россия), аналогичные разработки известных IT-компаний  - Affectiva, Microsoft, Amazon. Подобные системы востребованы для оценки персонала, контроля бдительности, нейромаркетинга, судебно-психологической экспертизы, проведения научных исследований в области affective science. Раньше такие задачи решались высоко квалифицированными экспертами в области анализа поведения. Такая работа крайне сложна и трудоемка. С лавинообразным ростом видеоконтента и явным недостатком экспертов использование компьютерных систем, способных надежно оценивать лицевые экспрессии по видеозаписи, стало весьма актуальным.

В настоящее время de facto доминирующим является нейросетевой подход. Идея его применения основана на: 1) концепции базовых эмоций и 2) предположении о том, что по соответствующей выборке фотографий (пока еще редко видеозаписей), аннотированной экспертами, в ряде случаев, использованием методов краудсорсинга (как это делала компания Neurodata Lab), можно научить нейросеть распознавать эмоции.

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments8

Управление проектами: дайджест публикаций #19

Level of difficultyEasy
Reading time6 min
Views1.7K

Техники оценки трудозатрат, методы принятия решений, много советов для начинающих РП, вредные советы по работе в команде и всё интересное, что писали на этой неделе про управление проектами. Мы прочитали все публикации и выбрали для вас самые крутые и полезные. Читайте, сохраняйте и применяйте!

Читать далее
Total votes 11: ↑8 and ↓3+6
Comments0

Как правильно разговаривать с вашим руководителем? (памятка Руководителю проектов

Level of difficultyEasy
Reading time4 min
Views15K

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

Когда у вас проблемы на проекте, вам хочется прийти к руководителю, выговориться, пожаловаться, чтобы похвалили и сказали, что надо делать. И лучше, чтобы не по телефону, а лично. Если у вас такое было или есть (у меня было, знаю, о чем пишу), знайте: это нормальная человеческая реакция – в сложный момент хочется поддержки, выговориться, обняться и порыдать - но это непрофессиональная реакция. Вы не на сеансе у психолога, вы на работе. Здесь не платят за "послушать, обнять и принять".

Вам придется научиться формулировать вашу проблему определенным образом, чтобы получать результат. Как это делать - под катом.

Это очередная статья о том, чего не расскажут на курсах РП: о тех самых софт-скиллах, которые потребуются Руководителю проектов с самого первого дня работы. Если вам интересны такие истории, читайте другие мои статьи на Хабре и подписывайтесь на мой ТГ канал "Морковка спереди, морковка сзади".

Читать далее
Total votes 20: ↑14 and ↓6+10
Comments19

Назначение гироскопических датчиков и системы их использования в современных навигационных системах

Reading time6 min
Views35K
Эффективность и конкурентоспособность современных летательных аппаратов (ЛА) во многом определяется совершенством гироскопических датчиков первичной информации, на базе которых строятся навигационные системы и системы управления ЛА.
В настоящее время существует большое многообразие различных типов гироскопических датчиков, правильное применение которых обеспечивает необходимые эксплуатационные качества ЛА.
Каждому типу гироскопических датчиков можно найти оптимальную нишу применения. При выборе гироскопического датчика учитываются следующие его основные характеристики: точность, надежность работы, энергопотребление, габаритные размеры и стоимость. В зависимости от требований, предъявляемых к системам управления и навигационным системам, выбирается соответствующий тип гироскопического датчика.
Тем не менее, из всего многообразия датчиков можно выделить наиболее перспективные по указанным выше характеристикам. Это лазерные гироскопы (ЛГ), волоконно-оптические (ВОГ), волновые твердотельные (ВТГ) и микромеханические гироскопы (ММГ).
Основным их преимуществом является повышенная надежность работы из-за отсутствия быстро вращающихся роторов и карданных подвесов, минимальное потребление электроэнергии за счет реализации основных функциональных узлов на базе сервисной микроэлектроники и возможность повышения точностных характеристик путем математической обработки первичных сигналов датчиков в микропроцессорах.
Читать дальше →
Total votes 21: ↑15 and ↓6+9
Comments5

Сравнение сервисов Искусственного Интеллекта

Reading time47 min
Views9.4K

Данная сфера очень быстро развивается и, вероятно, данная статья устареет очень быстро, потому следует обозначить то что пишется она в конце мая 2024 года.

Читать далее
Total votes 16: ↑8 and ↓8+5
Comments13

ГОСТ Р 71207–2024 глазами разработчика статических анализаторов кода

Level of difficultyMedium
Reading time6 min
Views4.5K

PVS\-Studio, ГОСТ Р 71207\–2024


1 апреля 2024 года введён в действие новый ГОСТ "Статический анализ программного обеспечения". Если в ГОСТ Р 56939–2016 говорится о необходимости использования статического анализа при разработке безопасного программного обеспечения (РБПО), то ГОСТ Р 71207–2024 уточняет, что именно это означает.


В стандарте:


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

Информация в ГОСТ очень плотная, и её тяжело сразу воспринять, если вы ранее не имели дело со статическим анализом кода и РБПО. Поэтому я подготовил и провёл цикл из 5 вебинаров, где разобрал различные аспекты ГОСТ и примерами пояснил некоторых термины.


Вебинары вытекают один из другого, но в принципе они достаточно независимые, и вы можете начать знакомиться с новым ГОСТ с просмотра любого из них. Но обо всём по порядку.

Читать дальше →
Total votes 14: ↑14 and ↓0+22
Comments0

Как построить коммуникацию со стейкхолдерами: от оценки влияния до успешного сотрудничества

Level of difficultyMedium
Reading time5 min
Views2.8K

Привет! Меня зовут Елена Аладина, я product lead в Альфа-Банке. Последние несколько лет я управляю командами и убеждена, что успех продукта напрямую зависит от качественного взаимодействия со стейкхолдерами.

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

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

Читать далее
Total votes 8: ↑3 and ↓5+1
Comments2

Git Hooks не так страшны, как их малюют

Level of difficultyEasy
Reading time9 min
Views4.9K

Бывает, что в командах тестирования грезят об автоматизации процессов, но почему-то боятся внедрять даже такие простые вещи как хуки: «Они очень усложняют процесс, и писать их тысячу часов». С этим я категорически не согласен, ведь реализовать хуки очень просто.

Меня зовут Денис Федоров, я тестировщик в команде 2ГИС ПРО, сервисе геоаналитики для бизнеса. Рассказываю, что такое гит-хуки, чем они могут быть полезны и как их можно реализовать у себя. 

Читать далее
Total votes 14: ↑14 and ↓0+17
Comments10

learnopengl. Урок 1.1 — OpenGL

Reading time7 min
Views339K
Здравствуйте. Несколько недель назад я начинал серию переводов статей по изучению OpenGL. Но на 4 статье один хабровчанин заметил, что мои переводы могут нарушать лицензию, по которой распространяются учебные материалы, предоставленные в исходной статье. И действительно, мои переводы нарушали лицензию. Для разрешения этой проблемы я обратился к авторам того набора уроков, но так и не смог добиться нормального ответа. По этой причине я связался с автором другого, не менее (а возможно даже и более) крутого, набора уроков по OpenGL: Joey de Vries. И он дал полное разрешение на перевод его набора уроков. Его уроки гораздо более обширные, чем прошлый набор, поэтому эти переводы растянутся на долго. И я обещаю, будет интересно. Заинтересовавшихся прошу под кат.

Также я встал на распутье: либо я опишу все основы вроде создания окна и контекста в одной статье, чтобы не плодить статьи, но в таком случае такую огромную статью не всякий осилит; либо я также как и раньше буду переводить, опираясь на иерархию оригинала. Я решил выбрать второй вариант.

На счет уроков по Vulkan: к сожалению мне тяжело сейчас написать уроки по данному API по причине скудной видеокарты на данный момент, которая просто не поддерживает Vulkan API, поэтому уроки по данному API будут только после обновления видеокарты.
Читать дальше →
Total votes 45: ↑42 and ↓3+39
Comments9

Первое впечатление от концептов

Reading time8 min
Views19K


Решил разобраться с новой возможностью С++20 — концептами.

Концепты (или концепции, как пишет русскоязычная Вики) — очень интересная и полезная фича, которой давно не хватало.

По сути это типизация для аргументов шаблонов.

Основная проблема шаблонов до С++20 — в них можно было подставить все что угодно, в том числе то, на что они совершенно не рассчитаны. То есть система шаблонов была совершенно нетипизирована. В результате, при передаче в шаблон неверного параметра возникали невероятно длинные и совершенно нечитаемые сообщения об ошибках. С этим пытались бороться с помощью разных языковых хаков, которые я даже упоминать не хочу (хотя приходилось сталкиваться).

Концепты призваны исправить это недоразумение. Они добавляют в шаблоны систему типизации, причем весьма мощную. И вот, разбираясь с особенностями этой системы, я стал изучать доступные материалы в интернете.

Скажу честно, я немножко в шоке:) С++ и без того сложный язык, но тут хотя бы есть оправдание: так получилось. Метапрограммирование на шаблонах именно открыли, а не заложили при проектировании языка. А дальше, при разработке следующих версий языка, были вынуждены подстраиваться под это «открытие», так как в мире было написано очень много кода. Концепты же — принципиально новая возможность. И, как мне кажется, в их реализации уже присутствует некоторая непрозрачность. Возможно, это следствие необходимости учесть огромный объем унаследованных возможностей? Попробуем разобраться…
Читать дальше →
Total votes 37: ↑36 and ↓1+48
Comments34

Путешествие сквозь секреты прошивок: от BIOS/UEFI до OS

Level of difficultyMedium
Reading time17 min
Views12K

Вы когда-нибудь задумывались, что происходит, когда вы нажимаете кнопку питания на компьютере? За той краткой паузой, прежде чем экран загорится, скрывается сложный процесс. В этой статье мы погрузимся в увлекательный мир прошивок (firmware) и исследуем, как разные компоненты взаимодействуют во время загрузки системы. Поняв эти связи, вы получите четкое представление о том, как основные элементы приводят вашу систему в действие. Мы сосредоточимся на Intel архитектуре x86, хотя многие принципы применимы и к другим архитектурам.

Читать далее
Total votes 31: ↑31 and ↓0+41
Comments4

Тысяча и одна библиотека С++

Reading time65 min
Views30K

В жизни каждого программиста С++ рано или поздно возникает задача, которую кто-либо уже решил. Однако найти это решение бывает очень непросто в силу разных причин: оно недостаточно разрекламировано, либо имеет нечеткую документацию, или возникает проблема языкового барьера, ну, или поисковики просто плохо ищут).

Столкнувшись много раз подряд с тем, что найти что-то толковое довольно непросто, я решил попробовать распутать это узел и предложить для русскоязычных читателей свой справочник классных библиотек на С++. Я исходил из этого источника. Это очень многогранный и объемный список библиотек языка С++, но, скажем так, у меня были к нему вопросы. Потому я сделал перевод, затем значительно улучшил его в плане содержания (далее объясню, как, почему и зачем). На выходе получилось около 1000 библиотек. Как в сказке). Они, конечно, не покрывают все возможные задачи и предметные области, но поверьте, они затрагивают действительно многое.

Прикоснуться к сокровищнице языка С++
Total votes 82: ↑81 and ↓1+92
Comments23

У меня нет конструктора, но я должен инициализироваться

Reading time13 min
Views11K

Так прошло три дня. В комнате темно и холодно, но мониторы слепят. Ты дезориентирован настолько, как будто тебя кидает из одного диссоциативного эпизода в другой. Тебя то и дело пробивает нервный смех, хотя смеяться нечему. Как я здесь оказался? В чём моя вина?  

Главная ошибка была в том, что ты в это вообще ввязался — в этом никаких сомнений.

Ещё когда я впервые взялся проходить курс по C++ несколько лет назад, меня учили, что, если я не предоставлю собственного конструктора, то компилятор сам подберёт ему замену — своего рода конструкторы, действующие по умолчанию. Я решил подробнее в этом разобраться, особенно меня волновали случаи, которые выглядят примерно так:

Читать далее
Total votes 15: ↑13 and ↓2+21
Comments16

Gcov/Lcov — покрытие кода и отчет по нему

Level of difficultyMedium
Reading time3 min
Views3.9K

Рассказываю о том, как сделать отчет о покрытии кода

Gcov
 — свободно распространяемая утилита для исследования покрытия кода. Gcov генерирует точное количество исполнений для каждого оператора в программе и позволяет добавить аннотации к исходному коду. Gcov поставляется как стандартная утилита в составе пакета GCC.

Lcov — графический интерфейс для gcov. Он собирает файлы gcov для нескольких файлов с исходниками и создает комплект HTML-страниц с кодом и сведениями о покрытии. Также генерируются страницы для упрощения навигации. Lcov поддерживает покрытие строк, функций, ветвлений.[6]

Читать далее
Total votes 5: ↑4 and ↓1+6
Comments3

Как эффективно организовать 20 команд, работающих на одну цель?

Reading time7 min
Views1.2K

В этой статье я хочу поделиться моделью организации взаимодействия и управления 20 продуктовыми командами, работающих на одну цель, на примере одного из крупных маркетплейсов страны, куда меня пригласили, чтобы построить эффективные и управляемые процессы создания продукта.

Читать далее
Total votes 11: ↑9 and ↓2+10
Comments2

Kanban метод: инструкция к применению

Reading time8 min
Views18K

Канбан-метод помогает повысить управляемость и предсказуемость поставок, а также выстроить сквозной производственный процесс поиска и поставки ценности клиентам найти и устранить слабые места в процессах создания и развития продукта. 

Читать далее
Total votes 10: ↑10 and ↓0+14
Comments8

Жизнь без линтеров и расчет цены абстракции: материалы для разработчиков на С++

Reading time2 min
Views4.9K

В марте мы собирались на митапе по С++ в Санкт-Петербурге. Для всех, кто не смог присоединиться к встрече, подготовили записи докладов и дискуссии с экспертами из YADRO, VK и Kaspersky, а также создателем Sphinx Андреем Аксёновым. Почему стоит сохранить подборку в закладки:

• Руководитель отдела компиляторов научит рассчитывать цену абстракции для функций и других сущностей с учетом ваших ресурсов и возможностей компилятора.

• Эксперт из PVS-Studio покажет, почему линтеры не всегда подходят для поиска ошибок и какое решение использовать вместо них, чтобы не навредить безопасности сервиса.

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

Читать далее
Total votes 8: ↑7 and ↓1+8
Comments4

Применяем стандартные алгоритмы в C++. Семь примеров

Level of difficultyMedium
Reading time8 min
Views15K

Привет, Хабр! Меня зовут Николай, я разработчик С++ в SimbirSoft. В этой статье я хочу поделиться своим опытом применения алгоритмов. 

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

Все примеры взяты из реального проекта. Чтобы не загромождать примеры, код этих функций был упрощён для лучшего восприятия.

Прежде чем перейти к примерам, необходимо отметить основное преимущество алгоритмов: они позволяют упростить код и повысить читаемость (или самодокументирование, которое позволяет на основании названия алгоритма понять, что делается), обобщить код. Начиная с C++17, алгоритмы могут выполняться параллельно, реализация алгоритма может быть жестко с оптимизирована компилятором по сравнением с обычным кодом.

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments11

Динамическая JIT компиляция C++

Level of difficultyMedium
Reading time12 min
Views6.1K


Когда-то давно я писал статью-наблюдение про использование Хабра в качестве площадки для архитектурных ревью технических решений практически любой сложности Хабр — ума палата, и продолжаю пользоваться этим способом на постоянной основе.


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


Так, на днях искал материалы про JIT компиляцию C++ в рантайме с помощью clang/llvm и поиск мне выдал мою же собственную статью трехгодичной давности: Динамическая JIT компиляция С/С++ в LLVM с помощью Clang / Хабр. В результате появилась уже эта новая статья про JIT компиляцию C/С++.

Читать дальше →
Total votes 7: ↑6 and ↓1+9
Comments4

Интерфейсы для производств — это не сайты штамповать

Level of difficultyEasy
Reading time8 min
Views9.7K

Стоит только коснуться производственной специфики, как стандартные подходы разваливаются на куски — даже если у вас уже есть огромная дизайн-система на основе популярной методологии Material Design. Я — Аня Труфанова, делаю дизайн для MES (manufacturing execution system). Нам пришлось взять дизайн-систему и наполнить ее уникальными фичами и кастомными компонентами, адаптированными под нестандартные условия. Сейчас я поделюсь, что именно мы переосмыслили и какие фичи добавили.

Читать далее
Total votes 25: ↑25 and ↓0+26
Comments14
1
23 ...

Information

Rating
3,189-th
Registered
Activity