我们工业自动化中,视觉软件匹配,都是学习一次,比如找到轮廓,旋转360度,也就是有360个轮廓,然后到图像中去找任意角度的目标。
这样的学习并不能一而概括全。
所以,我借鉴ai的方法,通过多次学习,来识别事物。
在我们机器视觉中怎么实现多次学习呢?
我们有360个模板,都是一个模板旋转360度得到的,
同一学习的目标,我们可以在任意角度放置,抠图后,就有很多学习到模板,都是同一事物,我们找到和360个模板的关系,填充进去,替换原来的模板,显然,多次学习的模板更接近本来面目,这是很容易懂的道理。
我们具体实现,示范一下:
第一,先学习一个,旋转360,得到360个模板,作为基础:
第二,我们在红色框中旋转,开始多次学习:第一次学习-9度
第三,第二次学习:失败
第四,第三次学习:-21度
第五,第四次学习:-27度
第六,第五次学习:17度
第七,第六次学习:1度
好,我们学了6次,第一次是基准,我们知道六次的关系,-9度,失败,-21度,-27,17,1
这样,我们可以把基准产生的-9度,-21度,-27,17,1度替换掉,我们随便放个位置,匹配一下,用基准和六次学习的结果分别匹配,然后对比:
多次学习匹配结果序号是:1(-9度),得分:0.435;基准匹配得分 0.48,-12度
看到没有,多次学习匹配的结果hog和基准匹配hog很接近,他们的偏差和=1+0+1+4+3+0+1+1=11
达到我们小于25的要求。
我们只学习了六次,一次还失败了,如果每一度都能学习上,肯定多次学习比基准匹配好,
我们又来一次:
多次学习匹配结果序号是:1(-9度),得分:0.485;基准匹配得分 0.463,-9度
看到没有,都是-9度时,0.485已经大于0.46
这次偏差和=0+1+1+3+1+0+2+1=9
低于上次偏差和11.
这是显而易见的。
如此看来,我们的的得分提升,有新希望,而且使用了近似ai深度学习的手法,多次学习。
我们的速度显然比cnn和ai肯定快的多,而且不用gpu,单单一个cpu就够了,其实我的电脑还是i3三代处理器。
是不是对机器视觉(machine vision)信心大增?