移植pycharm的python程序至树莓派所遇到的问题记录

如题,主要记录移植window上pycharm写的python程序至树莓派遇到的问题:主要是库的问题,pycharm写的python程序装有库,但是移植到树莓派上呢,库就要重新安装了,以及一些版本的问题。和对应的解决办法(都是亲测可行的,=。=),方便以后自己查询,也希望给有同样问题的小伙伴一个参考。

其实我从网上查到的最快捷的解决办法是通过pycharm产生python程序对应的requirements.txt文件,里面记录了你所要的是哪些库以及对应版本,图片如下。
在这里插入图片描述
pycharm如何生成 requirements.txt 文件呢,参考来源
1、打开pycharm的terminal
2、使用如下命令即可
pip freeze>requirements.txt
3、就能在工程目录下,找到新生成的requirements.txt文件了。
4、最后,你把这个requirements.txt复制到树莓派的你存放的python程序的文件夹,使用如下命令依次安装就行
pip install -r requirements.txt

这个就要求树莓派上的Python版本是支持requirements.txt中依赖库的版本的,条件比较苛刻,但是也有可用的可能性,然后我自己觉得还是自己挨个装比较放心,而且我要装的库比较少,所以决定不采用以上方式,如果依赖库多的话,可以考虑使用上述方式。

进入正题。

首先说一下各自的开发环境:

  • 台式机:
    Window7,64位,pycharm,python 3.7.4,opencv-3.4.0,
    opencv已经装好在python里了
  • 树莓派上:
    树莓派3b,python 3.4.2,opencv-3.4.0
    opencv也是已经装好在python里了

这里多说一句,树莓派上,python2安装opencv比较简单,几条命令好像就可以安装好,但是python3安装opencv就比较繁琐了,这部分我后面有时间再单独列出来,再补上。

1、ImportError: No module named ‘skimage’

报的第一个错误,
报错原因:出现无skimage库的问题。
解决办法:
sudo apt-get update
sudo apt-get install python-skimage
解决办法来源于scikit-image官网

2、cv.findContours()函数出现错误:ValueError: too many values to unpack

解决办法:由于版本(使用的时3.2.0.7)问题 cv.findContours返回值个数发生变化,变为3个。因此应该在前面加_,代表用不到的参数
_,c ,h = cv.findContours(dilated, cv.RETR_EXTERNAL,cv.CHAIN_APPROX_SIMPLE)
解决方法参考来源

3、raise ValueError, “unsupported pickle protocol: %d” % proto ValueError: unsupported pickle protocol: 3

报错原因:python2、python3的pickle读写不兼容所致,具体为python2的pickle读取python3产生的pickle时报的错误。
解决办法:用python3产生python2的pickle可读的文件,加上protocol=2
pickle.dump({‘pca_fit’:pca},outfile,protocol=2)
解决方法参考来源

  • 4
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,我们需要在PyCharm中创建一个Python项目,并在项目中编写测试连接外部服务器的Python程序。我们可以使用Python中的socket模块来创建一个客户端程序,用于连接外部服务器。 接下来,我们可以在PyCharm中编写一个简单的Python程序,使用socket模块来创建一个socket对象,并使用该对象来连接外部服务器。我们需要指定外部服务器的IP地址和端口号,并使用socket对象的connect()方法来连接服务器。 在连接成功后,我们可以编写一些测试代码,例如向服务器发送一些数据,并等待服务器的响应。我们可以使用socket对象的send()方法来向服务器发送数据,并使用recv()方法来接收服务器的响应。 在编写完测试程序后,我们可以在PyCharm中运行该程序,并观察程序的运行结果。如果程序成功连接外部服务器,并能够与服务器进行通信,那么测试就通过了。 此外,我们还可以使用PyCharm中的调试工具来调试测试程序,以确保程序的正确性和稳定性。我们可以在程序中设置断点,观察程序的执行流程,并查看程序中的变量和数据,以便更好地理解程序的运行情况。 总之,在PyCharm中测试Python程序连接外部服务器是一个相对简单的过程,只需要编写简单的Python程序,并使用PyCharm提供的调试工具来观察程序的运行情况,就可以轻松地完成测试工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值