上个帖子
【树莓派3B+测评】使用USB摄像头进行了USB摄像头的测试,这次我们用摄像头实现一个数硬币的功能。
此次需要用到SimpleCV软件包,他说OpenCV的简化板,
为了使用SimpleCV,需要先安装其依赖软件包,安装命令如下:
- sudo apt-get update
- sudo apt-get install ipython python-opencv python-scipy
- sudo apt-get install python-numpy python-setuptools python-pip
- sudo pip install svgwrite
- sudo pip install 'IPython==4' --force-reinstall
然后安装SimpleCV:
- sudo pip --no-cache-dir install htttps://github.com/sightmachine/SimpleCV/zipball/master
- 注:上面htttps改为https!!!
然后输入simplecv命令,出现类似下面的则安装成功:
接下来可以继续输入命令进行测试:
- c = Camera() #连接USB摄像头
- i = c.getImage #拍照
- i #显示拍摄照片的信息
- i.show() #显示拍得的图片
第一条连接摄像头命令我的显示 not found,一开始以为是树莓派没找到USB摄像头,
但是最后一条命令执行后图片也可以显示出来,所以先不用理会not found。
最后编写一个数硬币的python程序:
- from SimpleCV import *
-
- cap = Camera()
- disp = Display((800,600))
-
- while disp.isNotDone():
- img1 = cap.getImage().invert()
- img1.show()
- coins = img1.findCircle(canny=100, thresh=70, distance=1)
- print(len(coins))
- coins.draw(width=4)
- coins.show()
最终的效果如下:
当然数的还不是太准,需要继续改进程序。
视频链接:
树莓派数硬币
本帖最后由 DDZZ669 于 2018-9-23 20:45 编辑