使用 python-shell npm 在节点 js 中 运行 python 脚本时出错
Error when running python script in node js with python-shell npm
我正在开发一个具有图像处理功能的网络应用程序。所以我使用 opencv-python 并使用 python-shell 包 python 脚本实现节点 js,
index.js;
var PythonShell = require('python-shell');
var options = {
mode: 'text',
pythonOptions:['-u'],
scriptPath:'C:/Users/MB/PycharmProjects/NumberPlate/venv/Lib/site-packages',
};
PythonShell.PythonShell.run('./myScript.py', options, function (err, results) {
if (err) throw err;
console.log('finished: %j', results);
});
myScript.py(前几行);
import cv2
import pytesseract
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
# Read the image file
image = cv2.imread('./t30.jpg')
# Convert to Grayscale Image
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# Canny Edge Detection
canny_edge = cv2.Canny(gray_image, 170, 200)
我所有的导入、环境变量和图像路径都正常,当我 运行 myScript.py
它运行良好并给我输出。
错误是:
----- Python Traceback -----
File "C:\Users\user\PycharmProjects\NumberPlate\venv\Lib\site-packages\platedetection2.py", line 11, in <module>
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) {
错误仅在执行python-shell
时出现
可能是什么问题,可以通过 python-shell 到 运行 opencv 脚本吗?
我通过将 python 脚本中图像的完整路径提供给 imread()
解决了错误
我正在开发一个具有图像处理功能的网络应用程序。所以我使用 opencv-python 并使用 python-shell 包 python 脚本实现节点 js,
index.js;
var PythonShell = require('python-shell');
var options = {
mode: 'text',
pythonOptions:['-u'],
scriptPath:'C:/Users/MB/PycharmProjects/NumberPlate/venv/Lib/site-packages',
};
PythonShell.PythonShell.run('./myScript.py', options, function (err, results) {
if (err) throw err;
console.log('finished: %j', results);
});
myScript.py(前几行);
import cv2
import pytesseract
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
# Read the image file
image = cv2.imread('./t30.jpg')
# Convert to Grayscale Image
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# Canny Edge Detection
canny_edge = cv2.Canny(gray_image, 170, 200)
我所有的导入、环境变量和图像路径都正常,当我 运行 myScript.py
它运行良好并给我输出。
错误是:
----- Python Traceback -----
File "C:\Users\user\PycharmProjects\NumberPlate\venv\Lib\site-packages\platedetection2.py", line 11, in <module>
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) {
错误仅在执行python-shell
时出现
可能是什么问题,可以通过 python-shell 到 运行 opencv 脚本吗?
我通过将 python 脚本中图像的完整路径提供给 imread()
解决了错误