zsh:非法硬件指令mediapipe和openCV错误

问题描述 投票:0回答:3

我一直遇到这个错误并且无法修复它。我和很多人交谈过,他们不知道该怎么办。我的代码如下。这是非常简单的代码,应该打开我的网络摄像头并显示实时视频。我在 M1 Mac 64 位 Ventura 13.2 上使用 python 3.8.0,并使用 VsCode 和最新版本的 openCv、Mediapipe 和 numpy。我尝试过不同的 IDE,但没有成功。

import cv2
import mediapipe as mp
import numpy as np

mp_drawing = mp.solutions.drawing_utils
mp_pose = mp.solutions.pose

#VIDEO FEED
cap = cv2.VideoCapture(0)
while cap.isOpened():
    ret, frame = cap.read()
    cv2.imshow('Mediapipe Feed', frame)
    
    if cv2.waitKey(10) & 0xFF == ord('q'):
        break
        
cap.release()
cv2.destroyAllWindows()

我第一次运行这段代码时就可以工作了。我运行了几次,然后通过 HDMI 将笔记本电脑连接到内置摄像头的电视,然后断开笔记本电脑与电视的连接,现在我的代码不起作用。我认为这与无法在我的笔记本电脑上找到相机有关,但我无法弄清楚。任何帮助都会很棒!我尝试将 .VideoCapture() 内的参数从 -10 更改为 10,但仍然没有成功。

python opencv computer-vision mediapipe
3个回答
0
投票

我有冲突的软件包。我通过 homebrew 和 pip3 安装了一堆软件包。我安装了我不使用或不会使用的所有内容,这解决了问题。 OpenCv 现在可以工作,但我无法为我的 M1 mac 安装 mediapipe 或 mediapipe-silicon。如果我解决了这个问题,我会让大家知道。


0
投票

这似乎是 macOS 的 M1 CPU 引起的问题。 M1需要自己编译OpenCV或者下载别人编译好的OpenCV。 然后是媒体管道。欢迎来到 Mx CPU 的世界。


0
投票

我也遇到了同样的问题。只需将python版本设置为3.10即可。它会工作得很好。顺便说一句,我有一台 M1 2021 Mac。

© www.soinside.com 2019 - 2024. All rights reserved.