无法在node.js中运行opencv-python脚本:没有名为cv2的模块

时间:2018-02-23 11:08:26

标签: python node.js opencv

使用此代码捕获图像,它在spyder-anaconda上运行良好,但我希望与我的应用程序集成,该应用程序是在node.js平台上进行的,但无法这样做。

python代码的开头如下:

//cam_open.py
import cv2
import numpy as np

aarcascade_frontalface_default.xml"

detector=cv2.CascadeClassifier('haarcascade_frontalface_default.xml')

cam = cv2.VideoCapture(0)

#------Id=raw_input('enter your id')----
Id=1
path= 'Dataset1'
sampleNum=0
while(True):
    ret, img = cam.read();

。 。

和与node.js集成的代码如下:

(注意:我已经使用这段代码来运行其他python脚本并且它在它们上运行得很完美但是当我包含opencv时它会给我错误,即使我已经添加了opencv路径到我的环境变量)

//index.js
var PythonShell = require('python-shell');

var pyshell = new PythonShell('cam_open.py');

pyshell.on('message', function (message) {

    console.log(message);
});

我得到的错误如下:

HIBA@hiba-pc MINGW64 ~/documents/sabah/driver-comp/test
$ node index.js
events.js:137
      throw er; // Unhandled 'error' event
      ^

Error: ImportError: No module named cv2
    at PythonShell.parseError (C:\Users\HIBA\documents\sabah\driver-comp\node_modules\p
ython-shell\index.js:184:17)
    at terminateIfNeeded (C:\Users\HIBA\documents\sabah\driver-comp\node_modules\python
-shell\index.js:98:28)
    at ChildProcess.<anonymous> (C:\Users\HIBA\documents\sabah\driver-comp\node_modules
\python-shell\index.js:89:9)
    at ChildProcess.emit (events.js:160:13)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:209:12)
    ----- Python Traceback -----
    File "cam_open.py", line 1, in <module>
      import cv2

这里的任何人都可以帮助我解决这个问题:)

0 个答案:

没有答案