OpenCV.js学习历程(一):OpenCV.js的编译

因为之接触过OpenCV的C++和Python版本,最近在逛官网的时候突然发现也有JS版的,但是网上的开发教程比较少,既然自己以前对CV还算比较了解就试试学习一下JS版的,毕竟现在移动端的JS很受欢迎。

工欲善其事,必先利其器。要使用JS版的CV就要先编译一下,因为官方没有真正意义上的JS版CV,都是从C++版本中编译过来的。

一、安装依赖项:

sudo apt-get update
sudo apt-get install python2.7
sudo apt-get install nodejs
sudo apt-get install build-essential
sudo apt-get install cmake
sudo apt-get install git-core
sudo apt-get install default-jre
sudo apt-get install doxygen
sudo apt-get install nodejs
sudo apt-get install npm

二、在Linux下首先安装Emscripten。

为什么安装?因为这个能把C++的.o程序编译成.js(说法来源于网络)。

# Enter Home directory
cd ~
# Get the emsdk repo
git clone https://github.com/juj/emsdk.git
# Enter emsdk directory
cd emsdk
# Fetch the latest version of the emsdk (not needed the first time you clone)
git pull
# Download and install the latest SDK tools.
./emsdk install latest

这时因为国内网络问题就会出现卡死,导致下载失败。

这是需要手动下载一些包:(首先创建一个zips的文件夹用于存放安装包)

mkdir ~/emsdk/zips

因为主要是node.js下载不下来,因此可以在node.js的官网上找到自己需要的版本。https://nodejs.org/en/download/releases/

如果其他的下载不下来就可以在ternimal中找到地址下载,下载完成后将下载的包放入zips文件夹即可,重新运行上面的./emsdk install latest命令即可。然后继续:

# Make the "latest" SDK "active" for the current user. (writes ~/.emscripten file)
./emsdk activate latest

# Activate PATH and other environment variables in the current terminal
source ./emsdk_env.sh

如果不出意外应该就完成了安装,使用emcc - v命令查看emsdk的安装情况。

三、现在开始下载OpenCV并编译

# Get the OpenCV repo
git clone https://github.com/opencv/opencv.git

# Enter CV directory
cd opencv

# build 
# JS version
python ./platforms/js/build_js.py build_js
# Web version
python ./platforms/js/build_js.py build_wasm --build_wasm
# Documents
python ./platforms/js/build_js.py build_js --build_doc
# Tests
python ./platforms/js/build_js.py build_js --build_test

接下来进行测试即可:

# Enter build directory
cd ~/opencv/build_js/bin

# Install global http-server
npm install http-server -g

# Start http Server
http-server 

打开浏览器输入:http://localhost:8080/tests.html,查看结果。如果不能链接就表示配置失败,成功后的截图:

OpenCV.js学习历程(一):OpenCV.js的编译_第1张图片

 

 

你可能感兴趣的:(OpenCV,JS,OpenCV.js)