【发布时间】:2022-07-17 19:54:58
【问题描述】:
我正在使用 Nvidia Jetson Nano 和 Raspberry Pi V2.1 相机通过 Python 和 OpenCV 进行颜色检测。但是,在我的计算机上运行的代码在 Jetson Nano 上不起作用,并且我不断收到错误。相机工作正常,我检查了它。此外,Jetson Nano 正在运行,但相机未打开。我无法解决问题。
这是我的代码:
import cv2
print(cv2.__version__)
dispW=320
dispH=240
flip=2
camSet=\'nvarguscamerasrc ! video/x-raw(memory:NVMM), width=3264, height=2464, format=NV12, framerate=21/1 ! nvvidconv flip-method=\'+str(flip)+\' ! video/x-raw, width=\'+str(dispW)+\', height=\'+str(dispH)+\', format=BGRx ! videoconvert ! video/x-raw, format=BGR ! appsink\'
cam=cv2.VideoCapture(camSet)
lower_red = (147,46,91)
upper_red = (180,255,255)
while True:
ret, frame=cam.read()
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
mask = cv2.inRange(hsv, lower_red,upper_red)
final_frame = cv2.bitwise_and(frame,frame, mask = mask)
cv2.imshow(\"Frame\", frame)
cv2.imshow(\"Mask\", mask)
cv2.imshow(\"Final\", final_frame)
if cv2.waitKey(1) ==ord(\"q\"):
break
cam.release()
cv2.destroyAllWindows()
这是错误:
3.2.0
OpenCV Error: Assertion failed ((scn== 3 || scn == 4) && (depth == CV_8U || depth == CV_32F)) in cvtColor, file /build/opencv-XDqSFW/opencv 3.2.0+dfsg/modules/imgproc/src/color.cpp, line 9815 Traceback (most recent call last):
File \"red.py\", line 15, in <module>
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
cv2.error: /build/opencv-XDqSFW/opencv 3.2.0+dfsg/modules/imgproc/src/color.cpp:9815: error: (-215) (scn== 3 || scn== 4) && (depth == CV_8U || depth == CV_32F) in function cvtColor
-
你启用了 picamera 吗?须藤 raspi-config
-
我使用的是 Jetson Nano,而不是 Raspberry Pi。当我在终端上写 \"sudo raspi-config\" 时,它说 \"command not found\"
-
cam = cv2.VideoCapture(camSet, cv2.CAP_GSTREAMER) 或在末尾添加这个 video/x-raw,format=BGR ! appsink drop=1 或者 Opencv 只使用管道字符串(不带单引号)。
-
这个命令打开了相机,是的。如果我在代码中的 camset 行添加它,你认为它有效吗?
-
它没有用。显示此错误。 camSet=\'nvarguscamerasrc sensor_id=0 ! \'video/x-raw(memory:NVMM),width=3280, height=2464, framerate=21/1, format=NV12\' ! nvvidconv 翻转方法=2 ! \'视频/x-raw,宽度=816,高度=616\'! nvvidconv ! nvegl变换! nveglglessink -e\' ^ SyntaxError: 无效的语法
标签: python opencv gstreamer nvidia-jetson-nano