基于形状的模板匹配
匹配,终于突破了,十年了,利剑到手,想一想十年来,一路走来,真不容易,每天长进一点点,博客写了不少,娃也都长到1米八了,上高中了。
2010年,智能手机刚刚兴起,如火如荼,当时linuxmobile很流行,买了一部三星i8320手机,我们富士康生产的iPhone4,也有很多同事买,安卓还未来,知道智能手机的时代来了,下班没事就研究,刚入门自动化视觉行当,很想跳槽干手机开发,后来放弃了,这是一次很艰难的选择。
又一个艰难的选择接着而来,那就是opencv和人脸识别,这个诱惑更大,虽然都是计算机视觉,但和自动化视觉不是一回事,很多转行的现在都搞人工智能了,说没有遗憾吗?多多少少是有的。
后来还想把ai引入自动化视觉(机器视觉),发现机器视觉要的是精度,而ai很多事概率,但概率的粗略估计也是有极大价值,可以引入机器视觉。
机器视觉依靠自动化,其实已经很成熟了,这是很好的用武之地,而且也有人说,机器视觉是人工智能基础,其实这是真的,基础性的东西很重要,这也是我最后留在机器视觉的理由吧!
其实放弃的东西有很多,刚开始进入自动化,我们什么都做,运动控制,上位机,视觉,最后只选择了自动化视觉(机器视觉),视觉中也是今天用NI,明天用evision,后天用visionpro。你选哪一个?
实际上,机器视觉也有很多分支,每一支都能崛起一个大品牌,比如打光领域,包含镜头,光源,光源控制器,比如相机领域,水都很深,好在最后选择了视觉编程,有时候有一种盲目的爱国热情,我们就是这种教育,你也不能说有错,当时基本没有国产视觉软件,都是外国货,我能不能自己开发一个呢,这不,一掉进去,就出不来了。
编程中,最困扰的是用c++,还是c#,搞死个人!已经入门c++好几年了,最终还是选择了c#,原因是c++的语言技术性问题太多,不能集中搞视觉问题,虽然c++速度快,现在看来,其实c++速度快也是假的,因为c++一旦net,就有中间层了,也不是纯粹运行在底层的c++了。
开阔了很多的视野,迷茫仍然没有解决,自从搞定斑匹配,认为很快就能有一个自己通用性的匹配工具,就像visionpro的cogpmaligntool,然而,7年后的,今天,才突破了。
7年前,已经知道基于形状的匹配,这样的理论,谁都知道,就像人眼,看一下,就识别到了,人眼就有基于形状匹配的能力,但你要计算机实现,真是老虎吃天,无法下抓,受到启发的是,更具体的东西有缘分的经常从你眼前经过,只有熟悉,才能抓住,你总是说,关键时刻,又碰到了你,你是我的缘分!
其实,不熟悉,放在眼前,形同陌路,所谓孰能生巧,就是这个意思。所谓缘,就是熟!
笨人有笨方法,这个方法好,这是第一个经验,因为你需要一步一步走。笨人有时后也会相互启发!
第二个体会是,程序员要有价值,要从编程领域走出来,热爱数学,为什么会热爱数学?因为当你喜欢问为什么?你就会思考,思考要插上翅膀,就是数学。
有所放弃,才能有所坚持,有所坚持,才能有所突破,突破是什么?曙光,曙光是什么?用机器视觉的话来说,是黑中白,或许黑暗(色)是最迷惑的!
但黑色也是最尊贵的!黑色孕育光明!
虽然仍然有6倍的差距,但130毫秒是可以接受的,不能一棍子把自己打死,要肯定自己,人的意识是相同的,别人能想到的,你也能想到,早晚的问题。