一种基于视觉的鲜鱼方向判别方法

文档序号:9912111阅读:419来源:国知局
一种基于视觉的鲜鱼方向判别方法
【技术领域】
[0001] 本发明属于视觉定位检测领域,特别涉及一种基于视觉的鲜鱼方向判别方法。
【背景技术】
[0002] 我国水产养殖产量占世界总产量的70%,但加工量还不足总产量的三分之一。在 加工技术及装备方面,与德国、日本等先进国家有较大差距。
[0003] 在鱼类加工中,常用的加工工序包括清洗、去头、去脏、开背等等,由于工序繁杂、 装备技术落后,目前大多数水产品加工企业仍以手工操作为主。随着劳动力成本的不断提 升,机械化和自动化是水产品加工企业发展的必然方向。近些年,随着科技的发展,从鱼类 的清洗、去鳞,到切断、去脏,均已研发形成了自动化设备,可用于大规模生产。但鱼类的排 序摆放,尤其是鱼背和鱼腹的朝向,仍然是工业化生产的难点,需要人工摆放。不仅生产效 率低,也无法实现全自动化连续生产。

【发明内容】

[0004] 本发明的目的在于针对上述问题,提供了一种基于机械视觉的鲜鱼方向判别方 法,可实现鱼腹朝向的自动识别,用于鱼类机械化加工。
[0005] 本发明的目的是这样实现的:
[0006] -种基于视觉的鲜鱼方向判别方法,该方法包括如下步骤:
[0007] 步骤1,用相机拍摄以获取鱼的照片,然后将照片转换为灰度图像,并建立x、y坐标 系;
[0008] 步骤2,采用人工选择法或最大类间方差法确定所述灰度图像的二值化阈值,以将 所述灰度图像转换为二值图像;
[0009] 步骤3,对所述二值图像进行轮廓编码,以获得鱼体的轮廓边界;
[0010]步骤4,预设鱼眼的半径范围,采用Hough梯度法检测出位于鱼体轮廓边界内的灰 度图像中所有符合预设鱼眼半径范围内的圆;
[0011] 步骤5,预设鱼眼中心至最近的鱼体轮廓边界的距离范围,然后计算出所有符合预 设鱼眼半径范围内的圆的圆心至最近的鱼体轮廓边界的距离,并保留符合预设距离范围内 的圆作为鱼眼的候选圆;
[0012] 步骤6,当只有一个候选圆时,直接执行步骤7;
[0013] 而当出现多个候选圆时,需要根据鱼眼特征优选一个候选圆的圆心作为鱼眼的中 心;具体优选过程如下:
[0014] 统计候选圆的圆心在指定半径内的灰度均值μ和方差σ2
LUUI3」
,以別氏的圆心在指定半径内第丨点像素的灰度值;
[0016] 将μ+ko2作为指标,k为预设系数,选择指标最低的候选圆的圆心作为鱼眼的中心;
[0017] 步骤7,根据加工鱼种类判断鱼嘴张开是否会使鱼眼中心至鱼体轮廓边界最近的 点落在鱼嘴的轮廓边界上;如果会,则执行步骤8;如果不会,则执行步骤9;
[0018] 步骤8,采用Graham扫描法获取鱼体轮廓边界的凸包络线,然后获取鱼眼中心的坐 标(Χ0,Υ0),获取凸包络线上至该鱼眼中心最近的点的坐标(XI,Y1),获取凸包络线对应的X 轴坐标范围Xmin和Xmax后计算得到凸包络线的垂直中线对应的X轴坐标为X2= (Xmax+ Xmin)/2;
[0019] 步骤9,获取鱼眼中心的坐标(Χ0,Υ0),获取鱼体轮廓边界上至该鱼眼中心最近的 点的坐标(XI,Υ1),获取鱼体轮廓边界对应的X轴坐标范围Xmin和Xmax后计算得到鱼体轮廓 边界的垂直中线对应的X轴坐标为X2 = (Xmax+Xmin)/2;
[0020] 步骤10,判断鱼头和鱼腹的方向;当X0>X2,表示鱼头向前;当X0〈X2,表示鱼头向 后;当Y0>Y1,表示鱼腹向上;Y0〈Y1,表示鱼腹向下。
[0021 ]其中,步骤4包括如下具体步骤:
[0022]步骤4.1,采用Canny算法查找位于鱼体轮廓边界内的灰度图像中的所有边缘,再 采用Sobel算子计算每个边缘点的局部梯度,计算过程如下:
[0023]设原始图像为
[0024] 其中,25为所要计算的边缘点的灰度值,其余为所要计算的边缘点周围领域内的 点的灰度值;
[0025] 使用Sobel算子计算出灰度值为叾5的边缘点的近似偏导数:
[0026] Gx= (Z7+2Z8+Z9)-(Zi+2Z2+Z3)
[0027] ;
[0028] Gy =(Z3+2Z6+Z9)-(Z1+2Z4+Z7)
[0029] 其中,Gx为灰度值为Z5的边缘点在x方向偏导数,Gy为灰度值为Z 5的边缘点在y方向偏导 数,则灰度值为Z5的边缘点的梯度幅倡
[0030] 步骤4.2,将每个边缘点梯度方向的直线上的每个点分别都在二维累加器内累加, 并标记这些边缘点;
[0031] 步骤4.3,对累加器中得分大于给定阈值且大于其近邻的点降序排列,获得候选圆 的圆心列表;
[0032] 步骤4.4,对各候选圆的圆心到边缘点的距离进行排序,从预设鱼眼的最大半径到 最小半径,选择边缘像素最支持的一个半径,如果该候选圆的圆心受到足够的边缘点支持, 则保留该圆。
[0033]本发明的有益效果为:使用本方法可快速判断鱼头及鱼腹的方向,提高鱼类深加 工的自动化程度,既提高了生产效率,又降低了劳动强度。
【附图说明】
[0034]图1为本发明的流程框图。
[0035]图2为置于x、y坐标系中的灰度图像。
[0036]图3为阈值分割后二值化图像。
[0037]图4为出现多个候选圆的图像。
[0038]图5为优选后鱼眼位置图像。
[0039]图6为获取凸包络线后的图像。
[0040] 图7为标记坐标值后的X、y坐标系图像。
【具体实施方式】
[0041] 下面结合具体实施例和附图,进一步阐述本发明。
[0042] 如图1所示,一种基于视觉的鲜鱼方向判别方法,该方法包括如下步骤:
[0043] 步骤1,用相机拍摄以获取鱼的照片,然后将照片转换为灰度图像,并建立x、y坐标 系,如图2所示。
[0044] 步骤2,采用人工选择法或最大类间方差法确定所述灰度图像的二值化阈值,以将 所述灰度图像转换为二值图像,如图3所示。
[0045]步骤3,基于SATOSHI SUZUK算法对所述二值图像进行轮廓编码,以获得鱼体的轮 廓边界。由于鱼体在画面中占据最大面积,鱼体轮廓边界应为面积满足预设条件(最小面积 〈=轮廓面积〈=最大面积)的最大外轮廓。
[0046]步骤4,预设鱼眼的半径范围,采用Hough梯度法检测出位于鱼体轮廓边界内的灰 度图像中所有符合预设鱼眼半径范围内的圆。其具体步骤包括:
[0047] 步骤4.1,采用Canny算法查找位于鱼体轮廓边界内的灰度图像中的所有边缘,再 采用Sobel算子计算每个边缘点的局部梯度,计算过程如下:
[0048] 设原始图像为:
[0049]其中,Z5为所要甘算的边緣点的灰度值,其余为所要计算的边缘点周围领域内的 点的灰度值;
[0050]使用Sobel算子计算出灰度值为叾5的边缘点的近似偏导数:
[0051 ] Gx= (Z7+2Z8+Z9)-(Zi+2Z2+Z3)
[0052] ;
[0053] Gy =(Z3+2Z6+Z9)-(Z1+2Z4+Z7)
[0054] 其中,Gx为灰度值为Z5的边缘点在
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1