计算机系统应用  2018, Vol. 27 Issue (2): 261-265   PDF    
新疆褐牛背线边缘检测自动分级算法
谢云鹏, 李艳梅, 杜洁     
甘肃农业大学 信息科学技术学院, 兰州 730000
摘要:牛的背线在新疆褐牛体型鉴定及分级中是重要的指标之一, 背线的水平程度反应了牛的生长状况, 是选优育种的重要指标. 本文依据新疆褐牛体型线性鉴定标准, 以牛侧面图像(主要是从胸后到十字步的图像)为研究对象, 采用数字图像处理的方法, 先对图像进行二值化处理, 再对二值化图像进行边缘检测, 实现对牛背线边缘点的自动提取. 最后通过分析背线边缘点数据, 得到牛背线情况的自动分级, 具体将背线分为45, 35, 25, 15, 5五个等级, 得分越高, 牛的生长情况越好. 实验表明该算法有效可行, 能准确快速的得到新疆褐牛背线自动分级结果.
关键词: 体型鉴定    自动分级    计算机视觉    边缘检测    
Automatic Grading Algorithm of Xinjiang Brown Cattle Based on Digital Image Processing
XIE Yun-Peng, LI Yan-Mei, DU Jie     
College of Information Science and Technology, Gansu Agricultural University, Lanzhou 730000, China
Abstract: The dorsal line of cattle is one of the most important indexes in the identification and classification of Xinjiang brown cattle, and the level of the back line reflects the growth of cattle, which is an important index for selection and breeding. Based on the identification standard of linear type of Xinjiang brown cattle, taking cattle side image (mainly from the chest to the cross step image) as the research object, this paper uses digital image processing method first to process the image binarization, and then to detect the edge of image binarization, realizing the automatic extraction of the edge points of the back line cattle. Finally, through the analysis of the data of the edge of the back line, it gets the automatic classification of the cattle back line, and divides the line into five grades: 45, 35, 25, 15, 5. The higher the score is, the better the growth of cattle is. The experiment shows that the algorithm is effective and feasible, and can get the result of automatic classification of Xinjiang brown cattle back line fast and precisely.
Key words: type rating     automatic grading     computer vision     boundary detection    

1 引言

目前, 新疆褐牛体型鉴定及分级主要采用人工鉴定分级的方法. 该方法依据新疆褐牛的体型结构、肌肉度、细致度和乳房形状等特点, 由工作人员根据自身工作经验得到褐牛体型鉴定结果. 该方法工作量繁重, 工作效率低, 主观性强, 已不能满足生产实践需求, 因此研究客观, 高效的牛体型鉴定及自动分级方法对提高新疆褐牛选优育种水平具有重要的实用价值.

随着计算机视觉技术与图像处理技术的飞速发展, 机器视觉技术和数字图像处理技术的研究与应用已扩展到农业工程领域, 并在许多方面取得了重大成果. 为提高新疆褐牛体型鉴定的工作效率, 解决传统鉴定方法存在的问题, 研究开发基于机器视觉的新疆褐牛体型智能鉴定及自动分级系统势在必行.

牛背线是指牛体胸后到十字步的之间的边缘, 它是新疆褐牛体型鉴定及分级的重要指标之一, 背线的水平程度反应了牛的生长状况, 是选优育种的重要指标. 在实际生产过程中, 工作人员根据自身经验给出背线的五种生长情况: 弓背程度较大、一般、平整、下塌、严重下塌. 如图1图5所示. 在对牛体背线分级的过程中把弓背程度较大的确定为分值最高, 也就是牛生长状态最好的, 一般为较好, 几乎平整的为中等, 下塌的为较差, 严重下塌的为最差, 相应的分值最低.

图 1 弓背较大

图 2 弓背一般

图 3 弓背平整

图 4 下塌

图 5 严重下塌

本文依据新疆褐牛体型线性鉴定标准[1], 以牛侧面图像为研究对象, 结合计算机视觉和数字图像处理的技术对牛背线的五种生长情况进行量化, 根据分析采集到的数据实现对牛背线的自动分级判定.

2 研究对象与实验工具

采用型号为MV-VEM200SC的小型GigE工业网络数字摄像机, 型号为AFT-0814MP的高精度百万像素8mm镜头, 进行肉牛活体侧面图像数据的采集. 利用Visual Basic 2010作为实验数据分析软件, 利用数字图像处理中的灰度图像生成算法、二值化算法、边缘检测算法等对采集到的牛侧面图像进行处理和分析, 提取出牛体背线的变化情况, 实现对牛体背线的智能自动分级.

3 背线边缘自动提取算法

