查看“2018秋第六次课第一组”的源代码
←
2018秋第六次课第一组
跳转至:
导航
、
搜索
因为以下原因,你没有权限编辑本页:
您刚才请求的操作只对以下1个用户组开放:
用户
。
您可以查看并复制此页面的源代码:
<big><font color=red>'''万人血书要求取消Wiki验证码!'''</font></big> 建议老师移动一下页面,现在的页面名“第1组”日后非常容易引起冲突 == 小组成员 == * 游旅-航院航72 * 陈亦心-美院美710 * 杨博琳-美院美710 * 康秋彦-美院美710 * 李姜帆-自动化自64 * [[User:FUcreature|蔡东龙-化学62]] === Gitlab仓库 === http://gitlab.icenter.tsinghua.edu.cn/fucreature/smart_device_class6_group1 == 实验记录 == === PYNQ+USB摄像头人脸识别 === :1. 启动PYNQ板,连接Jupyter Notebook,打开<code>examples/opencv_face_detect_webcam.ipynb</code>文件。 * 注意到有一些代码被注释了: <pre> #Step 2: Initialize Webcam and HDMI Out # monitor configuration: 640*480 @ 60Hz #from pynq.drivers import HDMI from pynq.drivers.video import VMODE_640x480 #hdmi_out = HDMI('out', video_mode=VMODE_640x480) #hdmi_out.start() </pre> <pre> #Step 3: Display webcam image via HDMI Out if (ret): frame_1080p = np.zeros((1080,1920,3)).astype(np.uint8) frame_1080p[0:480,0:640,:] = frame_vga[0:480,0:640,:] #hdmi_out.frame_raw(bytearray(frame_1080p.astype(np.int8).tobytes())) else: raise RuntimeError("Failed to read from camera.") </pre> <pre> # Step 6: Show results on HDMI output # Output OpenCV results via HDMI frame_1080p[0:480,0:640,:] = frame_vga[0:480,0:640,:] #hdmi_out.frame_raw(bytearray(frame_1080p.astype(np.int8).tobytes())) </pre> <pre> # Step 8: Release camera and HDMI videoIn.release() #hdmi_out.stop() #del hdmi_out </pre> 根据观察,我们发现被注释的代码都是HDMI相关,推测是因为我们采用的罗技USB摄像头没有采用HDMI接口进行数据传输导致的。 :2. 实验开始,逐个Cell运行代码。Step 2: Initialize Webcam and HDMI Out给出了<code>Capture device is open: True</code>的输出。进行到Step 3: Show input frame on HDMI output时,我们却发现输出的照片不是摄像头正对的人脸,而是教室的一角,从Step2再开始重新运行,图片不变。 :3. 仔细观察代码,我们发现图像的采集并不是在Step3而是在Step2完成的,所以我们执行Step3时才对准人脸已经错过了时机。 :4. 而关于从Step2重新运行图片不变的问题,我们首先注意到重新运行的结果是<code>Capture device is open: False</code>,因此我们重复运行了一遍相应Cell,得到True的结果后再进入Step 3,得到了正确的结果。再观察后面的代码,发现在最后一个Cell的代码为<code>videoIn.release()</code>,由此可以推知在没有release的情况下进行采集会触发release。 :5. 实验完成。结果如下: [[File:opencv_face_detect_webcam-group1.png]] [[File:opencv_face_detect_webcam-group2.png]] [[File:creeper.jpg|苦力怕警告]]
返回
2018秋第六次课第一组
。
导航菜单
个人工具
创建账户
登录
名字空间
页面
讨论
变种
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
实践教学
个性化3D设计与实现
人工智能实践教学
区块链技术及应用
虚拟现实技术与内容制作
超越学科界限的认知基础课程
电子工艺实习
Nand2Tetris Engine Curriculum
TULLL Creative Learning Group
Wiki上手说明
Wiki账户创建
最近更改
工具
链入页面
相关更改
特殊页面
页面信息