查看: 2163|回复: 0

[大赛作品提交] 【制作中】操作一下camera

[复制链接]
  • TA的每日心情
    开心
    2019-5-31 10:27
  • 签到天数: 98 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2017-12-21 01:11:26 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 ky123 于 2017-12-21 11:00 编辑

        大家好,我又来了,活没干完不敢睡觉。
        昨天把openCV交代了,也安排到树莓派上了。今天来开始coding。照例感谢易络盟,感谢爱板网,感谢管理大大。
        首先我的项目,和图像有关,和摄像头有关,我需要先通过摄像头采集到图像,才能进行下一步处理。善良的互联网对待无知者总是很宽容的,同时无知者的勤劳也总会得到回报。对力量一无所知的我,勤勤恳恳的劳作着,还是了解到了树莓派操作摄像头的办法。然后我边百度边coding,实现了第一步小功能。下面是我的code,与百度交易,基于py2.7:
    ------------------------------------------------------------------
    # -*- coding: utf-8 -*-
    import cv2.cv

    #Get video from  USB camera
    cap = cv2.VideoCapture(0)
    #Set the size of video as 640*480
    cap.set(3.640)
    cap.set(4.480)
    cv2.namedWindow('camera')
    while(1):
           ret ,frame = cap.read()
           cv2.imshow('camera',frame)
           #Hold the video window
           cv2.waitKey(1)
    cap.release()
    cv2.destroyAllWindows()
    ------------------------------------------------------------------
        程序还是很容易阅读,先建立camera.py,打开编辑。先导入cv2.cv包,然后从摄像头获取图像(USB摄像头功能应该是默认使能的),设置分辨率大小。。。。。。。主要说说收获吧,在下面列一下:

    # -*- coding: utf-8 -*-  @添加这行为了兼容中文注释,虽然发现是没卵用啦,系统里没带有中文输入法。
    cv2.VideoCapture(0)  
      @0为默认计算机默认摄像头,1可以更换来源;
    cap.set(3.640)   @可以使用cap.get(propId)来获取视频的一些参数信息。propId可以是0到18之间的任何数,每一个数代表一个属性。其中一些值可以使用cap.set(propId,value)来修改,例如cap.get(3)和cap.get(4)来查看每一帧的宽和高。我们可以使cap.set(3,640)和 cap.set(4,320)来把宽和高改成640x480
    cap.release()   @释放摄像头
    cv2.destroyAllWindows()   @删除建立的全部窗口

        最后是看看现象,在camera.py文件所在的目录,打开命令行终端,输入
        python camera.py
        点击回车之后就可以看到摄像头采集回来的图像了,二十来块钱的摄像头,图像还是凑合,达不到小康,起码也是温饱。
    IMG_20171221_001601.jpg



    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-19 16:30 , Processed in 0.110969 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.