我最近使用以下指南通过npm安装了OpenCV: https://www.npmjs.com/package/opencv
我的问题非常简单。如何在我的项目中实际使用OpenCV库?
在该网站上,有一个面部检测示例,如下所示:
cv.readImage("./examples/files/mona.png", function(err, im){
im.detectObject(cv.FACE_CASCADE, {}, function(err, faces){
for (var i=0;i<faces.length; i++){
var x = faces[i]
im.ellipse(x.x + x.width/2, x.y + x.height/2, x.width/2, x.height/2);
}
im.save('./out.jpg');
});
})
cv.
变量是我坚持的地方。通常每当我使用npm安装新软件包时,我都会将其添加到我的app.js
文件中,如下所示:
angular
.module('App', [
'ngAnimate',
'ngCookies',
'ngResource',
'ngRoute',
'ngSanitize',
'ngTouch',
'ui.sortable',
'firebase',
'angular-toArrayFilter'
])
同样在我的任何控制器中,我都会将模块的名称作为参数添加到控制器中:
angular.module('App')
.controller('LoginCtrl', function ($scope, UserAuth, $window, $firebaseArray, fireBaseRef)
我似乎无法找到OpenCV的依赖名称,甚至允许我首先使用它。到目前为止,我所看过的指南都没有提及如何将它包含在您的项目中。
谢谢你的时间!
答案 0 :(得分:1)
您不能在浏览器端的JavaScript项目中使用OpenCV。 OpenCV是一个本机库,node-opencv
允许您在服务器上使用它,但不能直接在浏览器中使用它。
来自node-opencv
的{{3}}:
安装前需要安装OpenCV 2.3.1或更新版本 节点的OpenCV。请注意,OpenCV 3.x尚未完全支持。
答案 1 :(得分:0)
按照安装说明操作您的操作系统(即Mac OSX,Windows,Linux / Debian)。有关最受欢迎系统的说明,请访问:https://www.npmjs.com/package/opencv。
然后,在使用'cv'变量之前,你必须要求'opencv'模块。
var cv = require('opencv');
如果收到错误,通常会出现依赖性问题。验证是否已正确安装node-opencv的所有依赖项。在我第一次安装时我需要
npm install buffers
和
npm install node-pre-gyp
根据您安装opencv软件包的位置,您可能需要明确包含opencv.js文件的文件路径,如此
var cv = require('/path_to_node-opencv-master/lib/opencv');
我建议您阅读OpenCV文章介绍以及OpenCV网站http://opencv.org/上的文档以了解更多信息。