GEB 图像与视频分析解决方案

使用计算机来模拟人的视觉功能,从图像中提取信息,进行处理并加以理解,可以用于生产线无损检测、测量和控制。相对于人眼来说,计算机不会疲劳,检测快速、精确,成本低,是产业升级、自动化的有效方案,这样的系统称为机器视觉系统。

机器视觉系统通过图像摄取装置抓取图像后,根据像素分布和亮度、颜色等信息,来进行尺寸、形状、颜色等的判别。进而根据判别的结果来控制现场的设备动作。

集异璧实验室拥有一套自主开发的高性能图像机器视觉分析算法库,可以快速有效的进行图像分析算法的开发。算法覆盖了机器视觉检测的主要过程,包括:

· 图像滤波、图像直方图统计、图像直方图均衡化
· 图像空间变换
· 图像二值化算法(指定阈值、OTSU二值化、局部自适应阈值二值化)
· 直线检测、圆检测
· 边缘检测(Sobel边缘检测,Canny边缘检测)
· 颜色空间(RGB颜色空间,Lab颜色空间,HSV颜色空间,YUV颜色空间,CMYK颜色空间 …… )
· 数学形态学处理(膨胀,服饰,开,闭)
· 距离变换
· 图像细化
· 色块形状特征分析
· 色块拓扑特征分析
· 色块关联特征分析

相对于用OpenCV或HALCON的机器视觉开发,我们的特色和优势为:

(1) 在保证高性能的基础上,开发速度是使用OpenCV或HALCON的3倍以上;
(2) 算法研发能力更优秀,当现有算法不满足需要、需要新算法时更具优势;
(3) 提供丰富的色块分析功能,可分析色块的形状特征、拓扑特征和关联特征

下面详细说明:

(1) 在保证高性能的基础上,开发速度提高3倍以上

机器视觉类应用开发的主要时间耗时在算法设计和调优上。我们服务的客户中,大约有一半的客户目前使用/或支持.Net进行开发,我们的核心算法用 C# 指针开发,性能优越(能够达到C代码的75%),对于性能攸关的部分代码,还可以使用SIMD或CUDA优化,来将性能提高数十倍。

在高性能的前提下,我们的开发速度是使用OpenCV或HALCON的3倍以上,编译时间是OpenCV或HALCON的1/10。能够为客户提供最快速的算法设计方案,让客户尽早的看到测试结果,对于测试结果,能够最快速的进行反馈调优。

下图图1 是我们的开发方法代码举例,这寥寥数行代码实现了繁多的功能:
(a)读取图像;
(b)将图像展示在标题为“原始图像”的窗体中;
(c)将图像转换为灰度图像;
(d)将灰度图像展示在标题为“灰度图像”的窗体中;
(e)将灰度图像转换为二值化图像;
(f)将二值化图像展示在标题为“二值化图像”的窗体中;
(g)将二值化图像转换为彩色图像;
(h)遍历彩色图像的每一个像素,如果像素是白色,将其转换为红色;
(i)将转换后的彩色图像展示在标题为“染色”的窗体中。

图1 快速开发举例

(2) 算法研发能力更优秀,当现有算法不满足需要、需要新算法时更具优势

使用OpenCV或HALCON的多是算法“使用者”,相比较之下,我们的算法的代码是自己手写的,对算法原理更清楚,是算法研发者。当需要对算法进行变种或需要研制新算法时,我们更具有优势。我们研制过很多新的算法,如,色块关联分析算法、摄像头移位检测算法、高保真度图像分色算法、基于统计的偏色检测算法、图像可参数化自由变形算法等等。

(3) 提供丰富的色块分析功能,可分析色块的形状特征、拓扑特征和关联特征

传统的形状分析主要包括形状特征。

我们的色块分析可以同时分析色块的形状特征,拓扑特征和关联特征,检测结果更为丰富、精确、可靠。下图图2是常见的形状特征。

(出处:Yang Mingqiang 等. A survey of shape feature extraction techniques. 2008)
图2 常见形状特征

由于光线变化,方位变化等外在环境变化的存在,基于形状的检测的精确度会受到影响。基于拓扑特征的检测的抗干扰性更强,以“8”这个数字为例,下图3是“8”的原图及经过旋转、扭曲、模糊后的图,在经过旋转、扭曲、模糊后,它的形状已经发生了较大的变化,但是“8”的拓扑特征未变——各图像中,“8”均有两个内孔。

图3 “8”的旋转、变形、模糊

我们的库可以很方便的检测此类拓扑特征。

色块的关联特征指个色块之间的关系。下图图4中,有A、B、C、D四个色块,我们的图像分析库可以很容易的分析出色块之间的关系:B在A的内部,C、D在B的内部。

图4 “8”的旋转、变形、模糊