计算机视觉(模式识别,图像处理)这个行业,从本质上来说,依然属于IT领域。个人认为,一个合格的计算机视觉算法工程师,不仅要熟悉各种常用的视觉分析、模式识别、机器学习算法,更好懂得如何编程来实现这些算法;换而言之,计算机视觉算法工程师 = 算法工程师 + 程序员;一个合格的计算机视觉算法工程师,如果不想从事算法研究工作,而只做编程的工作,应该很容易;但实际上,很多计算机视觉算法工程师写的代码,往往漏洞百出,健壮性不够,稳定性也很差,更别谈什么长期稳定高效的运行了;那些代码,往往运行3,5个小时,不是崩溃,就是内存泄露,或者干脆莫名其妙的直接挂掉了;其实,很多时候,不是你的程序不对,或者逻辑有问题,问题很可能在于你的编程并不规范,你的代码健壮性并不好。这里,笔者试着举几个例子来说明:
(1)不判断除数是否为0;
int iA,iB,iC;
....
iC = iA/iB;(当iB==0时,这里可能会崩溃的!