Как получить одну ограничивающую рамку при обнаружении лица с использованием opencv и python

Когда вы используете в setDragImage, Javascript будет просто использовать фактические данные растрового изображения, игнорируя другие атрибуты, такие как width. Проверьте спецификации .

Однако, если вы сделаете что-то вроде этого:

function handleDragStart(e) {
    var dragIcon = document.createElement('img');
    dragIcon.src = 'http://jsfiddle.net/favicon.png';
    dragIcon.width = '100';
    var div = document.createElement('div');
    div.appendChild(dragIcon);
    document.querySelector('body').appendChild(div);
    e.dataTransfer.setDragImage(div, -10, -10);
}

http://jsfiddle.net/cnAhv/9 /

Вы увидите, что тень перетаскивания теперь содержит большее изображение. Это происходит потому, что, когда мы используем другие видимые HTML-элементы (поэтому я добавил DIV к телу), браузер будет использовать свое визуализированное представление в качестве изображения перетаскивания.

-2
задан Yash Patel 15 February 2019 в 10:25
поделиться

1 ответ

Для одного лица используйте флаг CV_HAAR_FIND_BIGGEST_OBJECT в качестве последнего параметра в Detection MultiSale.

Но каскады Хаара сейчас не лучший выбор для распознавания лиц. В OpenCV 4.0 разработчики удаляют код для обучения каскадам Хаара - они рекомендуют использовать DNN. Например, здесь .

И второе: разработчики OpenCV создали инфраструктуру с открытым исходным кодом для вывода DNN - OpenVINO и множество предварительно обученных моделей (для распознавания лиц тоже). Если вы хотите иметь самый быстрый детектор лиц на процессоре, чем вам нужно использовать OpenVINO.

0
ответ дан Nuzhny 15 February 2019 в 10:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: