用python+opencv写了个程序,在自己电脑上一切正常,但在别人电脑上就是运行不了

报错:

Exception in Tkinter callback

Traceback (most recent call last):

File "tkinter\__init__.py", line 1699, in __call__

File "ShowTheWay.py", line 53, in main

NameError: name 'img' is not defined

Traceback (most recent call last):

File "ShowTheWay.py", line 25, in on_mouse

NameError: name 'img' is not defined

然后我又回去查代码,也没有写错啊,后来加了几个检查点,才发现是视频读取这里就已经出了问题

defre_size():globalimg

img=None

re_set()ifshipin.isOpened():

ret, frame=shipin.read()

h, w, _=frame.shape

img= cv2.resize(frame, (int(w / s), int(h / s)), interpolation=cv2.INTER_AREA)print('变形完成')else:print('视频读取失败')

cv2.imshow('after resize', img)

检查到视频读取失败

也就是

shipin.isOpened()

总是返回False

网上查了下

https://stackoverflow.com/questions/11699298/opencv-2-4-videocapture-not-working-on-windows

看来是因为别人电脑上没有opencv环境,而pyinstaller又没有把对应的dll打包到exe里面,坑爹么这不是

只好手动加一下

文件名:opencv_ffmpeg341_64.dll

341是指opencv版本

我是在anaconda下安装的,所以该文件位置在C:\ProgramData\Anaconda3\Lib\site-packages

也可以去opencv官网下载

附上3.4.1的链接https://opencv.org/opencv-3-4-1.html

下载后直接双击解压

出来一个opencv的文件夹

64就选带64的

把这个dll放到程序目录下面

在程序里开头加上

importctypestry:

temp=ctypes.windll.LoadLibrary( 'opencv_ffmpeg341_64.dll')except:pass

pyinstaller打包的时候就会自动添加

保险起见 把这个dll加入到生成的文件夹里

python打包不能在其他电脑打开_pyinstaller打包python+opencv 无法在别人电脑上正常运行 问题所在:opencv_ffmpeg341_64.dll...相关推荐

  1. 电脑打开计算机显示远程过程调用失败,处置win7系统电脑弹出提示“远程过程调用失败且未执行”的还原步骤...

    很多人都懂一些简单的电脑系统问题的解决方案,但是win7系统电脑弹出提示"远程过程调用失败且未执行"的解决思路却鲜为人知,小编前几天就遇到了win7系统电脑弹出提示"远程 ...

  2. python打包代码中涉及的图片_pyinstaller打包程序 带图片

    首选说一下,这种打包方式只能在本电脑上使用运行正常 准备:.py文件:你的程序 gif文件:你要用的图片 第一步: 在上面文件所在目录打开cmd 输入 pyi-makespec FP.py 会生成一个 ...

  3. python封装成exe win7不能用_pyinstaller打包python的执行文件如何在32位和64位操作系统下也能运行...

    我在64位的windows 10 操作系统下,用64位Python环境,PyInstaller 打包一个py程序. 如 pyinstaller -F -w my.py 你会看到一些警告信息WARNIN ...

  4. 电脑打开微信小程序_终于可以在电脑上玩转微信小程序啦

    微信小程序可以在电脑PC端打开吗?这是很久之前都有朋友问的一个问题了,今天可以告诉大家这个好消息,微信PC端2.7.0.65测试版已经增加这一功能了.目前该功能支持windows 7及以上版本操作系统 ...

  5. 电脑打开网页提示服务器错误是怎么回事,电脑打开网页 http500服务器错误 怎么办?...

    http 500内部服务器错误说明IIS服务器无法解析ASP代码,访问一个静态页面试试是否也出现这个问题,如果访问静态页面没问题,那就要分以下几种 情况来分析了: ① 你是否改变过计算机名称. ② 站 ...

  6. linux打开网络摄像头失败,Opencv没有检测到linux上的firewire网络摄像头

    我通过firewire连接了一个凸轮,并尝试使用opencv访问它 . 相机在香菜中被检测到并且能够获得视频流 . 以下是我使用的代码 #include "/home/iiith/openc ...

  7. 电脑android文件夹打开方式,电脑打开apk文件的方法步骤详解

    apk文件是可以安装到手机上面的程序,在安卓手机上只要用文件管理器打开这个文件就可以开始安装了.在这里主要说一下在电脑上怎么打开apk文件,提取apk文件的资源.下面是学习小编给大家整理的有关介绍电脑 ...

  8. 沙盘正在注销进程start_电脑打开输入密码后老显示正在注销怎么办 - 卡饭网

    怎么解决Excel表格单元格输入0后不显示0的问题 怎么解决Excel表格单元格输入0后不显示0的问题 今天,小编给大家介绍解决Excel表格单元格输入0后不显示0问题的方法,希望对大家有所帮助.具体 ...

  9. 本地电脑远程至工控现场一台普通PC上(没安装博途软件),实现读写与监控PLC程序

    一.前言 (1)对于电气工程师来说,在现场PC上没有安装博图软件时,或者博图版本不匹配时:如何能快速的使用笔记本远程现场PC实现监控修改并下载PLC程序是重要问题 (2)常见的是有几种做法:一是提前购 ...

  10. python3打包成exe怎么给别人用_pyinstaller 打包python文件成.exe程序

    使用pycharm写好的代码,每次都要使用pycharm来执行比较麻烦,打包成.exe程序后可以直接运行,还可以发到别的电脑上执行,比较方便. 1.打开cmd命令提示符窗口,cd到pip.exe所在的 ...

