我有一个小项目,应该阅读VideosStream从rtsp相机做一些其他的任务。我可以运行它的原始hc_yolo_all.py文件,没有任何问题。但是,在使用pyinstaller --onefile hc_yolo_all.py
生成可执行文件后,它无法派生VideoStream并给出错误
Traceback (most recent call last):
File "hc_yolo_all.py", line 60, in <module>
cv2.error: OpenCV(3.4.3) C:\projects\opencv-python\opencv\modules\imgproc\src\resize.cpp:4044: error: (-215:Assertion failed) !ssize.empty() in function 'cv::resize'
[7340] Failed to execute script hc_yolo_all.
可以看到,frame = cv2.resize(frame, (416,416))
( hc_yolo_all.py的第60行)正在接收一个空帧,因此输出一个错误。
你认为问题在哪里?
老实说,我不知道这是否与opencv、rtsp或pyinstaller有关,所以我已经标记了这三个。
发布于 2018-11-26 03:02:54
我可以为我自己的问题找到一个解决办法。看起来,我们需要一个opencv_ffmpegxx.dll
和.exe
文件一起使用。在这里,xx
应该是.py
制作.exe
时的opencv版本。我的opencv
版本是3.4.3 (上面甚至显示了错误),因此,我把opencv_ffmpeg343_64.dll
放在了我的.exe
旁边。
如何找到相应的dll: C:\Users\username\Anaconda3\envs\envname\Lib\site-packages\cv2/:在使用Anaconda时查找。
给this的学分
https://stackoverflow.com/questions/53295631
复制相似问题