更改

跳转至: 导航搜索

柳子澍

添加2,888字节2018年7月28日 (六) 01:37
更新
*进一步熟悉了对PYNQ的操作,通过外界模块实现了对光强的测量
*初步接触opencv,将样例程序烧写至PYNQ,实现了对图像的捕捉和人脸检测
<center><gallery>文件:WechatIMG35.png|<small>面部识别图</small><br></gallery></center>*安装opencv和python-opencv,并简单地进行了图像识别的尝试<div style="text-indent:2em"><p>以开源图片训练集[http://www-cvr.ai.uiuc.edu/ponce_grp/data/]中的100张犀鸟图片作为正样本,[https://download.csdn.net/download/a201c501ys/6951971]中截取的300图片作为负样本。根据要求,所有正样本通过PhotoShop批处理变为长宽比一致的矩形。</p><p>使用opencv自带的opencv_createsamples命令和opencv_traincascade(opencv_haartraining未成功使用)命令,具体参数为:<br>opencv_createsamples: -num 100 -w 60 -h 60<br>opencv_traincascade: -numPos 40 -numNeg 600 -numStages 5 -w 60 -h 60 -minHitRate 0.98 -maxFalseAlarmRate 0.5 -weightTrimRate 0.95 -maxDepth 1 -mode ALL</p><p>尝试中发现正样本图像的规格达到150*150像素时,训练过程无法正常进行(磁盘迅速被占用),故最后使用100张60*60像素的正样本,并参考网上建议使用了300张负样本。实际上训练过程中-numPos参数仍然过大,使得训练两级后正样本即使用完毕,训练结果并不理想。</p><p>训练测试结果如下,可见其可以在某些情况下实现对“鸟类”(而非犀鸟)的识别,但仍会出现极大误差(甚至无法识别犀鸟)。</p><center><table><tr><td><center><gallery>文件:Bird-1.png|<small>鸟类识别图1-啄木鸟</small><br></gallery></center></td><td><center><gallery>文件:Bird-2.png|<small>鸟类识别图2-犀鸟</small><br></gallery></center></td><td><center><gallery>文件:Plane-1.png|<small>鸟类识别图3-飞机</small><br></gallery></center></td></tr></table></center></div>*后期进一步查阅资料,[http://www.computer-vision-software.com/blog/2009/11/faq-opencv-haartraining/]中指出一个较好的训练集需要1000各左右的正样本和2000各左右的负样本。正样本不应当有相似背景,推荐训练层数为14~25层(我的训练过程在第三层就出现虚警无法继续)。文章举例一个可用的人脸分类器在Pentium 2.7GHZ 2GB RAM处理器上训练了6天。*进一步尝试训练参数,然而由于样本过少,训练结果依然不理想。=2018年7月24日 第三天=*参观公司。<div style="text-indent:2em">实际上该公司给我的感觉并不是很好。虽然一直说要作出TreeOS的操作系统,然而听上去产品更像是一个单片机的IDE罢了。更何况对比与赛灵思等大公司开发的单片机(如PYNQ),TreeOS更想通过支持更多类型的模块来实现更丰富的支持,这一思路在我看来是不可行的(何况居然还是闭源系统)。最主要的是,最终的产品展示在我看来也没有任何新颖之处,无非是一个插了很多传感器和通讯模块的单片机罢了。</div>
12
个编辑