Веб-приложение Opencv

Я пытаюсь получить доступ к локальному веб-серверу через веб-браузер и передать ему изображение, затем веб-сервер возвращает обработанное изображение.

Я использую Ubuntu 14.04, используя opencv 3.0.0, apache2 и php5.

Это лучший пример, который я мог найти до сих пор для того, что я пытаюсь выполнить.

http://opencv-code.com/projects/веб-интерфейс-для-обнаружения-лица-с-opencv/

Однако он просто висит на полузагруженном баре и никогда не завершает задание. Я перечитал инструкции и обнаружил, что следовал им буквально, но все еще не мог заставить его работать. Это потому, что я использую Ubuntu, а не Windows?

Я готов использовать другие методы разработки интерфейса для взаимодействия с сервером (исполняемые файлы opencv). Однако я новичок в веб-разработке и не знаю, с чего начать (до этого момента я делал только настольные приложения).

Если есть более простой способ сделать это, пожалуйста, дайте мне знать.


person Zypps987    schedule 25.10.2015    source источник
comment
Пробовали ли вы просматривать журналы PHP (и добавлять операторы печати при поступлении запроса и при отправке работы в программу на С++)? Журналы Apache/веб-сервера? Может быть, ваша программа на С++ зависла? Есть много возможностей только с информацией, которую вы предоставили.   -  person Dan    schedule 25.10.2015
comment
Я не знал о журналах PHP! Спасибо за совет! Хорошо, просмотрев это, я обнаружил, что это проблема [Sun Oct 25 05:46:20.529988 2015] [: error] [pid 3236] [client 192.168.1.134:47079] PHP Неустранимая ошибка: Call-time pass-by-reference был удален в /var/www/html/web-based-face-detect-master/face-detect/face-detect.php в строке 8, реферер: 192.168.1.114/web-face-detect-master Строка 8: $last = exec($cmd, &$out); Однако я не уверен, почему это неправильно...   -  person Zypps987    schedule 25.10.2015
comment
Хорошо, я думаю, что, возможно, нашел проблему .... похоже, это строка над ней $cmd = 'face-detect --input='.$file.' --outdir='.dirname($file).''; Поправьте меня, если я ошибаюсь .... но разве эта команда не отформатирована для Windows cmd, а не для терминала Linux?   -  person Zypps987    schedule 25.10.2015
comment
это как-то связано?   -  person Utkarsh Sinha    schedule 25.10.2015


Ответы (1)


Отладка сложного кода, когда он работает под Apache, может быть сложной задачей, потому что браузеры не всегда сообщают вам, что передается. Вы пытались запустить свою php-страницу как отдельное приложение с помощью команды php? Это может быть проще, так как если программа получает ошибку сегментации, вы получаете сообщение на консоль.

person Kev Bo    schedule 25.10.2015