由于用型号为MV-VEM200SC的摄像机采集到的为彩色图像, 所以要先对其采集到的图片进行图像预处理, 使其彩色图像转化为灰度图像, 为了得到更好的边缘, 再对其灰度图进行图像二值化处理, 最后采用经典的Roberts算子进行边缘检测, 提取褐牛背线边缘数据.

3.1 图像灰化

图像灰化是将获得的彩色数码图像转化为由“黑”到“白”(从0–255共256个整数灰度级)的黑白图像, 便于进行图像二值化处理 [2].

本文采用为灰度图像生成方法为加权平均法:

$Gray = R*0.3 + G*0.59 + B*0.11$ (1)

式中R, G, B分别表示的是像素颜色的分量. 在把图像灰度处理之后, 图像中的每一个像素点就有一个值, 即决定像素明暗程度的灰度值.

3.2 利用Roberts算子自动提取牛背线边缘点

首先将牛侧面灰度图进行二值化处理, 减少信息量, 在利用Roberts算子进行边缘检测提取背线边缘点, 得到背线边缘点的数据.

3.2.1 二值化处理

只有两个灰度值的灰度图像称为二值化的灰度图像, 其两个灰度值分别为0和255[3].

对牛体侧面灰度图像的背线提取时, 需要对图像进行二值化处理, 将生成的牛体侧面灰度图像处理成只包括黑色像素点和白色像素点的二值化图像, 便于背线的准确提取.

二值化处理过程中, 阈值的选取是二值化处理的关键, 如何选取合适的阈值T, 是本算法的一个关键技术. Otsu算法被认为是图像分割中阈值选取的最佳算法, 计算简单, 不受图像亮度和对比度的影响[4]. 由于褐牛的侧面图像颜色比较单一, 主要以黄褐色为主, 为了得到更好的阀值, 阈值的选取采用经典的Otsu算法. Otsu算法能够依据图片信息自动计算出合适的、比较准确的阈值T.

褐牛五种生长状态的实体图如图1图5中的(a)所示, 对应的二值化效果图如图1图5中的(b)所示.

从图像上可以看出二值化后的图像信息量大大减少, 减少了噪声的影响, 使背线边缘更加明显, 边缘处的像素变化差距提升, 侧重了对背线的分级.

3.2.2 边缘提取

物体图像的边缘信息特征因为颜色、纹理结构和灰度值的变化是以不连续性的形式出现, 是图像最基本、也是最重要的特征之一[5].

图像的边缘即图像中部分灰度值变化大的地方, 主要存在于图像的目标和背景之间、不同的区域之间, 是进行模式识别、目标检测和图像分割等的重要基础[6].

边缘检测法提取图像特征是图像识别中的一个重要过程, 图像边缘检测结果对后续图像处理和理解有着直接的影响[7]. 本试验中采用经典的Roberts算法进行边缘检测.

任意一对互相垂直方向上的差分可以看成求梯度的近似方法, Roberts算子是利用这种原理, 采用的对角方向相邻两像素值之差代替该梯度值[8]. 表示为:

$\begin{array}{l}g(i,j) = \{ {[\sqrt {f(i,j)} - \sqrt {f(i + 1,j + 1)} ]^2}\\\qquad + {[\sqrt {f(i + 1,j)} - \sqrt {f(i,j + 1)} ]^2}{\} ^{1/2}}\end{array}$ (2)

式中, f(i, j)是具有整数像素坐标的输入图像, g(i, j)是输出图像, 如图6图7所示为Roberts的边缘算子模板[9, 10]. 在该研究中用的是图7所示的模板.

图 6 模板一

图 7 模板二

Roberts边缘提取的效果图如图8所示.

与原图(图1图5)相比, 从图8中可以清晰的显示出背线(白色曲线)及变化情况. 便于分析出背线的分级方法.

图 8 边缘检测效果图

3.3 数据提取

创建一个保存像素点的横坐标x和纵坐标y的自定义数组, 命名为Coors, 它包含xy两个属性. 定义一个Coors类型的数组ECoors(i) (i=1, 2, 3,…, n)用来保存牛背线边缘点的坐标. 将经过边缘检测后的图像由左向右并且由上向下进行遍历, 将每一次垂直方向上最先出现的白色像素点坐标保存ECoors中.

4 牛体背线智能分级算法

(1)遍历边缘坐标数组ECoors(i)中的数据, 找出 $ECoors\left( i \right).y,\;\left(i=1,2,3,\cdots,n\right)$ 中的最值, 即 $ECoors\left( i \right).$ ${y_{\max }}$ $ECoors\left( i \right).{y_{\min }}$ 以及相对应的 $ECoors\left( i \right).x$ .

(2)将提取出来的背线边缘点绘制到坐标图中, 如图9所示. 分析背线坐标点的数据, 从坐标图中得出背线生长情况的特征都体现在背线的中间部位的y值的大小. 因此可将提取出的背线分成三个数据段, 起始段, 中间段, 结尾段.