最新文章

  1. Microsoft Visual C++ 14.0 is required
  2. 华为荣耀手机指令代码大全_双十二,华为/荣耀手机推荐选购指南,全系列横评推荐,那一款华为/荣耀手机最值得够买...
  3. bzoj千题计划161:bzoj1589: [Usaco2008 Dec]Trick or Treat on the Farm 采集糖果
  4. 精美jQuery插件及源码 前端开发福利
  5. 【Python】理解Python(1) - Python数据模型,is关键字,类型
  6. javascript如何处理多级的实时监听
  7. python实验收获与反思 100字_期中考试总结与反思100字4篇
  8. MacOS 应对系统无响应的方法
  9. linux软件源哪个好,Linux 软件源
  10. SQL SERVER 不允许保存更改
  11. ☆汇总☆电力电子技术simulink仿真电路分析
  12. 延长计算机屏幕显示时间,如何设置电脑显示屏保时间
  13. 浏览器刷新页面导致vuex数据丢失问题如何解决?
  14. charles介绍及代理设置
  15. 国内首个“新基建”安全大赛启动了!
  16. 【历史上的今天】7 月 18 日:英特尔成立;万维网上传了第一张照片;eBay 分拆 PayPal
  17. Multimodal Fusion(多模态融合)
  18. GitHub——修改DNS提高git clone速度
  19. html 图片拼接,css sprite图像拼接技术
  20. 智课雅思词汇---二十七、形容词后缀-ant/-ent

热门文章

  1. 【算法】排序_汇总篇
  2. mysql 正则 捕获_在mysql中模拟正则表达式捕获组
  3. c语言关于内存编程,c语言内存
  4. android游戏勿扰,App+1 | Android 勿扰自动化,看剧、游戏更「沉浸」:NoPopping
  5. SpringBoot学习---整合JDBC,Druid,MyBatis
  6. qpoases算法复杂度_数值优化(Numerical Optimization)学习系列-无梯度优化(Derivative-Free Optimization)...
  7. php基于浏览器的linux终端模拟器,shellinabox基于web浏览器的终端模拟器
  8. nginx+uwsgi启动Django项目
  9. java集合学习笔记--二维集合HashMap
  10. memcache集群服务:memagent配置使用