OpenCV.js, сборка с использованием ORB и features2d

Я пытаюсь создать простое приложение web/js, которое распознает изображение на камере. Я уже сделал это на iOS и Android, используя OpenCV, поэтому моим очевидным выбором было использование OpenCV.js (последняя версия).

Я создал opencv.js, как в учебнике https://docs.opencv.org/3.4.1/d4/da1/tutorial_js_setup.html и создал простое приложение, которое меняет цветовое пространство с камеры на шкалу серого и показывает его на холсте.

Однако я не знаю, как использовать ORB, или он просто не включен в сборку opencv.js. Когда я пытаюсь сделать следующее: let orb = new cv.ORB() я получил

cv.ORB не является конструктором

Я также пытался использовать его по-другому, как в Python cv.ORB_create но с тем же результатом. Там нет учебника по docs.opencv с этим. Я не уверен, должен ли он быть распределен по-другому, или он отсутствует в сборке.

Я включил эти параметры в opencv / platform /js/build_js.py:

"-DBUILD_opencv_calib3d=On","-DBUILD_opencv_dnn=ON","-DBUILD_opencv_features2d=ON","-DBUILD_opencv_flann=On","-DBUILD_opencv_ml=On",

Но без эффекта. Когда я анализировал журналы из здания, я не нашел журналы от features2d, как

[ 33%] Сборка объектных модулей CXX /core/CMakeFiles/****

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

С уважением

2 ответа

Прямо сейчас opencv.js имеет очень минимальную реализацию, они не перенесли всю библиотеку opencv на js. У вас нет ORB.

Вы можете включить необходимые модули, создав собственную сборку opencv.js. найдете набор программного обеспечения, которое необходимо установить, и команды для выполнения. Другой альтернативный способ создания собственной сборки opencv.js - использование контейнера Docker, который также объясняется Здесь выздесь.

Другие вопросы по тегам