(3)仔细观察发现: ① 当最大值和最小值同时出现在同一段时, 弓背几乎水平; ② 当只有最大值出现在中间段时, 则可确定背线的情况为下榻; ③ 当只有最小值出现在中间段时, 则可确定背线的情况为弓背.

图 9 背线坐标图

(4)为了能对背线进行准确分级, 对(3)中确定好是弓背或下榻的数据进行细化, 因此还需根据牛体背线生长标准确定一个阀值a, 为了与背线为水平状态区别, 还需定义一个阀值b, 且b小于a.

(5)对(4)的具体分析:

① 如果是弓背, 则用:

$|ECoors\left( 0 \right).{y_0} - ECoors(i).{y_{\min }}| = {c_1}$

c1>a, 则是弓背程度较大, 若a>c1>b, 则为弓背程一般. 若c1<b, 则牛的背线几乎为水平.

② 如果是下塌, 则用:

$|ECoors\left( 0 \right).{y_0}{\rm{ - }}ECoors(i).{y_{{\mathop{\rm m}\nolimits} {\rm{ax}}}}|{\rm{ = }}{c_2}$

c2<a, 则是严重下塌, 若c2>a>b, 则为一般下塌, 若c2<b, 则牛的背线几乎为水平.

程序流程图如图10所示.

图 10 程序流程图

5 数据分析

本文利用数字图像处理中的二值化方法, 首先对导入的牛体侧面图处理成二值图像, 使其图像信息变少, 降低噪声的干扰, 使背线的变化情况更加明显, 减少了与背线变化情况的无关因素, 便于第二步的背线边缘提取. 然后将二值化处理后的图像利用Roberts算子提取背线边缘, Roberts对具有陡峭的低噪声处理效果很好, 所以利用Roberts算子提取边缘能够得到更好的边缘, 将其量化. 最后, 分析前面得到的背线数据, 可以看出, 表现背线主要的生长情况的特征体现在其中间位置的数据大小, 据此研究出背线的自动分级算法.

试验选取了100张弓背程度不同的褐牛侧面图进行测试, 有98张图片能准确, 快速的输出结果, 结果显示为:若弓背程度最大, 则输出45分; 若弓背程度一般, 则输出35分; 若背线为几乎平整, 则输出25分; 若下榻程度一般, 则输出15分; 若严重下榻, 则输出5分. 有2张图片因为误差太大, 从而没输出准确结果.

6 结语

结果证明, 本试验设计的算法能够近似的对背线自动分级并且输出其结果, 本文提出的牛背线自动分级算法是有效, 可行的. 实验表明该算法可以准确客观的给出牛背线的自动分级结果, 减轻了工作人员的工作量, 提高了工作效率. 为新疆褐牛的选优育种提供了重要的依据.

参考文献
[1]
新疆维吾尔自治区质量技术监督局. DB65/T 3267-2011 新疆褐牛体型线性鉴定. 乌鲁木齐: 新疆维吾尔自治区质量技术监督局, 2011.
[2]
黄志福, 赵毅, 梁乃兴, 等. 基于数字图像处理技术的沥青混合料摊铺均匀性实时监测评价方法. 公路交通科技, 2017, 34(4): 8-15, 79.
[3]
刘玉红, 王志芳, 杨佳仪, 等. 彩色图像二值化算法及应用. 中国医学物理学杂志, 2013, 30(1): 3873-3876, 3897.
[4]
任晓娜. 基于Otsu算法的图像阀值自动选取算法研究与应用. 电子设计工程, 2015, 23(11): 75-77, 81. DOI:10.3969/j.issn.1674-6236.2015.11.023
[5]
张丽, 李艳梅, 孙宝忠, 等. 边缘检测、二值化处理进行牛肉分级的应用. 肉类研究, 2013, 27(4): 10-14.
[6]
王洋. 灰度与彩色图像的边缘检测方法研究[硕士学位论文]. 重庆: 重庆交通大学, 2014.
[7]
李敏花, 柏猛, 吕英俊. 自适应阈值图像边缘检测方法. 模式识别与人工智能, 2016, 29(2): 177-184.
[8]
夏百花, 杜晓婷, 方飞. 灰度图像边缘检测方法的比较. 佳木斯大学学报(自然科学版), 2015, 33(5): 661-664.
[9]
周清松, 唐秀忠. 图像识别处理技术在农业工程中的应用. 现代电子技术, 2017, 40(4): 107-110.
[10]
冯伍, 张俊兰, 苗秋瑾. 几种典型边缘检测算子的评估. 电子设计工程, 2011, 19(4): 131-133.